iOS 9.3.5闪退,崩溃提示:Dyld Message: Library not loaded

起因:

最近更新之后在 Xcode 的 Organizer 发现了一大批9.3.5崩溃的情况,而且唯独崩溃9.3.5,占有率为99%,其他1%也是9.1和9.2的闪退。拿到iOS9.3.5 测试机之后发现,从 Xcode 导入的 App 包并不会闪退。闪退的只有 App Store 的包。费了点时间装上 TestFlight 之后总算找到原因了。


如果你的iOS 9.3.5 的闪退信息是:Dyld Message: Library not loaded: @rpath/XXXX.framework/XXXX

那么,请留意在XXXX的库中的info.plist里是否有参数Required device capabilities ,有的话请删除。

我的情况是在库的 info.plist 有一个参数 Required device capabilities 的内容是arm64。

该参数是限制在具有某种特性条件的设备上运行,设置成arm64就是说这个设备仅支持arm64指令集。但是我们在支持armv7的机型上也使用了该库,所以会导致旧机型无法运行而闪退。

所以在发布时候请检查info.plist 是否有 Required device capabilities 参数,有则必须删除内容:arm64

发现是最高能升级到iOS 9.3.5的机器,例如ipad3 ,多半为armv7架构,现在普遍是arm64架构。

arm64 : 必选项,支持iphone5s及以上;最低支持版本:iOS5.1.1

armv7s:支持iPhone5及以上;

armv7:支持iPhone4及以上;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容