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

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

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

注意:這個地址下載時,因爲官網把apktool和apktool-install-linux-r05-ibot(或者是window下的)兩個工具分開了,因此用戶須要同時下載:shell

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

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

上述工做作好後,就能夠咱們的反編譯和打包apk了(以myapk.apk爲例)windows

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

二、使用如下命令反編譯工具

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

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

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

A、漢化:那麼使用ctrl+F查找「const-string」字符,找到後面須要修改的字符串。如,將「setting」改成「設置」code

B、去除廣告:一樣使用ctrl+F查找字符串「http://」;這個連接就是廣告連接,你只要把引號裏的連接刪除便可

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

三、修改完後,咱們將其打包回apk,使用以下命令:

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

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

四、簽名

使用工具:AndroidResEdit 這個工具使用很簡單,下載完後只需選擇myapk2.apk,而後簽名就能夠。

相關文章
相關標籤/搜索