linux下使用apktool破解修改安卓apk,apktoolapk

來源:互聯網
上載者:User

linux下使用apktool破解修改安卓apk,apktoolapk
自己平常用linux作業系統,某時突然想改個安卓的遊戲
(1)
安裝jre
http://java.com/zh_CN/download/index.jsp
找到合適自己的版本

2、解壓檔案
tar -zxvf jrexxxx.tar.gz
將得到的檔案夾jre1.7.0_45(我的檔案夾名)移動到/usr/lib/java中去,如果是linux mint debian目錄是/usr/lib/jvm/,下面我們假設是移動到java目錄中
使用mv命令 mv jre1.7.0_45 /usr/lib/java

3、運行命令 $sudo vim /etc/environment
添加環境變數,直接添加到檔案中去
JAVA_HOME="/usr/lib/java/jre1.7.0_45"
CLASSPATH="$JAVA_HOME/lib"
PATH="$JAVA_HOME/bin:$PATH"

如果原來就沒有安裝java, 手動export PATH="/usr/lib/java/jre1.7.0_45:$PATH"
否則執行下列步驟:
設定當前預設的java解譯器
$sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jre1.7.0_45/bin/java 300
運行命令
$sudo update-alternatives --config java
選擇該安裝版本

測試 
$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) Client VM (build 24.45-b08, mixed mode)
安裝成功

(2)
http://code.google.com/p/android-apktool/
下載
apktool1.5.2.tar.bz2
apktool-install-linux-r05-ibot.tar.bz2

解壓,取 aapt  apktool apktool.jar 到/usr/local/bin/下
使用方法 http://code.google.com/p/android-apktool/wiki/FrameworkFiles
http://code.google.com/p/android-apktool/wiki/ApktoolOptions
一般是apktool d 程式.apk 反編譯後產生"程式"檔案夾, 修改後 apktool b 程式/ 會在"程式/dist/"下產生新的"程式.apk"

(3)
除了apktool外,還有一種反編譯的方法,可以查看java原始碼的,二者結合在一起更強大
dex2jar  把dex檔案轉化成jar的工具
http://code.google.com/p/dex2jar/
下載它
dex2jar 使用教程
http://code.google.com/p/dex2jar/wiki/ModifyApkWithDexTool

jd-gui
http://jd.benow.ca/
下載 jd-gui-0.3.5.linux.i686.tar.gz
使用其中的jd-gui查看jar中的java代碼

# 轉換test_apk-debug.apk中的classes.dex為test_apk-debug_dex2jar.jar
d2j-dex2jar.sh -f -o test_apk-debug_dex2jar.jar test_apk-debug.apk
# 驗證jar
d2j-asm-verify.sh test_apk-debug_dex2jar.jar
# 轉換成jasmin格式 
d2j-jar2jasmin.sh -f -o test_apk_jasmin test_apk-debug_dex2jar.jar
卸載舊的apk

修改smail檔案

再產生新的apk檔案
# 產生jar
d2j-jasmin2jar.sh -f  -o test_apk_jasmin.jar  test_apk_jasmin/ 
# 驗證jar
d2j-asm-verify.sh test_apk_jasmin.jar
# 轉換成 dex
d2j-jar2dex.sh  -f -o classes.dex test_apk_jasmin.jar
# 產生一份拷貝 
cp test_apk-debug.apk test_apk-debug-toast.apk
# 替換test_apk-debug-toast.apk中的classes.dex 
zip -r test_apk-debug-toast.apk classes.dex
# 簽名 apk
d2j-apk-sign.sh -f -o test_apk-debug-toast-signed.apk test_apk-debug-toast.apk
重新安裝就可以了

(4)
最後把重新編譯產生的 "程式.apk" 進行簽名,否則是無法啟動並執行

下載 signapk 這個網上搜一下很多 比如 http://ishare.iask.sina.com.cn/f/25267528.html
英文教程: http://www.londatiga.net/it/how-to-sign-apk-zip-files/

確保安裝有openssl,產生key
openssl genrsa -out key.pem 1024
openssl req -new -key key.pem -out request.pem
openssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pem
openssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt

進行簽名
java -jar signapk.jar certificate.pem key.pk8  程式.apk  簽名.apk
完成, 作者:帥得不敢出門  程式員群:31843264

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.