穿山甲iOS直播拉流接入

作者:Administrator 发布时间: 2024-07-15 阅读量:0 评论数:0

接入文档: https://bytedance.larkoffice.com/docx/KtPLd1DBXofuRexfp0OcxS6ynnf

已集成Tobid广告聚合,聚合当中带有csj广告。

聚合广告ID为6.1.2.8

直接按照文档接入csj直播拉流报错:

[!] The 'Pods-UnityFramework' target has frameworks with conflicting names: buadsdk.xcframework.

内容为buadsdk.xcframework冲突。因为Tobid与直播拉流同时导入了buadsdk.xcframework。

删除直播拉流中的buadsdk导入。然后按照文档中的手动接入进行接入。最终Build提示缺少TTVideoDecode。

转为删除Tobid中的buadsdk相关导入。

报错:

Error loading /var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/UnityFramework.framework/UnityFramework (138):  dlopen(/var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/UnityFramework.framework/UnityFramework, 0x0109): Library not loaded: @rpath/TTFFmpeg.framework/TTFFmpeg

  Referenced from: <EBEFF706-BF9F-3E83-BE98-AFE807E7A824> /private/var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/UnityFramework.framework/UnityFramework

  Reason: tried: '/usr/lib/swift/TTFFmpeg.framework/TTFFmpeg' (no such file, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/TTFFmpeg.framework/TTFFmpeg' (no such file), '/private/var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/TTFFmpeg.framework/TTFFmpeg' (no such file), '/usr/lib/swift/TTFFmpeg.framework/TTFFmpeg' (no such file, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/TTFFmpeg.framework/TTFFmpeg' (no such file), '/private/var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/TTFFmpeg.framework/TTFFmpeg' (no such file), '/private/var/containers/Bundle/Application/447ACB17-77A5-4C04-A02A-63FC6D5870BE/ProductName.app/Frameworks/TTFFmpeg.framework/TTFFmpeg' (no such file)

重新改为删除直播拉流中的buadsdk导入。在Unity导出到xcode后,删除其生成的pods文件夹与workspace文件。

打开Profile文件,将其中的直播拉流的pod配置从UnityFramework改为Unity-iPhone。然后用命令行到当前xcode项目目录运行pod install。

打开xcode,build成功。运行后发现并未实际生效。提示csj广告版本不匹配。

升级Tobid以便匹配BUAdLive的版本号。

Unity导出时不带BUAdLive,导出后使用Pod将BUAdLive添加到Unity-iPhone,build运行,报错20个,提示BUAdSDK的依赖库丢失。

Unity导出时带BUAdLive,导出后build运行,运行成功并闪退,重复上面的报错,log输出:

寻找相似的解决方法:https://www.jianshu.com/p/7c951a39f335

简单来说,新版Xcode和iOS系统,在当我们使用非付费开发人员账号时,都有概率对嵌入的动态库发生无效签名。而解决的方式有:
1.有条件的话,清理非付费开发人员账号生成的证书与配置文件,改为付费人员对应的证书
2.打开Cocoa Pods的Podfile文件,注释掉use_frameworks!
3.在Podfile文件中添加一句use_modular_headers!
4.执行pod deintegrate+pod install重新配置一次第三方库

解决方法:直接注释掉Podfile文件中的use_frameworks! ,再pod install 即可!

评论