一.導(dǎo)出步驟:
1)查看當(dāng)前可見界面
目的:找到對應(yīng)應(yīng)用的包名和當(dāng)前Activity的名字
adb shell dumpsys activity | findstr "mResumedActivity"
1)找到應(yīng)用的包名
執(zhí)行命令:
$ adb shell pm list package
輸出結(jié)果:
com.pplive.movie3d
.
.
.
等
2)找到應(yīng)用備份包的位置薇缅,比如要找com.pplive.movie3d
執(zhí)行命令:
$ adb shell pm path com.pplive.movie3d
輸出結(jié)果:
package:/system/app/PPTV3D/PPTV3D.apk
3)提取安裝包
執(zhí)行命令:
$ adb pull /system/app/PPTV3D/PPTV3D.apk
執(zhí)行結(jié)果:
/system/app/PPTV3D/PPTV3D.apk: 1 file pulled. 3.9 MB/s (57503627 bytes in 14.164s)
至此售滤,提取成功锋八,可以發(fā)送/復(fù)制到手機上進(jìn)行安裝了 系統(tǒng)及和第三方均可。
二.反編譯
<meta charset="utf-8">
下載反編譯所需軟件
- apktool 作用:把apk文件反編譯严沥,取出資源
- dex2jar 作用:把存有java內(nèi)容的dex文件反編譯(classes.dex轉(zhuǎn)化成jar文件)
- jd-gui 作用:查看APK中classes.dex轉(zhuǎn)化成出的jar文件,即源碼文件
百度網(wǎng)盤:https://pan.baidu.com/s/1T94PX4EBYyuJKOqfNqyc6g 提取碼: mquv
使用:
<meta charset="utf-8">
1. 使用apktool反編譯apk得到圖片剔桨、XML配置限匣、語言資源等文件
在存放下載好的反編譯工具所在目錄的上方輸入cmd可以使cmd直接定位到該文件夾目錄下
java -jar apktool_2.4.0.jar d -f G:\BaiduNetdiskDownload\安卓反編譯工具/PPTV3D.apk -o outFileDir
命令格式為
java -jar apktool.jar包的文件名 d -f 要反編譯軟件包名 -o 要輸出的文件夾
成功便可在輸出的outFileDir文件夾下看到資源內(nèi)容了
2.使用dex2jar反編譯dex文件得到Java源碼
以壓縮包的的形式打開apk安裝包
找到dex結(jié)尾的文件classes.dex,這就是java編譯打包后的文件
將獲取到的classes.dex放到之前解壓出來的反編譯工具【dex2jar】文件夾內(nèi)
直接輸入cmd 回車
cmd進(jìn)入該文件夾后輸入
d2j-dex2jar classes.dex
執(zhí)行完成后就可以在該目錄下看到dex文件反編譯成功后得到的jar包了
最后打開所下載的jd-gui-windows工具打開反編譯得到的jar文件就可以反編譯得到j(luò)ava源代碼了
結(jié)束历极。窄瘟。。趟卸。蹄葱。。