有没有办法检测apk是否存储在SD卡上?

时间:2012-01-03 12:18:05

标签: android

有没有办法检测apk是否存储在SD卡上? 怎么样?

4 个答案:

答案 0 :(得分:4)

答案 1 :(得分:1)

为了使接受的答案更加具体,以下是根据API level 7指南或更低版本,在访问写入内部存储与外部存储的文件的环境中如何使用它的示例:

{   //...
    mInternalApp = context.getApplicationInfo().sourceDir.matches("^/data/app/.*");
    mPathInternal = context.getApplicationInfo().dataDir + "/files/";
    mPathExternal = Environment.getExternalStorageDirectory() + "/Android/data/"
                + PACKAGE_NAME + "/files/";
}

private File getMyFile() {
    return (mInternalApp) ? new File(mPathInternal + INT_FILE_NAME) :
                            new File(mPathExternal + EXT_FILE_NAME);
}

答案 2 :(得分:0)

是的......你可以检测到同样的......

从Android电子市场下载的应用程序存储在 / data / app (不在SD卡中)。 默认系统应用程序存储在 / system / app

但是,root电话可以将应用程序存储在 / sdcard / backups / apps

答案 3 :(得分:0)

     File f = new file(Environment.getExternalStorageDirectory()+"your apk name");
     sytem,out.println(""+f.exsits);