背景:9.3.3越獄發(fā)布花沉,把手上的5s越獄后也想學(xué)點(diǎn)Theos Tweak開(kāi)發(fā)实柠,正好看到east520一步一步實(shí)現(xiàn)iOS微信自動(dòng)搶紅包(非越獄),他的教程很棒演怎,不過(guò)在最后簽名時(shí)有遺漏究恤,導(dǎo)致俺折騰好久俩功,還好通過(guò)設(shè)備日志解決了蜓竹,記錄下來(lái)供參考
免責(zé)申明:本文只是用來(lái)記錄自己學(xué)習(xí)IPA重簽名過(guò)程术羔,不得用于商業(yè)或者其他不正當(dāng)途徑姑蓝,同時(shí)謝謝east520好文。
背景锅移,這次9.3.3pangu越獄也用到IPA個(gè)人證書(shū)簽名.普通IPA重簽名可以用工具ios App Signer,不過(guò)它目前還不支持像微信多targets的IPA包熔掺。
按照east520教程制作好微信自動(dòng)搶紅包的dylib后,就開(kāi)始重簽名工作了非剃。微信IPA包里面含有watch和擴(kuò)展這另外兩種targets置逻,因此有如下幾步簽名工作:
codesign -f -s "證書(shū)在鑰匙里面顯示的名字" WeChat.app/zidongqianghongbao.dylib
codesign -f -s "證書(shū)在鑰匙里面顯示的名字" WeChat.app/Watch/WeChatWatchNative.app/PlugIns/WeChatWatchNativeExtension.appex
codesign -f -s "證書(shū)在鑰匙里面顯示的名字" WeChat.app/Watch/WeChatWatchNative.app
codesign -f -s "證書(shū)在鑰匙里面顯示的名字" WeChat.app/PlugIns/WeChatShareExtensionNew.appex
codesign -f -s "證書(shū)在鑰匙里面顯示的名字" --entitlements Entitlements.plist WeChat.app
借用一步一步實(shí)現(xiàn)iOS微信自動(dòng)搶紅包(非越獄)文章里面的圖片
俺按照上面步驟打包好后往設(shè)備上安裝卻報(bào)簽名錯(cuò)誤verifyed failed,奇怪呀文章明明說(shuō)可以的呀备绽?
還好俺的mac通過(guò)idevicesyslog工具連著設(shè)備的日志服務(wù)券坞,在安裝失敗的時(shí)候有如下信息:
15:13:26 5s installd[5382] <Error>: 0x16e087000 -[MIInstallableBundle_isValidWatchKitApp:withVersion:companionAppSigningInfo:error:]: 580:
Missing or invalid value of WKCompanionAppBundleIdentifier key in WatchKit 2 app's Info.plist:
com.tencent.xin (expected com.yours.qianghongbao)
Aug 4 15:13:26 5s installd[5382] <Error>: 0x16e087000 -[MIInstaller performInstallationWithError:]: Verification stage failed
"WeChat.app/PlugIns/WeChatShareExtensionNew.appex" with identifier
"com.tencent.xin.sharetimeline" does not have expected identifier
prefix "com.yours.qianghongbao."
這下明白了吧?就是wechat.app包里面可執(zhí)行targets對(duì)應(yīng)的Info.plist文件的bundlid 都要換成你簽名證書(shū)對(duì)應(yīng)的id肺素,比如我這里的com.yours.qianghongbao
其他步驟都是按照一步一步實(shí)現(xiàn)iOS微信自動(dòng)搶紅包(非越獄)文章來(lái)即可恨锚,該文下面很多評(píng)論都是卡在簽名失敗上,最大原因就是這步?jīng)]做倍靡。
有疑問(wèn)到我微信公眾號(hào)留言