2個(gè)APK的合并

前言

因?yàn)閭€(gè)人的原因,離開(kāi)了原公司, 來(lái)到了新公司,由于業(yè)務(wù)流程的不同,以及代碼混淆導(dǎo)致,之前所寫的apk2aar,要處理代碼沖突顯得很麻煩(不理解的可以看apk2aar)。并且,由于當(dāng)前公司sdk采用的并非二次打包的形式,所以沒(méi)有現(xiàn)成的打包腳本。并且由于歷史原因,apk的更新打包方式都是直接由游戲研發(fā)打包。因此,每當(dāng)sdk有改動(dòng),或者說(shuō)修復(fù)bug的時(shí)候, 因?yàn)镾DK代碼編寫的方式是偏向于apk開(kāi)發(fā)(如直接使用R.id, 無(wú)處不在的反射,架構(gòu)混論等,并且沒(méi)有相應(yīng)的log日志)。由于上述,所以新接手代碼,修復(fù)bug,測(cè)試新功能很麻煩(沒(méi)有二次打包,我只能去尋求游戲研發(fā)的協(xié)助。并sdk為了減少cp接入,使用了ActivityLifecycleCallbacks,并通過(guò)反射判斷引擎而且中間層寫得不太好)。由于修改后的sdk是通過(guò)上傳到maven中心,所以更新流程也很繁瑣??赡茉诒镜?,Android工程的測(cè)試下是可行的,但是到了具體的引擎下就不行了(隱私合規(guī),小米渠道在cocos下的傳感器)。正是因?yàn)樯鲜龅脑?,所以寫了一版java的apk合并方式,并添加到了tool里面。

使用場(chǎng)景

  1. 資源id錯(cuò)誤
  2. 更新sdk資源
  3. 添加新的apk資源

使用說(shuō)明

參考
注意:使用時(shí)必須是在apktool解包后的目錄下,并且

演示.png

如上圖,需要的apk用apktool解壓后拖動(dòng)到命令行,并回車。等待合并完成輸出Done!
合并完成.png

接著回編就可以了

題外話

當(dāng)前工具可能成熟度還不夠,如遇到問(wèn)題歡迎共同研究。共勉
下載工具

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容