美文网首页OC进化iOS开发iOS程序猿
iOS framework动态库重签名

iOS framework动态库重签名

作者: nenhall | 来源:发表于2017-05-15 13:50 被阅读1461次

真机上运行.framework时,如果报如下信息时表示framework动态库没有签名,需要进行重签名:

dyld'dyld_fatal_error:
dyld: Library not loaded: @rpath/xxxxx.framework/xxxxx
  Referenced from: /var/containers/Bundle/Application/DF33E1CB-0A69-4303-A22A-686E643DE922/iDoctors.app/iDoctors
  Reason: no suitable image found.  Did find:
/private/var/containers/Bundle/Application/DF65E1CB-0A69-4303-A22A-686E643DE922/iDoctors.app/xxxxx.framework/xxxxx: code signing blocked mmap() of '/private/var/containers/Bundle/Application/DF65E1CB-0A69-4303-A22A-686E643DE922/iDoctors.app/xxxxx.framework/xxxxx'
Message from debugger: Terminated due to signal 6

<br />

相关签名命令:

1.查看framework的签名证书命令:

codesign -d -vv xxxxx.framework
<br />

2.删除原有的签名

进入到XX.framwork文件夹内,删除_CodeSignature文件夹
<br />

3.查看本机可用的签名文件,命令:

/usr/bin/security find-identity -v -p codesigning
结果示例(如果你的电脑上有更多签名文件,则会打印出更多):

  1) DE340162A51981A466FA5D68BCAF2A07220BF4B2 "iPhone Developer: ... (...)"
  2) 5872B661A62607BD2C892C05F3553907BEA44F4F "Mac Developer: ... (...)"
  3) 39E6F6BAC63352FF3791E166A80969F088C2BF29 "iPhone Developer: ... (...)"
  ......

<br />

4.使用签名文件签名命令:

codesign -fs "iPhone Developer: ... (...)" xxxxx.framework

相关文章

网友评论

  • Dazer1992:就是 ios 动态签名的错误,我当时全是环信 报错,加载不到,模拟器是坏的,测试是好的;
    iOS动态库重签名步骤 https://blog.csdn.net/sinat_26415011/article/details/54017733
  • hhy_082510:不对。我也出现了这种报错,但是我的动态库和app都是重新签名过了。用codesign -vv -d 看是一样的,teamid也是一样的
    nenhall:@仁伯 我文中这个问题没有补充,其实还得把对应的framework 库拖入你的工程,并copy 到sources file里面
    nenhall:@仁伯 这只是重签名的一种方式,具体还得看你的问题是啥,能不能用这种方式解决
    仁伯:问下最终解决了吗,我重签名后还是报错

本文标题:iOS framework动态库重签名

本文链接:https://www.haomeiwen.com/subject/ymkhxxtx.html