使用adb查看别人家APP的数据

使用adb查看别人家APP的数据,第1张

1说明

2使用adb命令获取指定应用的包名和Activity名称

3使用adb命令启动/关闭APP

4使用adb命令把手机中的apk导到电脑上

5查看apk中的AndroidManifestxml文件

6使用adb命令进行数据备份

7查看数据

8结语

查看其它APP数据的前提是该APP默认开启数据备份,也就是allowBackup属性。

想问一下大家在平时的开发中对应用的安全性有很在意么?有可能大家会想到加密、混淆、apk加固,但还有一些其他细节的东西需要大家去了解。今天就介绍一下android:allowBackup属性。这个属性在开发的过程中通常是默认开启的,Google起初是为了防止数据丢失,留下了这个功能,但是这个属性也容易造成一些隐私数据的泄露。如果你想关闭可以把它设置为false。那么这个属性在哪里设置呢,就在AndroidManifestxml文件中的application标签中。

要备份APP的数据,首先我们要知道这个APP的包名才可以进行备份。

在手机或模拟器上面运行APP,然后输入命令: adb shell dumpsys activity top #

这时会输出很多东西,你可以用查找功能Ctrl+F,找到TASK,下图红框中就是要找的包名

命令: adb logcat| findstr START

然后在手机或模拟器上点击你想要获取的应用,这时就会在cmd中出现相应的包名和类名了。

启动APP的命令: adb shell am start -W -n package/activity

命令窗口通过adb shell 进入android 的Linux命令界面,输入am help看到如下信息:

它会展示出在不同场景下(比如start-activity、start-service等)不同参数代表的意义一些参数的意义,情况太多了这里就不细说了。

回到正题,后面的package和activity就是上面获取包名第二种方法中提到的cmp,比如我们要启动谷歌地图: adb shell am start -W -n comgoogleandroidappsmaps/comgoogleandroidmapsMapsActivity

在这里我们再做一个延伸, 用命令做APP的冷启动和热启动 *** 作,然后记录启动的时间

我们看到上图中有三个数字ThisTime、TotalTime和WaitTime,这三个数字就是本次启动APP所花费的时间。

热启动时退出退出APP的命令: adb shell input keyevent 3 ,这就相当于按了手机的home键,然后我们再执行启动APP的命令,这样就完成了热启动。

我们看到热启动花费的时间比冷启动少了很多,一套冷、热启动的流程我们就走完了。接下来就看我们怎么去优化了,让它们变的更少。所以我们在平时做启动优化的时候可以把自己的APP和一些优秀的APP做一下对比看看还差多少。

上面已经说过了一种退出APP的方法了,接下来这个命令是相当于杀掉当前的APP进程。

命令: adb shell am force-stop package

这时候再使用启动命令,就相当于冷启动了。

有的时候我们在手机上查看和 *** 作apk不是特别方便,而且通过文件管理找apk也很难找。接下来就介绍怎么用adb命令把手机中的apk导到电脑上。

通过包名获取apk在手机中的存储路径,命令 adb shell pm path package

导出apk文件,到当前目录下

命令: adb pull 路径

这一步就要看一下apk中有哪些东西了,主要还是看一下AndroidManifestxml文件当中的allowBackup设置。

我平常用的方法就是吧apk文件的后缀该成zip,然后就可以看到里面的东西了。下面的是谷歌地图的apk的构成。

下面来看一下AndroidManifestxml文件,会看到都是乱码,但是关键的信息还是可以获取的,我们目前想要的就是下图红框中的allowBackup属性,像谷歌的APP肯定是把它设置成false的,所以我们没办法备份它的信息的。

那么我们怎么看一个应用的allowBackup属性设置成true还是false呢,我的观察和实践出来的方法是看allowBackup后面有没有小方框,有就代表设置了true。如果有哪位大神知道好的可靠的方法还请留言告知。

下面是其他apk中的AndroidManifestxml文件,后面带了个小方框。

在了解到APP可以备份之后,我们就可以开始做坏事了,哈哈。

备份的命令: adb backup -nosystem -all -noapk -noshared -f dataab package

[-system | -nosystem] 是否备份系统

[-apk | -noapk] 是否备份apk安装文件

[-shared | -noshared] 是否备份手机存储空间

-f ab 存档格式一定要是ab

package:包名

在运行命令之后,手机或模拟器会出现一个页面要求你输入备份密码,这个密码你可以随便输入,但你要记住,在后面查看ab文件的时候会用到。

