老外寫的《android-apktool》軟件,可以幫助我們把APK反編譯,生成程序的源代碼和圖片、XML配置、語言資源等文件。我們對圖片和語言資源等文件修改后,可以再把它們編譯打包成APK
直接下了Dodo_APKTools這個(gè),解壓到任意文件夾下裝了Java,把里面的apktool.jar和signapk.jar復(fù)制到了C:\Windows里面(不知道是不是必須的哈,網(wǎng)上看的),再運(yùn)行apktool.exe就可以反編譯了,反編譯出來是個(gè)文件夾,打開里面的文件基本都可以用記事本打開修改……
編譯:利用編譯程序從源語言編寫的源程序產(chǎn)生目標(biāo)程序的過程。反編譯:編譯的逆過程。
odex:使廠商保證一定的反**,因?yàn)闆]有沒有odex文件的apk文件是不能正常安裝的
PS:不完整的apk是不能正常反編譯的,不反編譯apk是無法修改源碼的。
APK文件反編譯和重編譯
①下載apktool
②打開windows的命令提示符,復(fù)制地址欄里apktool解壓后路徑(假設(shè)為dir),如果你解壓在系統(tǒng)盤(一般為C),輸入cd dir (示例,如果文件夾路徑為 C:\Apktool,只需輸入 cd \Apktool)(沒有C:\)非系統(tǒng)盤輸入(注意空格)cd /d dir
(示例:我的apktool目錄為 I:\Apktool,需要輸入 cd /d I:\Apktool)
PS:此步目的是把命令提示符定向在apktool目錄,方便后續(xù)步驟。
③把剛剛合并好的apk復(fù)制到這個(gè)目錄下,去掉文件名中的中文字符(否則反編譯會出現(xiàn)錯(cuò)誤)(以launcher2.apk為例)
④把固件中的framework-res.apk也復(fù)制到該目錄下;
⑤先安裝基礎(chǔ)包,輸入命令:apktool if framework-res.apk
⑥反編譯apk:apktool d launcher2.apk
⑦零錯(cuò)誤反編譯完成后在該目錄下生成一個(gè)launcher2的文件夾