如何从Android设备获取apk文件?

一曲冷凌霜 提交于 2020-02-27 03:29:42

如何从Android设备获取apk文件? 或者如何将apk文件从设备传输到系统?


#1楼

如上所述,您可以使用adb中的pull命令获取apk。

由于您正在谈论已安装的应用程序,因此请继续查看Android文件系统的/ data / app目录。 您会在其中找到APK。

然后使用adb命令-adb pull /data/data/appname.apk


#2楼

我已经看到许多解决此问题的方法,要么您必须扎根手机,要么必须安装应用程序。 然后经过大量的搜索,我得到了针对非root / root用户的电话的解决方案。

列出您到目前为止获得的应用程序。

adb shell pm list packages

然后您可以选择一个应用程序,例如twitter

adb backup -apk com.twitter.android

这里重要的是不要设置用于加密备份的密码

这将创建一个名为backup.ap的文件,但是您仍然无法打开它。 为此,您必须使用dd命令再次将其提取。

dd if=backup.ab bs=24 skip=1 | openssl zlib -d > backup.tar

在此之后,您要做的就是提取tar内容并完成。

希望它对你们有用


#3楼

这些建议对我都不起作用,因为Android会在包名称后附加序列号以产生最终的APK文件名。 在较新的Android版本(Oreo和Pie)上,附加了不可预测的随机字符串。 以下命令序列对非root用户的设备有效

1)确定应用程序的软件包名称,例如“ com.example.someapp”。 如果您已经知道软件包名称,请跳过此步骤。

adb shell pm list packages

浏览软件包名称列表,并尝试在有问题的应用程序和软件包名称之间找到匹配项。 通常这很容易,但是请注意,程序包名称可能与应用程序名称完全无关。 如果您无法从包名称列表中识别该应用,请尝试使用浏览器在Google Play中找到该应用。 Google Play中应用程序的网址包含程序包名称。

2)获取所需软件包的APK文件的完整路径名。

adb shell pm path com.example.someapp

输出看起来像
包:/data/app/com.example.someapp-2.apk
要么
包:/data/app/com.example.someapp-nfFSVxn_CTafgra3Fr_rXQ == / base.apk

3)使用第2步中的完整路径名,将APK文件从Android设备拉至开发框。

adb pull /data/app/com.example.someapp-2.apk path/to/desired/destination

#4楼

我没有使用代码从移动设备中提取.apk文件,但是我一直在使用从移动设备中提取.apk文件的软件,而我使用的软件在下面带有google play链接:

  1. ES File Explorer文件管理器
  2. ASTRO Cloud&File Manager 3. 软件数据线

希望对您有帮助。


#5楼

不需要root:

此代码将获得名称为3rd party的包路径,以便您轻松识别APK

adb shell pm list packages -f -3

输出将是

包:/data/app/XX.XX.XX.apk=YY.YY.YY

现在,使用以下代码提取该软件包:

adb pull /data/app/XX.XX.XX.apk

如果您在C:>\\ cmd上方执行,那么您将在那里找到该程序包。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!