从网上搜索的方法:
如下:
1.查看源码
2.日志法
a、启动待测apk
b、开启日志输出:adb logcat>D:/log.txt
c、关闭日志输出:ctrl+c
d、查看日志
直接搜索 :Displayed
找寻:Displayed com.mm.android.hsy/.ui.LoginActivity: +3s859ms
appPackage = com.mm.android.hsy
appActivity = .ui.LoginActivity
我一直用的方法是:
adb shell
logcat | grep cmp=
自己用的简洁版:
adb logcat|find "Displayed" >d:/logs.txt
adb logcat|findstr /I ".*activity"
3.反编译查看
1,重命名ContactManager.apk为ContactManager.zip并解压得到文件classes.dex;
2,解压dex2jar-0.0.9.15.zip,并从命令行进入该文件夹;
3,运行命令
d2j-dex2jar.bat path_toclasses.dex
在当前文件夹下得到classes-dex2jar.jar;
4,解压jd-gui-0.3.6.windows.zip得到文件jd-gui.exe;
5,使用jd-gui.exe打开classes-dex2jar.jar;
例如::
C:UsersAdministratorDesktop estzidongandroidactivity packagedex2jar>d2j-d
ex2jar.bat ../ContactManager/classes.dex
反编译工具在:https://yunpan.cn/cSdMAvzPWQDr9 访问密码 7aa2
apktool 反编译https://yunpan.cn/cSLi9na9hMPki 访问密码 725d
4.http://blog.csdn.net/yudajun/article/details/7855270
5.
aapt dump badging +客户端包所在路径+客户端包名称.apk
这个看你有没有aapt.exe,这个很直观,你也可以执行命令时输出成log来看,有apk的推荐这种。反编译查看xml应该用的也是这种方法。
aapt脚本
@echo off echo 注意!!! echo 使用前请先将要查看的apk包和本脚本放到一起。 echo aapt 在:sdkandsdkuild-tools目录 if exist apkinformation.txt del /P apkinformation.txt set /p aaptpath= 请输入aapt路径: echo 请输入apk完整包名例如:xxx.apk set /p apkpath= %aaptpath%aapt.exe dump badging %apkpath% | findstr "package launchable-activity BuildVersionName sdkVersion targetSdkVersion" >> apkinformation.txt echo "请查看当前目录下的apkinformation.txt文件" pause del /P apkinformation.txt
简化版本
D:SOFTWOREandroid-sdksdkuild-tools28.0.3aapt.exe dump badging 656_2327.apk |findstr /c:package /c:launchable-activity