API Reference
English

Flutter

仅支持Android和iOS

集成要求

环境要求

AndroidiOS
兼容版本Android 5.0及以上系统iOS9.0及以上系统
支持架构armeabi, armeabi-v7a, arm64-v8a, x86armv7,arm64,x86_64

集成步骤

插件安装

将 trustdevice_pro_plugin 添加到 Flutter 应用程序中的 pubspec.yaml

dependencies:
  flutter:
    sdk: flutter
  ...
  trustdevice_pro_plugin: ^1.4.5

添加依赖

Android: 在应用主模块的 build.gradle 中,声明SDK包依赖

dependencies {
    ...
    implementation 'com.trustdecision.android:apisign:1.1.3'
 }

iOS: 安装(CocoaPods)

  • 在 Podfile 文件中对应 target 中新增 pod 'TrustDecisionAPISign', '1.1.1'
  • 在 Podfile 所在文件夹中执行 pod install --repo-update 命令 (M1系列mac电脑需要执行 arch -x86_64 pod install --repo-update 命令)

集成示例

在实际业务节点调用插件 sign 方法对需要加签的 url 进行签名

import 'package:trustdevice_pro_plugin/trustdevice_pro_plugin.dart';

class _MyAppState extends State<MyApp> {
  final _trustdeviceProPlugin = TrustdeviceProPlugin();
  
  @override
  void initState() {

    super.initState();

    _pathSign("dev/v2?id=1");

  }
  
  Future<void> _pathSign(path) async {
    try {

      final resultData = await _trustdeviceProPlugin.sign(path);
      final sign = resultData['sign'] as String? ?? '';
      final msg = resultData['msg'] as String? ?? '';
      final code = resultData['code'] as int;

      if (code == 0) {

        // 加签成功,可使用签名结果sign继续业务逻辑

      } else {

        // sign fail
        print('加签失败: $msg');

      }
    } catch (e) {
      print("加签异常:$e");
    }
  }
  
}

状态码

状态码信息描述处理方式
0成功/
2000path为空请设置path参数
22xx内部错误请联系技术支持
30xx内部错误请联系技术支持
4001调用so文件失败,可能是SDK依赖的so文件已经缺失请检查当前设备所使用的架构是否有配置到项目中
4002调用SDK失败请检查apisign模块是否引入到项目中

其他说明

混淆打包

如果 Android 需要使用 proguard 进行混淆打包,请在 proguard 配置文件添加如下代码:

-keep class com.trustdecision.**{*;}