我的项目是基于Objective-C的,并且有一些第三方快速代码.
该应用程序在调试模式下运行正常,但是,当我将应用程序存档为发布模式时,应用程序将在启动屏幕时崩溃.
将swift优化级别设置为None仍然存在相同的问题.我安装了crashlytics 3.7,但它在启动时崩溃,它没有机会上传崩溃.我非常绝望.有任何想法吗?
更新:
我试图删除所有快速的东西和存档,一切都像往常一样.但是,一旦我将swift文件拖入基于Objective-C的项目,运行(调试)应用程序就可以了.但如果存档(发布)并将其安装在iPhone上,则会在发布时立即崩溃.什么我错过了什么?
解决方法
好的,经过数千次归档和测试后,我发现它是由内部发布引起的.
它正在证书中使用一个属性“OU”.我不得不重新创建一个新的证书,现在它有’OU’.看起来Apple在处理采用swift代码的旧项目时根本没有提到它.
报价从Enterprise Distribution not playing nice with iOS8 in Swift App
所有这些都在本文中详细解释:
https://www.airsignapp.com/ios-apps-using-swift-crash-when-signed-with-inhouse-certificate/
We can confirm that after create a new cert and .mobileprovision,no more issues. We found origins that caused this issue,related to a missing attribute in “Subject” field InHouse Certificates : BEFORE Subject: UID=269J2W3P2L,CN=iPhone distribution: Company Name,O=Company Name,C=FR AFTER Subject: UID=269J2W3P2L,OU=269J2W3P2L,C=FR
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。