内容提要
阿里云实人认证SDK升级迁移记录。原RPSDK停服,需迁移至金融级实人认证新SDK。iOS版遇到“二次安装白屏”问题,实为Xcode调试bug,非SDK问题。迁移步骤包括删除旧SDK文件与代码、导入新framework、添加系统库依赖、拷贝资源及修改代码。踩坑点:Embed类型需设为Do Not Embed,MultiFactorFacade可能致加载失败,tbd库需添加两次。
延伸解读
迁移前先确认环境
文章提到,Android 版本升级顺利,但 iOS 版本遇到很多困难,其中“二次安装白屏”问题一度被误认为是新 SDK 导致的,实际是 Xcode 调试 bug。这提醒开发者,在迁移前应先确认开发环境(如 Xcode 版本、调试方式)是否正常,避免将环境问题误判为 SDK 问题,从而浪费排查时间。
注意 Unity 工程的特殊性
本文的迁移场景是 Unity 导出工程,涉及 Unity-iPhone 和 UnityFramework 两个 Target。删除旧 SDK 时,两个 Target 都需要清理;添加新 SDK 时,framework 和系统库依赖要添加到 UnityFramework。这提示在 Unity 工程中接入原生 SDK 时,需特别注意 Target 的配置,避免遗漏导致编译或运行错误。
文档可能过时,需结合实际
作者指出金融级实人认证的文档可读性较差,包含过时内容,接入时需适当忽略。例如,extParams 中 currentCtr 参数的示例简略,实际需通过 GetAppController().rootViewController 获取。这提醒开发者,官方文档不一定完全准确,遇到问题时需结合实际情况和代码调试,而非盲目照搬文档。
Q&A
阿里云实人认证iOS SDK升级中,二次安装白屏是什么原因?
二次安装白屏是Xcode调试的bug,并非新SDK的问题。只有首次运行正常,覆盖安装时需要大退Xcode才能解决。
如何从阿里云旧版实人认证RPSDK迁移到金融级实人认证新SDK?
迁移步骤包括:删除旧SDK相关文件和代码,导入新framework,添加系统库依赖,拷贝资源,修改代码。具体操作需参考官方文档。
在Xcode中导入金融级实人认证SDK时,Embed类型应该怎么设置?
需要将framework的Embed类型从默认的Embed & Sign改为Do Not Embed,否则上传时会报错。
金融级实人认证SDK中的MultiFactorFacade.framework有什么问题?
在部分项目中,MultiFactorFacade.framework会导致UnityFramework运行时加载失败,如果遇到相同问题,需要取消该库的引入。
添加系统库依赖时,tbd类型的库需要注意什么?
tbd类型的库需要添加两次才能出现在列表中,这可能是Xcode刷新逻辑导致的显示bug,建议重复添加以防万一。
在代码中调用金融级实人认证SDK时,extParams的currentCtr参数如何获取?
需要传入当前ViewController,获取方式为GetAppController().rootViewController,示例代码:NSMutableDictionary *extParams = [NSMutableDictionary dictionary]; [extParams setObject:GetAppController().rootViewController forKey:@"currentCtr"];