cocos2d-js打包重簽名
問題
遊戲要出包, 由於使用cocos2d-js開發, 所以在釋出遊戲的時候js檔案要編譯成jsc的格式. 如果使用xcode進行Archive那麼需要以下步驟
- 對js檔案進行編譯
- 修改專案結構中的Resource/src(遊戲程式碼)與script(引擎程式碼), 使之指向jsc的目錄
- 打包
這種方式其實對開發很不友好, 因為在釋出之後我們又需要改一遍專案結構進行開發, 而且不能進行自動化的整合.
cocos compile
其實可以對js檔案進行編譯並輸出ipa, 之後輸出的ipa包使用iOS App Signer
重簽名. 雖然簽名成功了, 但是在安裝到真機上時會報出CPU型別不符
這樣的錯誤
原因
檢視引擎目錄下的
/tools/cocos2d-console/plugins/plugin_compile/project_compile.py
def build_ios(self):
if not self._platforms.is_ios_active():
return
if not cocos.os_is_mac():
raise cocos.CCPluginError(MultiLanguage.get_string('COMPILE_ERROR_BUILD_ON_MAC'),
cocos.CCPluginError.ERROR_WRONG_ARGS)
# 這裡
if self._sign_id is not None:
cocos.Logging.info(MultiLanguage.get_string('COMPILE_INFO_IOS_SIGN_FMT', self._sign_id))
self.use_sdk = 'iphoneos'
else:
self.use_sdk = 'iphonesimulator'
... 以下省略 ...
try:
cocos.Logging.info(MultiLanguage.get_string('COMPILE_INFO_BUILDING'))
command = ' '.join([
"xcodebuild",
"-project",
"\"%s\"" % projectPath,
"-configuration",
"%s" % 'Debug' if self._mode == 'debug' else 'Release',
"-target",
"\"%s\"" % targetName,
# 這裡
"%s" % "-arch i386" if self.use_sdk == 'iphonesimulator' else '',
"-sdk",
"%s" % self.use_sdk,
"CONFIGURATION_BUILD_DIR=\"%s\"" % (output_dir),
# 這裡
"%s" % "VALID_ARCHS=\"i386\"" if self.use_sdk == 'iphonesimulator' else ''
])
... 以下省略 ...
這裡可以發現, 如果在cocos compile
中不使用SIGN_ID時, 生成的其實是讓模擬器使用的i386的包
解決
真正的命令是:
cocos compile -p ios -t TARGET -m release –sign-identity SIGN_ID
之後在會在遊戲專案publish下生成ipa檔案
相關文章
- iOS證書籤名機制&重簽名&防止重簽名iOS
- 簽名打包Android版apkAndroidAPK
- iOSApp重簽名iOSAPP
- iOS逆向 應用重簽名+微信重簽名實戰iOS
- iOS逆向——應用簽名及重簽名原理iOS
- 加固+美團walle簽名打包+Python一鍵打包Python
- 蘋果軟體打包簽名原理蘋果
- 使用指令碼重簽名指令碼
- Android應用重簽名Android
- 利用Xcode進行重簽名XCode
- ipa重簽名原理介紹
- iOS逆向(3)-APP重簽名iOSAPP
- WebDriverAgent重簽名爬坑記Web
- iOS逆向 - 應用簽名原理及重簽名 (重籤微信應用實戰)iOS
- Android加固之後Apk重簽名AndroidAPK
- iOS 重簽名踩雷記一iOS
- 擼一個 iOS 重簽名指令碼iOS指令碼
- IOS 逆向開發(四)App重簽名iOSAPP
- IPA簽名怎麼進行重籤
- 安卓簽名檔案打包錯誤 Invalid keystore format安卓ORM
- 蘋果企業簽名:動態庫注入與企業證書重簽名蘋果
- iOS逆向 Shell指令碼+指令碼重簽名iOS指令碼
- iOS逆向——shell重簽名及程式碼注入iOS
- iOS簽名、iOS企業簽名、iOS超級簽名工具使用iOS
- 蘋果企業簽名APP打包流程+iPhone12渲染圖蘋果APPiPhone
- iOS逆向之旅(進階篇) — 重簽名APP(二)iOSAPP
- iOS逆向之旅(進階篇) — 重簽名APP(一)iOSAPP
- 蘋果企業簽名多少錢-ios企業簽名-企業簽名蘋果iOS
- 群簽名與環簽名的介紹
- iOS應用重簽名ipa技術原理及流程iOS
- 如何測試重簽名的應用功能是否正常
- Pressone 簽名
- 簽名修改
- 環簽名
- 蘋果簽名該怎麼去選擇呢?iOS企業簽名-企業簽名蘋果iOS
- Android v1 簽名 和 v2+ 簽名Android
- 超級簽名是什麼?超級簽名跟企業簽名有什麼區別?
- iOSApp簽名原理iOSAPP
- 【Vue】 簽名元件Vue元件