团队需要更改Info.plist以测试某些功能。 但有时候应用程序(非常)会无声地崩溃。
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (Code Signature Invalid)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace CODESIGNING, Code 0x1
现在,如果我们按照建议的here测试签名:
codesign --verify -vvvv -R='anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.1] exists and (certificate leaf[field.1.2.840.113635.100.6.1.2] exists or certificate leaf[field.1.2.840.113635.100.6.1.4] exists)'
< app的路径>
或
spctl --verbose --assess
< app的路径>
< path to app >: invalid Info.plist (plist or signature have been modified)
好的,但我真的想修改它:
所以有两个问题:
这个问题在兄弟情谊中得到了答案:https://superuser.com/questions/961797/how-to-change-info-plist-in-a-signed-package。
答案 0 :(得分:0)
重新签名应用程序可以非常快:
codesign --force --verbose=4 --sign "Developer ID Application: <your name> (<team ID>)" <application>
诀窍是避免使用--deep
选项。在我的高阶山脉上,大约需要20秒。