platform_api.dart 1.14 KB
import 'package:pigeon/pigeon.dart';

class AppleSignInModel {
  final String userId;
  final String? email;
  final String? nickname;
  final String? identityToken;

  AppleSignInModel({
    required this.userId,
    this.email,
    this.nickname,
    this.identityToken,
  });
}

@ConfigurePigeon(
  PigeonOptions(
    dartOut: 'lib/pigeon/platform_api.g.dart',
    dartPackageName: 'doublefeel_flutter',
    dartOptions: DartOptions(),
    kotlinOut:
        'android/app/src/main/kotlin/com/doublefeel/app/pigeon/PlatformApi.kt',
    kotlinOptions: KotlinOptions(
      package: 'com.doublefeel.app.pigeon.platform',
    ),
    swiftOut: 'ios/Runner/Pigeon/PlatformApi.swift',
    swiftOptions: SwiftOptions(),
    arkTSOut: 'ohos/entry/src/main/ets/pigeon/PlatformApi.ets',
    copyrightHeader: 'pigeon/copyright.txt',
  ),
)
@HostApi()
abstract class PlatformHostApi {
  /// 返回完整的 User-Agent 字符串,由 native 侧组装:
  /// `{systemWebViewUA} {appName}/{versionCode}({versionName})({manufacturer}##{brand}##{model}; {OS}{osVersion}; {height}x{width})(huawei)`
  String getFullUserAgent();

@async
  AppleSignInModel? requestAppleSignIn();
}