gpt4 book ai didi

iOS:代码签名无效/缺少所需的代码签名

转载 作者:行者123 更新时间:2023-11-29 00:30:02 26 4
gpt4 key购买 nike

我目前正在研究一个名为“LockWatch”的 iOS 调整,它应该在锁定屏幕上显示类似 watchOS 的表盘。这个调整涉及一个基本的插件系统,它从指定的目录加载一个包 (name.watchface),到目前为止它正在运行。

然而,问题是,由于代码签名丢失或无效,这些 bundle 无法在设备上执行,但在 iOS 模拟器中,这些 bundle 可以正常加载和执行。

我通过添加“com.apple.backboard.client”权限在 iOS 9 上运行(因为日志显示缺少此特定权限,因此 SpringBoard 崩溃了)。

bundle 项目本身是一个简单的 Xcode 项目,使用 macOS 选项卡中的“Bundle”目标创建,Base SDK 设置为“Latest iOS (10.2)”。

我尝试了以下签名方法:

  • 根本不签名
  • Xcode 管理的签名
  • Xcode 手动签名(用于调试和发布)
  • 在没有授权的情况下使用 ldid 签名
  • 使用带权利的 ldid 签名

日志在这两个文本之间发生了变化:

SpringBoard(CoreFoundation)[PID] <Notice>: Error loading /var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype:  dlopen(/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype, 265): no suitable image found. Did Find:
/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype: required code signature missing for '/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype'

SpringBoard(CoreFoundation)[PID] <Notice>: Error loading /var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype: dlopen(/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype, 265): no suitable image found. Did Find:
/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype: code signature invalid for '/var/mobile/Library/LockWatch/Watch Faces/prototype.watchface/prototype'

由于二进制文件无法执行,其主体类实例无法添加到数组中,SpringBoard 崩溃。

最佳答案

看来我终于自己解决了。

事实证明,表盘包根本没有签名(因此出现required codesignaturemissing消息)。

我向包含以下脚本的包添加了一个运行脚本阶段:

/usr/bin/codesign --force --sign - --timestamp=none $CODESIGNING_FOLDER_PATH/$PRODUCT_NAME

当我研究有关代码签名的另一个问题时,我得到了这个想法,其中有人建议清除 _CodeSignature 文件夹的内容。这在我的构建输出中显然不存在。

关于iOS:代码签名无效/缺少所需的代码签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42133980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com