2013-06-17 1 views
0

На Samsung Galaxy Mini (Android 2.3) я не могу установить APK с более чем 100 МБ через Eclipse (всегда некоторая ошибка, и ничего не помогло, как правило, это говорит о недостаточности_страницы, даже если на внешнем хранилище имеется 300 МБ свободного места, то есть на SD-карте в этом случае, а установочное местоположение установлено на PREFER_EXTERNAL).Проблема с внешним хранилищем с установленным состоянием и правильное разрешение

Итак, я скопировал APK на SD-карту через USB-соединение, а затем отсоединил USB с ПК. Затем с помощью File Manager я открыл APK и установил его. Перед установкой он не отображает разрешение WRITE_EXTERNAL_STORAGE для утверждения (возможно, это проблема?).

Когда я бегу, я получаю следующее сообщение об ошибке при попытке записи в моей папке (getExternalFilesDir(null)) во внешнем хранилище:

«Невозможно создать внешний каталог файлов»

Он отображает его дважды LogCat.

Я использую Environment.getExternalStorageState(), прежде чем что-либо делать, и он возвращает MEDIA_MOUNTED должным образом. Он регистрируется в logcat в том же месте, где появляется журнал «Невозможно создать ...». Перезагрузка телефона не помогает, и включение/выключение USB-соединения с ПК также не выполняется (они были упомянуты в других разделах stackoverflow).

Начало моей Android манифеста следующее:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    android:installLocation="preferExternal" 
    package="com.example.apps.iik" 
    android:versionCode="1" 
    android:versionName="1.0.0" > 

    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14" /> 

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

    <uses-feature android:glEsVersion="0x00020000" android:required="true" /> 
    <uses-feature android:name="android.hardware.screen.landscape" /> 

Это нормально, что установка его из APK не отображает разрешение WRITE_EXTERNAL_STORAGE? Может быть, приложение будет установлено без этого разрешения? Но, насколько я заметил с другими устройствами, он не распознает внешнее хранилище как «смонтированное» вообще.

+0

Является ли файл APK более 100 МБ? Не ответ, но если вы собираетесь загрузить это в Play Store, вы знаете, что они принимают только <50 МБ, и вам нужно сделать файл расширения для большего? –

+0

Да, это только наш отладочный APK. Он будет <50 МБ, и мы добавим остальную часть данных в APK расширения. Код обработки для этого еще не интегрирован в мое программное обеспечение. –

ответ

1

В Android 2.3, многие производители установили свои собственные пределы для низкого хранения (Moto устройство не позволит вам установить из магазина, если размер APK * 4> доступно для хранения.)

Если вы установили с помощью какого-то файлового менеджера или приложение установки приложения, оно, вероятно, не будет показывать никаких разрешений. Но вы всегда можете увидеть разрешения, перейдя в «Настройки»> «Приложения» и нажмите на свое приложение.

Кроме того, перед записью в файл сначала создайте его, выполнив file.createNewFile().

+0

Если быть точным, APK - 127 МБ, а SD-карта - 300 МБ свободного места. Считаете ли вы, что устройство отклоняет создание внешней папки хранилища приложения (с сообщением «невозможно создать ...»), потому что он проверяет, сколько свободного места есть? Скопированный APK - 127 МБ (и забыл удалить его после установки), установка занимает еще 127 МБ, поэтому после установки остается только 43 МБ. Может ли это быть причиной отказа от создания внешней папки хранилища? –

+0

46 МБ, чтобы быть точным, но не важно. –

+0

да, точно мой пункт. –

Смежные вопросы