通過設備日志排查微信重簽名問題

背景:9.3.3越獄發布,把手上的5s越獄后也想學點Theos Tweak開發,正好看到east520一步一步實現iOS微信自動搶紅包(非越獄),他的教程很棒,不過在最后簽名時有遺漏,導致俺折騰好久,還好通過設備日志解決了,記錄下來供參考

免責申明:本文只是用來記錄自己學習IPA重簽名過程,不得用于商業或者其他不正當途徑,同時謝謝east520好文。

背景,這次9.3.3pangu越獄也用到IPA個人證書簽名.普通IPA重簽名可以用工具ios App Signer,不過它目前還不支持像微信多targets的IPA包。

按照east520教程制作好微信自動搶紅包的dylib后,就開始重簽名工作了。微信IPA包里面含有watch和擴展這另外兩種targets,因此有如下幾步簽名工作:

codesign -f -s "證書在鑰匙里面顯示的名字" WeChat.app/zidongqianghongbao.dylib
codesign -f -s "證書在鑰匙里面顯示的名字" WeChat.app/Watch/WeChatWatchNative.app/PlugIns/WeChatWatchNativeExtension.appex
codesign -f -s "證書在鑰匙里面顯示的名字" WeChat.app/Watch/WeChatWatchNative.app
codesign -f -s "證書在鑰匙里面顯示的名字" WeChat.app/PlugIns/WeChatShareExtensionNew.appex
codesign -f -s "證書在鑰匙里面顯示的名字" --entitlements Entitlements.plist WeChat.app

借用一步一步實現iOS微信自動搶紅包(非越獄)文章里面的圖片

步驟

俺按照上面步驟打包好后往設備上安裝卻報簽名錯誤verifyed failed,奇怪呀文章明明說可以的呀?

還好俺的mac通過idevicesyslog工具連著設備的日志服務,在安裝失敗的時候有如下信息:

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包里面可執行targets對應的Info.plist文件的bundlid 都要換成你簽名證書對應的id,比如我這里的com.yours.qianghongbao

其他步驟都是按照一步一步實現iOS微信自動搶紅包(非越獄)文章來即可,該文下面很多評論都是卡在簽名失敗上,最大原因就是這步沒做。

有疑問到我微信公眾號留言


MineWeiXin.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容