【大前端】【Android】 Android 手机上导出已安装 App 的 APK

根据是否有 root / adb / 仅手机操作 ,常见有 4 种靠谱方式 。按「实用度 + 成本」整理👇


一、最推荐:ADB 导出(无需 Root,最稳定)⭐️

适合开发者、抓包、逆向、分析三方 APK

1️⃣ 开启 USB 调试

复制代码
设置 → 关于手机 → 连续点击"版本号" → 开发者模式
开发者选项 → USB 调试

2️⃣ 找到 APK 路径

复制代码
adb shell pm list packages | grep wechat

例如:

复制代码
package:com.tencent.mm

查 APK 真实路径:

复制代码
adb shell pm path com.tencent.mm

输出示例:

复制代码
package:/data/app/~~abc123==/com.tencent.mm-xyz/base.apk

3️⃣ 拉取 APK

复制代码
adb pull /data/app/~~abc123==/com.tencent.mm-xyz/base.apk ./wechat.apk

📌 注意

  • Android 8+ 多为 split apk

  • 导出后建议用 APKMirror Installerbundletool 安装


二、导出 Split APK(Android 8+ 必看)

很多 App 是 base + 多个 config.apk

复制代码
adb shell pm path com.example.app

返回:

复制代码
base.apk
split_config.arm64_v8a.apk
split_config.zh.apk

批量导出

复制代码
adb pull /data/app/xxx/com.example.app-xxx/ ./app_apk/

合并安装(推荐)

复制代码
bundletool build-apks --mode=universal \
--bundle=app.aab --output=app.apks

三、手机直接导出(无电脑)

方法 1:APK Extractor(推荐)

📱 应用商店搜索:

  • APK Extractor

  • ML Manager

  • App Backup & Restore

操作:

复制代码
打开 App → 选择应用 → 导出 APK

📌 优点:

  • 不需要电脑

  • 自动处理 split apk

📌 缺点:

  • 部分系统 App 导不出

  • 有广告


四、Root 手机导出(不推荐,除非你本来就 Root)

复制代码
su
cp /data/app/com.xxx.app-1/base.apk /sdcard/app.apk

📌 Root 才能访问 /data/app


五、系统 App / 预装 App 导出

系统 App 路径通常在:

复制代码
/system/app/
/system/priv-app/

例如:

复制代码
adb pull /system/app/Settings/Settings.apk

⚠️ 有些是 odex / vdex,不能直接装


六、常见问题(非常关键)

❓ 导出的 APK 装不上?

原因:

  • Android 8+ 是 Split APK

  • 缺少 ABI / 语言 / DPI

✔️ 解决:

  • APKMirror Installer

  • bundletool


❓ 导出后和商店下载的不一样?

正常现象:

  • 厂商二次加固

  • 动态修复

  • 渠道包不同


七、推荐你用的组合方案(开发者)

场景 推荐方案
自己分析 adb + pull
分发给别人 APK Extractor
Android 8+ bundletool
系统 App adb + /system
相关推荐
_李小白5 小时前
【Android FrameWork】第三十一天:Surface创建流程解析
android
Just_Paranoid5 小时前
【Android UI】Android Tint 用法指南
android·ui·tint·porterduff·colorfilter
Android系统攻城狮5 小时前
Android16之交叉编译系统压力测试利器:stress-ng(二百六十六)
android·压力测试·android16·系统调试
杨忆5 小时前
导航栏左右拖动切换
android
TheNextByte15 小时前
如何将 itel 手机中的联系人传输到 iPhone
ios·智能手机·iphone
shuaijie05185 小时前
在Vue.js中实现列表的拖动功能,使用第三方库如vuedraggable(基于Sortable.js)
android·javascript·vue.js
毕设源码-郭学长5 小时前
【开题答辩全过程】以 基于Android的儿童托管系统为例,包含答辩的问题和答案
android
sky丶Mamba5 小时前
CentOS Stream 9安装MySQL
android·mysql·centos
wei115565 小时前
framework.jar使用
android