需要一些帮助来检索*.apk文件名从安卓设备编程?如果我只知道文件名的一部分,有没有人能提供一些Android方法来做这件事,甚至是Android下运行的shell命令来获取文件位置?
另外,如果有一种方法,如何找出下载后,从市场或外部市场的*.apk文件去哪里?
提前谢谢你。
发布于 2012-02-24 10:49:06
List PackageManager.getInstalledApplications()
将为您提供已安装应用程序的列表,ApplicationInfo.sourceDir
是.apk文件的路径。
PackageManager pm = getPackageManager();
for (ApplicationInfo app : pm.getInstalledApplications(0)) {
Log.d("PackageList", "package: " + app.packageName + ", sourceDir: " + app.sourceDir);
}
输出如下所示:
package: com.tmobile.themechooser, sourceDir: /system/app/ThemeChooser.apk
package: com.tmobile.thememanager, sourceDir: /system/app/ThemeManager.apk
package: com.touchtype.swiftkey, sourceDir: /data/app/com.touchtype.swiftkey-1.apk
package: com.twitter.android, sourceDir: /data/app/com.twitter.android-2.apk
package: fm.last.android, sourceDir: /data/app/fm.last.android-1.apk
发布于 2012-09-11 23:50:19
$ adb shell pm list packages -f
发布于 2013-12-09 11:41:42
这为我提供了/data/app/xxx.apk格式的路径:
https://developer.android.com/reference/android/content/Context.html#getPackageResourcePath%28%29
https://stackoverflow.com/questions/4635448
复制相似问题