Sha*_*ikh 5 build chromium ios swift gn
我知道这个问题被问了很多次,人们提出了很多解决方案。就我而言,我已经尝试了所有这些。我试过的是仅供参考:我不能使用 xcode 进行构建。 原因:我正在研究使用 GN 构建系统构建的所有 Chromium ios 代码。
有谁知道苹果还需要什么签名?最受欢迎的更多故障排除步骤。
我解决了这个问题,让我总结一下,对遇到此问题的每个人都有帮助,以下是一些故障排除步骤。
在我的例子中,Xcode 构建设置我通过一些脚本进行了更改,如果您使用某些构建系统来制作 Xcode 项目,则始终将 swift 嵌入库添加为 YES,否则您可以转到 Xcode 构建设置并将标志设置为 YES
将你的 IPA 更改为 .zip 然后解压,应该有 SwiftSupport 文件夹,如你的项目所需的 SwiftSupport/iphoneos/all dylib 库。
如果 Swift 支持文件夹不存在,那么您必须创建 swift 支持文件夹并通过终端使用某些命令附加 IPA,对于我的情况,我就是这样做的。zip -r Choose_your_ipa_name.ipa Payload SwiftSupport ,Payload 文件夹将包含 .app 文件,SwiftSupport 文件夹包含 .dylib,如下层次结构 SwiftSupport/iphoneos/*.dylib
SwiftSupport 文件夹库应该由苹果证书进行代码签名,而不是您的证书。要使其工作,只需从此路径“/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos/”复制.dylib
您的此框架文件夹 Payload/Framework/.dylib 库下的库应由您的证书签名。
现在非常重要的一点不容错过
使用 lipo -info path_of_dylib 检查 Payload/Framework/*.dylib 下的库的体系结构信息,如果它包含框架 arm64e ,请以某种方式删除此拱门,这不起作用,我也不知道原因(如果有人知道请告诉我)也知道)之后,代码使用相同的代码标识对您的库进行签名。
像这样使用终端再次使用 .ipa 文件。zip -r your_app_name.ipa Payload SwiftSupport,确保这些目录不包含 DS_Store 隐藏文件,如果退出,请在制作 ipa 之前删除它们。
希望这些故障排除步骤能够发挥作用:) 如果我错过了任何内容,抱歉:) 如果您想进行更多讨论,请通过电子邮件或在此处发表评论告诉我。mshauket.developer@gmail.com
| 归档时间: |
|
| 查看次数: |
4350 次 |
| 最近记录: |