zoukankan      html  css  js  c++  java
  • code signing blocked mmap() of '/private/var/contai 报错

    项目中使用了有赞SDK 6.1.0,用Xcode直接安装到手机没有问题,可以正常使用,但是用企业版inhouse证书打包为IPA后,上传到fir扫码安装,发现闪退,系统log如下:

    code signing blocked mmap()
    Exception Type:  EXC_CRASH (SIGABRT)
    Exception Codes: 0x0000000000000000, 0x0000000000000000
    Exception Note:  EXC_CORPSE_NOTIFY
    Termination Description: DYLD, Library not loaded: @rpath/YZSDKCore.framework/YZSDKCore | Referenced from: /var/containers/Bundle/Application/F036330B-952B-42DE-80DD-6A327B75C4EA/test.app/test | Reason: no suitable image found.  Did find: | /private/var/containers/Bundle/Application/F036330B-952B-42DE-80DD-6A327B75C4EA/test.app/Frameworks/YZSDKCore.framework/YZSDKCore: code signing blocked mmap() of '/private/var/containers/Bundle/Application/F036330B-952B-42DE-80DD-6A327B75C4EA/test.app/Frameworks/YZSDKCore.framework/YZSDKCore'
    Triggered by Thread:  0

    后来发现有赞SDK 6.1.0的framework是动态framework,使用的话需要重新签名。签名的证书要和发布IPA的证书一样。

    重新签名方法:http://blog.csdn.net/sinat_26415011/article/details/54017733

    https://www.cnblogs.com/wenrisheng/p/6434278.html

    注意:我刚开始也是安装上面提供的方法重新签名的,但是还是闪退,后来看到这个https://www.jianshu.com/p/59067ba159e5。

    原来对动态framework的签名,证书只能在钥匙串登录选项里,而且信任是:系统默认,才可以。大坑啊,我的Mac系统是10.13.3 (17D47)

    也可以直接放到工程中和其他代码一起进行打包签名:

    但是注意

    如果工程中没有包含第三方的动态framework,则打包的时候,证书是‘始终信任’和‘系统默认’,生成的IPA都没有问题。

    如果工程中含有第三方的动态framework,则对打包的时候,证书必须是‘系统默认’才行,如果是‘始终信任’,则生成的IPA会闪退。

    如果是始终信任,执行codesign -fs "iPhone Distribution: xxxx" YZSDKCore.framework:会报如下警告,

    Warning: unable to build chain to self-signed root for signer "iPhone Distribution: xxx"Warning: unable to build chain to self-signed root for signer "iPhone Distribution: xxxxx"Warning: unable to build chain to self-signed root for signer "iPhone Distribution: xxxxxx"%

    图1 证书如果是始终会报警告,打包IPA也会闪退。

    图2 证书只能在钥匙串的登录选项里,而且信任是:系统默认

  • 相关阅读:
    mysql 触发器
    Yii 1.0 基础
    python解释执行原理(转载)
    python中使用selenium调用Firefox缺少geckodriver解决方法
    Python中os和shutil模块实用方法集锦
    pytesseract使用
    anaconda安装第三方库
    anaconda spyder异常如何重新启动
    windows下python3.6 32bit 安装django
    设置SO_RECVBUF和SO_SENDBUF套接字选项
  • 原文地址:https://www.cnblogs.com/shanyimin/p/8377859.html
Copyright © 2011-2022 走看看