当前位置: 代码迷 >> 综合 >> 自定义一个Framework包 dyld: Library not loaded
  详细解决方案

自定义一个Framework包 dyld: Library not loaded

热度:82   发布时间:2024-01-18 07:13:32.0
自定义一个Framework包,将包加入某个工程时,使用Developer的Provision Profile编译运行都没问题,但是使用企业Enterprise真机运行时报错:
[deny-mmap] mapped file has no team identifier and is not a platform binary: /private/var/mobile/Containers/Bundle/Application/1E29E625-4C0D-472B-AAAA-6B013089F566/xxxxxx.app/Frameworks/xxx.framework/xxx

dyld: Library not loaded: @rpath/P2PFrameWork.framework/XXXFrameWork

  Referenced from: /private/var/mobile/Containers/Bundle/Application/A73BA51A-693C-412E-B8CF-0DF409F92C47/XXX.app/XXX

  Reason: image not found

 
经过非常艰苦的尝试和研究,发现是iOS8或新Xcode首先对第三方库或Framework进行了更加严格的检测;其次一个问题,可能是Xcode一个bug:签名证书和Provision profile需要更新才行,很奇怪,网上有人说把签名证书的Always Trust改为默认,每次询问就可以了,但是我尝试不行。

最终步骤是:删除钥匙串中的企业签名证书和密钥,新生成一个证书申请,到苹果开发者网站去重新前一个Distribution证书,以及配套的Provision profile,然后Xcode使用最新的Provision profile和证书签名,运行,OK。
累死了。
 
  相关解决方案