穿山甲短剧初始化 使用的是
[DJXManager startWithCompleteHandler:^(BOOL isSuccess, NSDictionary * _Nonnull userInfo) {}
会崩溃,崩溃信息是:+[BUAdSDKManager initializationState]: unrecognized selector sent to class 0x10a5ed0d8 和
+[BUAdSDKManager state]: unrecognized selector sent to class 0x109bfd0d8
也就是 +[BUAdSDKManager initializationState] 和 +[BUAdSDKManager state] 这两个方法不存在导致崩溃,这两个方法是短剧内部需要判断穿山甲广告是否初始化,才能使用短剧,希望把这两个方法添加进去,
通过测试在本地的xcode 离线工程中使用穿山甲BUAdSDK.framework 版本:6.8.0.5 [BUAdSDKManager initializationState] 和 [BUAdSDKManager state] 方法是存在的,短剧初始化也是可以成功使用,
云打包已经勾选上 穿山甲广告sdk 打包了,云打包的穿山甲版本不存在这两个方法
经测试
let manager= plus.ios.importClass("BUAdSDKManager");
console.log(manager.SDKVersion()); 打印是null
后经发现 穿山甲的库文件被改成了 ABUAdSDKManager
let manager= plus.ios.importClass("ABUAdSDKManager");
console.log(manager.SDKVersion()); 打印出来正是:6.8.0.5 穿山甲的版本号
希望官方在ios 的穿山甲库中,把 +[BUAdSDKManager initializationState] 和 +[BUAdSDKManager state] 两个方法添加进去, 这样才能使用使用IOS 端的穿山甲短剧,uniAD 客户已经申请通过穿山甲广告了,目前需要使用穿山甲短剧,希望官方处理一下,谢谢。
王者地带 (作者)
在uts ,在 插件中使用 CocoaPods 依赖了短剧的库,打包时,也勾选上穿山甲广告了,经测试把ipa 解压之后,里面是有穿山甲的CSJAdSDK.bundle ,是说穿山甲广告sdk 是有打包进去,但是进一步测试, let manager= plus.ios.importClass("BUAdSDKManager"); console.log(manager.SDKVersion()); 是无法打印出来,穿山甲的BUAdSDKManager 类是不完整的, 用 ABUAdSDKManager 却是可以, 在想是不是你们把穿山甲的BUAdSDK.framework 库 修改了,不然不会出来类名名称都改变的问题,在本地xcode 项目中添加BUAdSDK.framework 库是正常的,你也可以云打包勾选 穿山甲广告 测试一下, 目前测试安卓端是正常的,就是ios 端勾选 穿山甲广告 打包不正常
2025-06-30 13:14
DCloud_iOS_WZT
回复 王者地带: 没有修改 应该是动态库依赖问题 你把离线SDK中的 穿山甲广告的依赖库 添加到你UTS插件的 Frameworks目录下 然后重新自定义基座
2025-06-30 14:58
王者地带 (作者)
回复 DCloud_iOS_WZT: 可以了,我添加 CocoaPods 依赖 {
"name": "Ads-CN/BUAdSDK",
"version": "6.8.2.2"
} 进去打包目前是成功了,还勾选上了穿山甲广告 一起打包,并没有发生打包冲突,目前是可以正常使用短剧了
2025-06-30 16:06
王者地带 (作者)
回复 DCloud_iOS_WZT: 同时我也发现了一个新的问题,就是打包好基座之后,第一次运行基座测试,修改文件同步保存到基座都是正常的,当我进入后台,强制把应用关掉,再回到桌面打开基座应用,短剧就无法初始化了,执行就崩溃了,好像穿山甲的库又不变了, 是不是动态库的问题,还是什么原因
2025-07-01 16:32
DCloud_iOS_WZT
回复 王者地带: 目前穿山甲的版本是6.8.0.5 你要不更新到同一版本下试试
2025-07-07 17:27
王者地带 (作者)
回复 DCloud_iOS_WZT: 我试了CocoaPods 上穿山甲已经没有6.8.0.5 这个版本了,本地的库又太大了,200多MB,先将就用着
2025-07-07 20:46