输入密码,点击备份我的数据之后就开始备份了,备份完成之后会有提示,这时就是生产一个ab文件了。

ab文件大家很少接触,这里使用abe工具(链接: >

提取码:uns4 )解析ab文件 ,也是通过命令,把abejar和刚才生成的ab文件放到同一个文件夹中,然后运行命令: java -jar abejar unpack xxxab xxxrar

(如果不想使用命令可以看看这篇文章 >

adb的全称为Android Debug Bridge,就是起到调试桥的作用。\x0d\借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机 *** 作,如安装软件、系统升级、运行shell命令等等。其实简而言说,adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的 *** 作。\x0d\实际上adb工具确实很有用,很多Root方法等等的都需要用到adb,只是很多时候我们没有擦觉到而已!\x0d\但是在我们日常使用Android手机的时候,adb工具能帮我们提供些什么方便呢\x0d\那究竟adb能帮我们些什么呢\x0d\我觉得最重要的是,在我们由于修改了系统文件,而导致手机无限重启,或者误删桌面软件,而导致桌面全黑,又或者开机马上fc等情况的时候,adb就能发挥其重要作用了!!\x0d\出现这些情况,如果我们没有adb工具都不好搞,说不定就要刷机咯!!\x0d\当然,日常的软件安装卸载,系统文件的替换都让adb工具来帮我们\x0d\好!下面就教大家如何使用adb\x0d\首先,当然是下载adb工具[attach]581213[/attach],下载后,建议放到\x0d\个人放在当前用户的工作目录下,如我自己的是"C:UsersAdministrator",放这里,往后的 *** 作会比较方便\x0d\\x0d\放好后,我们进入“开始菜单--所有程序--附件--命令提示符”,或者可以用快捷键"Win+R",然后输入CMD,同样可以进入\x0d\\x0d\手机开启“USB调试模式”(如果你是开不了机的话,那就没办法咯,调试模式我是长开的),窗口中输入\x0d\adb devices 复制上面的\x0d\回车后,如果成功连接会出现入下图红框部分(如果开不了机,又连接不上adb的话,可以到Recovery里试试)\x0d\成功连接以后,我们就可以通过在这里输入命令来进行各种 *** 作了!\x0d\如果想知道所有的adb命令,可以在窗口中输入adb,然后回车就会有提示了,当然,那是英文的!\x0d\\x0d\后面还有很多,就不全部贴上来了!\x0d\给出常用几个的说明:\x0d\1 查看设备\x0d\adb devices\x0d\这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示\x0d\Android系列教程(六) adb *** 作命令详解\x0d\2安装软件\x0d\adb install\x0d\adb install :这个命令将指定的apk文件安装到设备上\x0d\Android系列教程(六) adb *** 作命令详解\x0d\3 卸载软件\x0d\adb uninstall \x0d\adb uninstall -k \x0d\如果加 -k 参数,为卸载软件但是保留配置和缓存文件\x0d\4 进入设备或模拟器的shell:\x0d\adb shell\x0d\通过上面的命令,就可以进入设备或模拟器的shell环境中,在这个Linux Shell中,你可以执行各种Linux的命令,另外如果只想执行一条shell命令,可以采用以下的方式:\x0d\adb shell [command]\x0d\如:adb shell dmesg会打印出内核的调试信息。\x0d\5 发布端口\x0d\可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:\x0d\adb forward tcp:5555 tcp:8000\x0d\6 从电脑上发送文件到设备\x0d\adb push \x0d\用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)\x0d\7 从设备上下载文件到电脑\x0d\adb pull \x0d\用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑\x0d\8、查看bug报告\x0d\adb bugreport\x0d\9、记录无线通讯日志\x0d\一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:\x0d\adb shell\x0d\logcat -b radio\x0d\10、获取设备的ID和序列号\x0d\adb get-product\x0d\adb get-serialno\x0d\adb shell\x0d\举一个最常用的例子:提取,并推送framework-resapk。\x0d\提取系统上的framework-resapk\x0d\进入“命令提示符”后,我们先执行一次"adb devices",确认是否已经连上\x0d\然后,再执行"adb remount"\x0d\接着,我们就可以提取了,按照上面第七点的格式输入执行"adb pull /system/framework/framework-resapk D:"\x0d\当然后面的路径,D:是随你自己喜欢的,但是要注意空格\x0d\\x0d\adb devices adb remount adb pull /system/framework/framework-resapk D: 复制代码即可\x0d\这样D:上就会多了framework-resapk这文件了\x0d\从新推送"framework-resapk"\x0d\我们用到推送的指令,仿照上面第六点输入执行 "adb push D:framework-resapk /system/framework"\x0d\这里我们不要忘了还要修改权限,执行"adb shell chmod 644 /system/framework/framework-resapk"\x0d\当然,我们还需要重启一下,执行"adb reboot"\x0d\\x0d\adb devices adb remount adb adb push D:framework-resapk /system/framework adb shell chmod 644 /system/framework/framework-resapk 复制代码即可

