Есть ли способ определить, хранится ли apk на SD-карте или нет? - PullRequest
8 голосов
/ 03 января 2012

Есть ли способ определить, хранится ли apk на SD-карте или нет? Как?

Ответы [ 4 ]

3 голосов
/ 03 января 2012

Используйте getApplicationInfo (). SourceDir

http://developer.android.com/reference/android/content/pm/ApplicationInfo.html

2 голосов
/ 10 февраля 2012

Чтобы сделать принятый ответ более конкретным, вот пример того, как я использовал его в контексте доступа к файлам, записанным во внутреннее или внешнее хранилище, в соответствии с уровнем API 7 или ниже:1003 *

{   //...
    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);
}
0 голосов
/ 03 января 2012
     File f = new file(Environment.getExternalStorageDirectory()+"your apk name");
     sytem,out.println(""+f.exsits);
0 голосов
/ 03 января 2012

Да ... Вы можете обнаружить то же самое ...

Приложения, загруженные с Android Market, хранятся в / data / app (не на SD-карте).Системные приложения по умолчанию хранятся в / system / app

Тем не менее, телефоны с root-доступом могут хранить приложения в / sdcard / backups / apps

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...