Unity发布预审:检查出调用苹果禁用api: [dlopen, dlsym]

博客讲述了在Unity项目打包时,因调用苹果禁止的dlopen和dlsym API导致预审失败的问题。通过逐步排查,发现问题源于TextFX插件中的EffectManager脚本,具体是读取XML文件的操作。解决方案是注释掉相关代码,成功解决了预审错误。同时,博主建议在项目中搜索"System.IO"以快速定位类似问题,并推荐使用插件的最新正版。
摘要由CSDN通过智能技术生成

表现:

打包出来的ipa在腾讯的wetest的ios预审中报以下错误。

最主要的就是这个【dlopen】【dlsym】,据公司的测试姐姐说这是苹果严打的对象。那么怎么从项目中找到问题代码并修改呢?

解决方案: 

1.首先确定空项目是否会报错。

可以看到空项目是没有这两个问题函数的。

2.下一步就是把项目中怀疑的文件拖到空项目中逐一去检测,导出的包是否有问题。如果没有什么重点怀疑对象,就采用二分法,一次拖一半的文件。

在这个过程中还比较顺利的,二分了多次,最后定位到一个插件上TextFX的具体一个脚本上【EffectManager】。下图就是我在空项目中添加文件的所有测试(PS:腾讯WeTest平台上用学校邮箱或者企业邮箱可以得到ios预审50次的额度)。最后一次是已经fix好的项目,不再报dlopen了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值