【Android】提取Android中已安装app的apk
提取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 命令,将安装的所有应用包名列出来:
$ adb shell pm list packagespackage:androidpackage:cn.wps.mofficepackage:com.android.backupconfirmpackage:com.android.bluetoothpackage:com.android.browserpackage:com.android.calculator2package:com.android.camerapackage:com.android.certinstallerpackage:com.android.contacts
第二步,找到 apk 的位置
$ adb shell pm path com.tence01.mmpackage:/data/app/com.tence01.mm-1.apk
第三步,pull 出来
$ adb pull /data/app/com.tence01.mm-1.apk ~/apks2407 KB/s (25567735 bytes in 10.370s)
root 的手机会更好办
$ adb shellshell@android:/ $ sushell@android:/ # cd data/appshell@android:/data/app # lscom.android.update.dmp-2.apkcom.baidu.superservice-1.apkcom.tence01.mm-1.apkcom.tencent.mm-1.apk
或者直接搜索你要的 apk:
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的apk相关推荐
- Android不同版本读取已安装应用列表权限相关问题
转载自:https://blog.csdn.net/u010844304/article/details/111044338 如何在Android 11 上获取已安装应用列表在Android 11上, ...
- 判断android应用程序是否已安装
2019独角兽企业重金招聘Python工程师标准>>> android应用程序是否已安装,查看是否此包的相关信息 PackageInfo packageInfo; try { ...
- android备份:apk安装过程及原理,备份已安装应用的apk包技术实现方案
安卓设备上备份已安装应用的apk包技术实现方案 需求的目的 在只有安装应用, 没有该应用的apk,而我们又想活取应用apk,用来分享给别人,或是应用的备份, 说是应用的增量升级的, 怎么办? 本文将告 ...
- VirtualApp中静默安装App
最近学习看到android沙箱VirtualApp,小编资历尚浅,只是从VA运用的角度记录了下来如何在VA中静默安装app VirtualApp github地址https://github.com/ ...
- 如何获取IOS手机已安装app的bundleid
获取IOS手机已安装app的bundleid 如果使用oc私有api获取不到ios11以上手机的app bundleid 那么可以使用安装其他工具来获取 那就是使用 libimobiledevice ...
- 查看python包_怎么查看python中已安装的包
展开全部 使用命令 pip list 可以查看2113python中已安装的包5261:具体步骤如下: 1.打开4102python:在命令符模式下(运1653行→cmd)输入Python回车即可 2 ...
- 在VScode中导入anaconda中已安装好的库
在VScode中导入anaconda中已安装好的库 写在前面 博主作为一个Python小白,在遇到一些网上的代码的时候,经常会遇到需要import一些库 如果我们有一个Anaconda就会变得很方便. ...
- 简单实现Android获取已安装APP清单列表显示
activity代码: import android.app.ListActivity; import android.content.pm.ApplicationInfo; import andro ...
- android 安装包 权限,确定Android中已安装应用程序使用的权限列表
我必须确定我的设备上已安装的应用程序使用的权限列表. 我已经安装了应用程序列表,并使用以下代码包名称: PackageManager pm = this.getPackageManager(); In ...
最新文章
- 撑起整个互联网的7大开源技术
- Webview页面的控件元素定位
- putty连接虚拟fedaro失败的解决方法
- 执行maven clean package 时报OutOfMemoryError的解决办法
- 《深入浅出nodejs》读书笔记(3)
- 张文宏直播再曝金句:我宁可戴口罩开空调
- pandas数据处理实践五(透视表pivot_table、分组和透视表实战Grouper和pivot_table)
- 爬取豌豆荚app数据(总结篇)
- 22种大数据分析可视化工具
- 像幅、像素数、像素尺寸关系
- 过滤掉Abp框架不需要记录的日志
- 企业支付宝 异名网银u盾快速充值功能开通方式(支付宝企业商户资金充值方法)
- django踩坑关于django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
- 中国睫毛生长液行业市场供需与战略研究报告
- 声呐技术学习---(1)
- 华为交换机删除配置命令access_华为交换机基本配置命令
- The table xxxx is full处理
- 富士康500万iphone遭退货
- 在动态规划的海洋中遨游(二)
- 学习笔记之语法中的五大基本句型
热门文章
- bat自动清理(girl的电脑桌面)
- 部署Tectonic服务到kubernetes集群
- react实现div隐藏_React 点击按钮显示div与隐藏div
- 调查显示四分之一孩子存在不同程度睡眠问题
- 初学者Photoshop:十秒钟内的黑白和红色照片效果
- tlias 教学过程_传智专修学院:“打开天窗说亮话”,让学生正确评价每一位教师...
- 鲜为人知且未充分利用的 CSS 功能
- HR问“你目前有几个offer”,你该如何巧妙回答?
- [MATLAB]基本操作与矩阵输入
- multiple definition of XXX情况分析