ApkTool反編譯apk,去除廣告或者漢化后重新打包apk,並簽名


http://my.oschina.net/mopidick/blog/135581

以ubuntu的環境為例子,window的大同小異

首先下載apktool工具:https://code.google.com/p/android-apktool/

注意:這個地址下載時,由於官網把apktool和apktool-install-linux-r05-ibot(或者是window下的)兩個工具分開了,所以用戶需要同時下載:

<!-- lang: shell --> 1、apktool1.5.2.tar.bz2 2、apktool-install-linux-r05-ibot.tar.bz2 (window下:apktool-install-windows-r05-ibot.tar.bz2) 

下載完后,分別解壓上面兩個文件夾,然后將apktool.jar拷貝到另一個文件夾下(包含了aapt 、apktool)。

上述工作做好后,就可以我們的反編譯和打包apk了(以myapk.apk為例)

1、將 myapk.apk 文件拷到上面那個目錄(包含了aapt 、apktool,apktool.jar)。

2、使用以下命令反編譯

<!-- lang: shell --> ./apktool d myapk.apk newapk 

(其中d:代表decode的意思,就是解碼;newapk是隨便起的名字,是你要解壓到的那個目錄)

解壓后,你會發現出現了一個新目錄:newapk(子目錄含:assets、lib、res、smail以及別的兩個文件) 其中smail文件夾下是源碼的另一種形式,你要修改的一些東西也都在samil文件夾下。

A、漢化:那么使用ctrl+F查找“const-string”字符,找到后面需要修改的字符串。如,將“setting”改為“設置”

B、去除廣告:同樣使用ctrl+F查找字符串“http://”;這個鏈接就是廣告鏈接,你只要把引號里的鏈接刪除即可

個人經驗: 去除廣告最好的方法其實就是找到manifest.xml文件中的與廣告相關的activity和service,直接刪除就行了!!!

3、修改完后,我們將其打包回apk,使用如下命令:

<!-- lang: shell --> ./apktool b newapp myapk2.apk 

其中 b 代表:build的意思;myapk2.apk是你最終打包想要生成的那個apk的名字

4、簽名

使用工具:AndroidResEdit 這個工具使用很簡單,下載完后只需選擇myapk2.apk,然后簽名就可以。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM