手機端apktool最新反編譯教程
一、工具准備:apktool , dex2jar , jd-gui
二、使用dex2jar + jd-gui 得到apk的java源碼
1.用解壓工具從 apk包中取出 classes.dex 文件
用命令(dex2jar.bat classes.dex)得到一個 jar文件
2.用jd-gui反編譯工具將得到.jar文件反編譯成.java文件
三、使用apktool得到apk的xml文件
1.用命令(apktool d xxx.apk xxx_xml)反編譯xxx.apk包
2.從 xxx_xml 文件夾得到xml文件
四、第二步 得到的程序源代碼 和 第三步 得到的xml文件組合下,即可得到完整的apk源碼。
五、應用: 漢化/去廣告,加 values-zh-rCN, values-zh-rTW, values-de, values-fr
1.在步驟三的文件夾xxx_xml/res/ 下, 建文件夾: values-zh-rCN,values-zh-rTW
2.1復制values\strings.xml 到 values-zh-rCN 並翻譯.
2.2 去廣告見;
3.重建APK,用命令(apktool b xxx) ,輸出到ABC/dist/out.apk
或命令( apktool b xxx out.apk)
六、重新打包 和 簽名
Ⅱ apktoolapk鍙嶇紪璇戣蔣浠禫141緇胯壊奼夊寲鐗坅pktoolapk鍙嶇紪璇戣蔣浠禫141緇胯壊奼夊寲鐗堝姛鑳界畝浠
澶у跺ソ,鍏充簬apktool(apk鍙嶇紪璇戣蔣浠) V1.4.1 緇胯壊奼夊寲鐗堬紝apktool(apk鍙嶇紪璇戣蔣浠) V1.4.1 緇胯壊奼夊寲鐗堝姛鑳界畝浠嬭繖涓寰堝氫漢榪樹笉鐭ラ亾,鐜板湪璁╂垜浠涓璧鋒潵鐪嬬湅鍚э紒
銆銆apktool 鏄涓嬈炬搷浣滅畝鍗曞姛鑳藉己澶х殑apk鍙嶇紪璇戣蔣浠訛紝瀹冭兘澶熷皢鍙嶇紪璇戠殑APK鏂囦歡淇濆瓨鍒板悓鍚嶇洰褰曚腑錛岃屼笖榪樿兘甯鐢ㄦ埛灝嗗弽緙栬瘧鐨刣ex銆乷dex 閲嶆柊緙栬瘧鎴恉ex鏂囦歡錛岄潪甯稿疄鐢ㄣ
灝忕紪綺鵑夛細APK鍙嶇紪璇戝伐鍏
鍔熻兘璇存槑錛
銆銆1銆佸弽緙栬瘧APK鏂囦歡錛岀敓浜у埌鍚屽悕鐩褰曚腑
銆銆2銆佸皢鍙嶇紪璇戠殑APK閲嶆柊緙栬瘧錛屽湪褰撳墠鐩褰曠敓鎴2涓鏂囦歡錛1涓絳懼悕鐨勫拰涓涓鏈絳懼悕鐨
銆銆3銆佸弽緙栬瘧dex錛宱dex杞瑂mali鏂囦歡
銆銆4.銆佸皢鍙嶇紪璇戠殑dex銆乷dex 閲嶆柊緙栬瘧鎴恉ex鏂囦歡
銆銆5銆佸皢dex杞鎴恓ar
銆愭搷浣滄暀紼嬨
銆銆1銆佸皢闇瑕佸弽緙栬瘧鐨凙PK鏂囦歡鏀懼埌杞浠剁洰褰曚腑
銆銆2銆佹墦寮鍛戒護琛岀晫闈錛岃繍琛-CMD 錛屽畾浣嶅埌apktool鏂囦歡澶癸紝杈撳叆浠ヤ笅鍛戒護
銆銆apktool.bat d -f test.apk test
銆銆錛屽懡浠や腑test.apk鎸囩殑鏄瑕佸弽緙栬瘧鐨凙PK鏂囦歡鍏ㄥ悕錛宼est涓哄弽緙栬瘧鍚庤祫婧愭枃浠跺瓨鏀劇殑鐩褰曞悕縐幫紝鍗充負錛歛pktool.bat d -f [apk鏂囦歡 ] [杈撳嚭鏂囦歡澶筣
銆銆璇存槑鑾峰彇鎴愬姛錛屼箣鍚庡彂鐜板湪鏂囦歡澶逛笅澶氫簡涓猼est鏂囦歡錛岀偣鍑諱究鍙浠ユ煡鐪嬭ュ簲鐢ㄧ殑鎵鏈夎祫婧愭枃浠朵簡銆
銆銆濡傛灉浣犳兂灝嗗弽緙栬瘧瀹岀殑鏂囦歡閲嶆柊鎵撳寘鎴恆pk錛岄偅浣犲彲浠ワ細杈撳叆apktool.bat b test錛屼綘緙栬瘧鍑烘潵鏂囦歡澶逛究鍙錛屾晥鏋滃備笅錛
銆銆涔嬪悗鍦ㄤ箣鍓嶇殑test鏂囦歡涓嬩究鍙浠ュ彂鐜板氫簡2涓鏂囦歡澶瑰垎鍒鏄
銆銆build
銆銆dist(閲岄潰瀛樻斁鐫鎵撳寘鍑烘潵鐨凙PK鏂囦歡)
銆愮寽浣犲枩嬈銆
銆銆apk鍙嶇紪璇戝伐鍏鳳細LB-APK宸ュ叿鏄涓嬈懼畨鍗撹懼囩殑apk鍙嶇紪璇戝伐鍏鳳紝瀹冮泦鎴愪簡adb錛孶SB璋冭瘯鐢ㄧ殑銆 aapt錛孶SB瀹夎呭簲鐢ㄣ佸彇璁懼囧垪琛ㄣ侀噸鍚璁懼囩瓑錛屼笖鐢變簬浣跨敤鐨勬敮鎸佸簱杈冨氾紝鎵浠ヨ繖嬈懼弽緙栬瘧宸ュ叿鐢ㄤ簡闈欐佺紪璇戙傘銆Dodo APKTools(Dodo鍙嶇紪璇戝伐鍏) V1.0 緇胯壊鐗堬細Dodo APKTools鏄涓嬈鵑潪甯稿ソ鐢ㄧ殑鍙嶇紪璇戝伐鍏鳳紝瀹冨彲浠ュ府鍔╂垜浠鎶夾PK鍙嶇紪璇戠敓鎴愮▼搴忕殑婧愪唬鐮佸拰鍥劇墖銆乆ML閰嶇疆銆佽璦璧勬簮絳夋枃浠訛紝鎴戜滑瀵瑰浘鐗囧拰璇璦璧勬簮絳夋枃浠朵慨鏀瑰悗錛岃繕鍙浠ュ啀鎶婂畠浠緙栬瘧鎵撳寘鎴怉PK錛屾槸鍙嶇紪璇慉PK鏂囦歡鐨勫繀澶囪蔣浠躲傘銆apk鍙嶇紪璇戝強緙栬瘧宸ュ叿錛欰PK緙栬瘧涓撳舵槸涓嬈懼姛鑳芥瘮杈冨己澶х殑apk鍙嶇紪璇戝強緙栬瘧宸ュ叿錛屼嬌鐢ㄨ繖嬈捐蔣浠跺彲甯鍔╃敤鎴鋒洿鍔犲規槗瀵笰PK鍖呰繘琛岃繘琛岃В鍖呫佹墦鍖呫佺懼悕銆佹眽鍖栫瓑鎿嶄綔銆傘銆apk鍙嶇紪璇戝伐鍏蜂笅杞斤細APKDB 闆嗗悎浜嗗綋鍓嶅姛鑳介潪甯稿己鎮嶇殑apk鍙奷ex鏂囦歡緙栬瘧宸ュ叿錛岀敤鎴峰湪涓嬭澆瀹夎呬簡涔嬪悗錛屾偍灝卞彲浠ラ氳繃榧犳爣鍙抽敭鐨勫揩鎹瘋彍鍗昦pk鎴杁ex鏂囦歡榪涜屾洿渚挎嵎鐨刟pk絳懼悕鍜屽弽緙栬瘧鎿嶄綔銆
Ⅲ Android 如何對apk文件進行反編譯以及重新
第一:使用apktool直接反編譯apk
第六:把生成的hellodemo.apk安裝到手機,可以看到主界面上已經顯示的是hello,而不再是你好。說明反編譯重新打包成功!
Ⅳ 如何利用apktool反編譯apk
首先的知道一下幾條指令的意思
1,apktool d SysteUI.apk 12意思是將SystemUI.apk解包到12文件下,12文件夾不用創建,會自動生成
2,apktool b 12打包12文件夾(將會自動把12文件夾里的修改過得APK解包後修改完後自動打包,生成resources.arsc,文件,這就是我們反編譯的主要目的,當然還有其他目的,後面將會說明怎麼apktool需要反編譯的目的,生成的文件。
3,apktool if framework-res.apk這條語句很重要很多時候我們容易忽略這條語句導致打包不成功,這句語句的意思是,有些時候我們解包apk文件需要用framework-res.apk(framework是指系統框架。有時也會用到apktool if twframework-res.apk,同樣我們只需在前面輸入就行。當然得把framework-res.apk 這個文件目錄下。
4,apktool if twframework-res.apk ,當然 twframework-res.apk 也應該放在文件目錄下,不如反編譯Mms.apk.....會用到
知道這四條語句我們就可以進行反編譯了。
已反編譯SystemUI.apk為例,,下面開始講解
現在cmd下輸入apktool if framework-res.apk(並把framework-res.apk 放在文件目錄下)apktool if twframework-res.apk( twframework-res.apk 也應該放在文件目錄下 )其實這兩部就是搭建安卓系統環境 ,輸入完後在解包,apktool d SystemUI.apk 12就行了
Ⅳ 鏂版墜鍏ラ棬涔嬪弽緙栬瘧宸ュ叿apktool鐨勪嬌鐢
鏂版墜鎺㈢儲錛欰pktool鐨勭畝鏄撳叆闂ㄦ寚鍗
鍙嶇紪璇慉ndroid搴旂敤鐨勭樺瘑姝﹀櫒鈥斺擜pktool錛岃╂垜浠涓姝ユユ繁鍏ョ悊瑙e畠鐨勪嬌鐢ㄨ繃紼嬨
涓銆佽笍涓婂伐鍏蜂箣鏃
蹇呭囧伐鍏烽泦
- Apktool (.apk 鈫 .smali): 杞鎹apk涓哄彲璇葷殑smali璇璦
- dx2jar (.dex 鈫 .jar): 灝.dex鏂囦歡杞鎹涓.jar渚誇簬鏌ョ湅婧愮爜
- jd-gui: 浼橀泤鐨.jar鏂囦歡鍥懼艦鍖栨煡鐪嬪伐鍏
鎿嶄綔瀵硅薄
- Apktool: 闇瑕佸勭悊鐨凙ndroid搴旂敤瀹夎呭寘 (濡傦細xxx.apk)
- dx2jar鍜宩d-gui: 瑙e寘鍚庣殑classes.dex鏂囦歡
浜屻佹搷浣滄ラよ﹁В
- 鐜澧冨噯澶
- 棣栧厛錛岀『淇濅綘宸插皢Apktool銆乨2j-dex2jar.bat鍛戒護琛屽伐鍏峰垎鍒鏀劇疆鍦ㄥ悇鑷鐨勬枃浠跺す涓錛屽侱:Testapktool鍜孌:Testdex2jar-2.1
- 紜淇濇搷浣滃硅薄錛坸xx.apk鎴朿lasses.dex錛変笌宸ュ叿鏂囦歡澶勪簬鍚屼竴鐩褰曚笅
- 鍔ㄦ墜瀹炶返
Apktool: 鍦╟md鍛戒護鎻愮ず絎︿腑杈撳叆鎸囦護錛屽 D:Testapktool> apktool d -f -s xxx.apk -o D:Testapktool est
- 鎴愬姛榪愯屽悗錛屼綘浼氱湅鍒版搷浣滄垚鍔熺殑鎻愮ず錛屽悓鏃訛紝鐩鏍囨枃浠訛紙濡倀est鏂囦歡澶癸級浼氬寘鍚鍙嶇紪璇戝悗鐨剆mali浠g爜
dx2jar + jd-gui: 榪愯 D:Testdex2jar-2.1d2j-dex2jar.bat classes.dex錛岀敓鎴恈lasses-dex2jar.jar銆傛帴鐫錛岄氳繃jd-gui鎵撳紑姝ゆ枃浠訛紝鍗沖彲鏌ョ湅鍒癑ava婧愪唬鐮佺殑鍙嶇紪璇戠増鏈銆
閫氳繃浠ヤ笂姝ラわ紝鏃犺烘槸鍒濆﹁呰繕鏄緇忛獙涓板瘜鐨勫紑鍙戣咃紝閮借兘欏哄埄鎺屾彙Apktool鐨勫熀鏈鎿嶄綔錛屽紑鍚疉ndroid搴旂敤鐨勭炵橀潰綰憋紝鎺㈠諱唬鐮佽儗鍚庣殑閫昏緫銆傚湪浣犵殑Android寮鍙戞棶紼嬩腑錛岃繖灝嗘槸涓鎶婂己澶х殑宸ュ叿錛屽姪鍔涗綘娣卞叆鐞嗚В搴旂敤鐨勫唴閮ㄦ瀯閫犮