判断力应用程序安装位置
从Android 2.2开始软件可以安装到SD卡上,在API Level为8的SDK中新增了一个标记可以判断应用程序安装在机身内或机身外,通过 ApplicationInfo.FLAG_EXTERNAL_STORAGE 标记可以判断应用是否为是否安装在Sdcard上,当然对于SDK低于Android 2.2时可以通过ApplicationInfo的sourceDir属性为/sdcard/开头来确定APK安装的位置。
如下:
PackageManager pm=ctx.getPackageManager();
ApplicationInfo appInfo=pm.getApplicationInfo(pkgName, 0);
if ((appInfo.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0) {
// App on sdcard
System.out.println(pkgName+" install on sdcard");
}