时间不固定,根据网速、手机、电脑性能来定。

1、安装adb install apk路径

2、查询adb shell pm list packages -[option] 命令查看已经安装的应用,列出包名,后面加不同的后缀输出不同信息。adb shell pm list packages查看当前连接设备或者虚拟机的所有包adb shell pm list packages -d只输出禁用的包。adb shell pm list packages -e只输出启用的包。adb shell pm list packages -s只输出系统的包。adb shell pm list packages -i只输出包和安装信息(安装来源)。adb shell pm list packages -u只输出包和未安装包信息(安装来源)。adb shell pm list packages -i只输出包和安装信息(安装来源)。adb shell pm list packages -f输出包和包相关联的文件adb shell pm list packages -3输出所有第三方包。adb shell pm list packages -[option] "sina"按照要求搜索包。

3、卸载adb uninstall 应用名

常见adb指令:安装应用:adb install -r E:\xxxapk(apk文件路径)-r 表示覆盖安装E:\xxxapk apk文件路径,把文件拖进命令窗口里面,会自动生成卸载应用:adb uninstall com(安装包包名)。

安卓调试桥(Android Debug Bridge),是Android SDK中的一个调试工具, 使用adb可以直接 *** 作管理Android模拟器或Andriod真机设备,在开发测试过程中,起到调试的作用。

adbexe的存放路径:Android-SDKplatform-tools

adb help //查看帮助

adb version //查看adb版本号

adb devices //查看设备

adb connect IP:port //连接设备

adb disconnect //断开连接的所有设备

adb disconnect IP:port //断开连接指定设备

adb root //获取root权限

adb remount //重新挂载文件系统(默认只读,执行命令后可写)

adb install Package //安装APK

adb install -r Package //强制覆盖安装

adb install -t Package //允许降级覆盖安装

adb install -d Package //允许测试包

adb uninstall PackageName //卸载APK

adb uninstall -k (keep) PackageName //保留用户数据卸载

adb pull //将设备文件文件发送到PC

adb push //将PC文件发送到设备

adb logcat -c //清空日志

adb logcat -v threadtime >D:111log //抓日志并输出保存D:111log

adb shell screencap /sdcard/screenpng //屏幕截图(并存放sdcard目录,命名screenpng)

adb shell screenrecord /sdcard/demomp4 //录制屏幕(Android44以上可用)

adb shell dumpsys activity activities //查看activity信息

adb shell dumpsys activity |findstr mResumedActivity //获取当前activity信息

adb shell dumpsys window windows | findstr “Current” //查看当前app窗口activity

adb shell //进入设备内部

cd //切换目录

pwd //查看当前路径

ping //查看网络连接

rm //删除目录下的所有文件

cp -r /path/filename /NewPath //拷贝文件

busybox find / -name FileName //查找文件

tcpdump -i any -p -s 0 -w /data/data/1111pcap //抓取网络包

pm uninstall PackageName //卸载APK

pm path PackageName //查看APK存放位置

pm clear PackageName //清除APK缓存

dumpsys package omandroidxxx //查看APK的具体信息

dumpsys package omandroidxxx | grep version //查看APK版本

dumpsys package comtencentmm | findstr versionName //查看APK版本

am start PackageName //拉起APK

am start -n comandroidxxx/WelcomeActivity //直接拉起APK的指定WelcomeActivity

am start -a androidintentactionVIEW -d >

adb手机安装pe系统命令步骤手机连接adb,完成后需要获取系统安装权限执行下述命令可获取系统权限adbroot再输入adbshell进入,然后再换行输入mount-oremount或system。

以上就是关于使用adb查看别人家APP的数据全部的内容,包括:使用adb查看别人家APP的数据、超实用的adb与adb shell常用命令汇总、“ADB”怎样安装使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9738671.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存