重签名

如前所述,把debugserver的原始entitlement权限做了改动后,需要去:重签名=重新签名

  • 推荐方式:codesign
    • 优点:适用于iOS 15.0+iOS < 15.0
    • 具体方式
      • 推荐方式:(最省事的)直接一步
        codesign -f -s - --entitlements debugserver.entitlements debugserver
        
        • 等价于=简写为
          codesign -fs- --entitlements debugserver.entitlements debugserver
          
      • 次优方式:分两步
        • 第一步:先找到自己当前的有效的sign identity
          security find-identity -p codesigning
          
          • 得到:sign identity:CDDC8C0D2F3A79EB17C183E14F799F75815E294E
        • 第二步:再加上完整的参数,去用codesign重签名
          codesign --force --sign CDDC8C0D2F3A79EB17C183E14F799F75815E294E --entitlements debugable_entitlement.xml --timestamp=none --generate-entitlement-der debugserver
          
  • iOS < 15.0,也可以用:ldid
    ldid -Sdebugserver.entitlements debugserver
    
    • 说明
      • -S参数(即权限文件:debugserver.entitlements)之间没有空格
    • 注意:当iOS >15.0时,此方式会导致:运行崩溃killed

results matching ""

    No results matching ""