android从Marketplace安装应用程序后,是否保留。apk文件?

Android是否有一个保存这些文件的标准位置?


当前回答

你可以在adb shell上使用包管理器(pm)来列出包:

adb shell pm list packages | sort

要显示.apk文件的位置:

adb shell pm path com.king.candycrushsaga
package:/data/app/com.king.candycrushsaga-1/base.apk

和adb拉来下载apk。

adb pull data/app/com.king.candycrushsaga-1/base.apk

其他回答

你可以用ADB拉应用。它们应该在/data/App/中。

adb pull (location on device) (where to save)

请注意,你必须根你的手机拉复制保护的应用程序。

在/data/app中,但出于复制保护,我认为你不能访问它。

另一种在根设备上找不到apks的方法是使用rom工具箱。

使用应用程序管理器进行备份,然后转到storage/emulated/appmanager,检查系统应用程序备份或用户应用程序备份。

当我在模拟器上安装我的应用程序时,它显示了我的.apk文件

数据/应用 然后我用了 Ls data/app //查看它是否存在或 不

安装应用程序后,只需使用ls命令vie shell并检查所需的目录,但这取决于你要安装的应用程序类型。我使用这种方法安装 如果有什么地方不对就指出来。

There is no standard location, however you can use the PackageManager to find out about packages and the ApplicationInfo class you can get from there has various information about a particular package: the path to its .apk, the path to its data directory, the path to a resource-only .apk (for forward locked apps), etc. Note that you may or may not have permission to read these directories depending on your relationship with the other app; however, all apps are able to read the resource .apk (which is also the real .apk for non-forward-locked app).

如果你只是在shell中闲逛,目前非前向锁定的应用程序位于/data/app/.apk中。shell用户可以读取特定的.apk,但不能列出目录。在未来的版本中,命名约定将略有改变,所以不要指望它保持不变,但如果您从包管理器中获得.apk的路径,那么您可以在shell中使用它。