我是靠谱客的博主 炙热大侠,这篇文章主要介绍【Android】提取Android中已安装app的apk0x01原文:adb 取出安装在手机中的 apk0x02验证 ,现在分享给大家,希望可以做个参考。

提取Android中已安装的apk,这个需求很多时候都会遇到。比如从google play上安装过apk后,如何提取出来给别人用?

本文1. 先介绍转载的apk提取方法并 2. 验证提取出来的apk和安装之前的apk的一致性。

0x01原文:adb 取出安装在手机中的 apk

参考:http://wiki.jikexueyuan.com/project/android-actual-combat-skills/adb-remove-the-apk-installed-on-the-phone.html

场景:

朋友看见你 Android 手机中的游戏或应用很好玩,也想装一个此程序,但限于网络条件不能从网上下载。那么最简单的办法就是直接从你手机中将此 apk 扣出来给他安装上。

pm 命令

第一步,找到程序的包名

借助 adb shell pm 命令,将安装的所有应用包名列出来:

复制代码
1
2
3
4
5
6
7
8
9
10
$ adb shell pm list packages package:android package:cn.wps.moffice package:com.android.backupconfirm package:com.android.bluetooth package:com.android.browser package:com.android.calculator2 package:com.android.camera package:com.android.certinstaller package:com.android.contacts

第二步,找到 apk 的位置

复制代码
1
2
$ adb shell pm path com.tence01.mm package:/data/app/com.tence01.mm-1.apk

第三步,pull 出来

复制代码
1
2
$ adb pull /data/app/com.tence01.mm-1.apk ~/apks 2407 KB/s (25567735 bytes in 10.370s)

root 的手机会更好办

复制代码
1
2
3
4
5
6
7
8
$ adb shell shell@android:/ $ su shell@android:/ # cd data/app shell@android:/data/app # ls com.android.update.dmp-2.apk com.baidu.superservice-1.apk com.tence01.mm-1.apk com.tencent.mm-1.apk

或者直接搜索你要的 apk:

复制代码
1
2
shell@android:/ # find -name *.apk ./udisk/我的下载/download/我的应用/aqgj_1365562277812.apk

0x02验证

先通过adb install的apk,提取处来diff,发现和之前的apk是一致的:

 

 

PS:

20200509 apkpure下载的文件签名都验证不了了,大家下载的时候注意一点吧。

apksigner verify -v --print-certs  Google Chrome Fast Secure_v81.0.4044.138_apkpure.com.xapk

最后

以上就是炙热大侠最近收集整理的关于【Android】提取Android中已安装app的apk0x01原文:adb 取出安装在手机中的 apk0x02验证 的全部内容,更多相关【Android】提取Android中已安装app的apk0x01原文:adb内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部