Как включить перенос приложения на SD-карту (и поддержка андроида еще <2.2)?

Как я могу включить мое приложение для перемещения на SD-карту?

-это название, чтобы вопрос был более уместным для ответов.

Solutions Collecting From Web of "Как включить перенос приложения на SD-карту (и поддержка андроида еще <2.2)?"

Вы должны установить android:installLocation в файле AndroidManifest.xml ( preferExternal или auto значения).

NB! Для этой цели сборки должен быть API уровня 8 (Android 2.2).

Вы также можете установить android:installLocation и по-прежнему нацеливаться на Android 1.6.

В вашем AndroidManifest.xml вам нужно вставить минимальную версию SDK, как это

  <uses-sdk android:minSdkVersion="4" /> 

Это гарантирует, что ваше приложение работает только на Android 1.6 и выше. Это, конечно, вызовет ошибку компилятора в вашем проекте проекта Eclipse. Это потому, что 1.6 SDK не знает об android:installLocation . Чтобы исправить это, щелкните правой кнопкой мыши по проекту в пространстве проекта Eclipse (при условии, что вы используете Eclipse, не знаете, как он работает в других IDE или с помощью Ant-сборки), затем перейдите к опции «Android» и выберите «Проект Build Target "на Android 2.2 .

Это приведет к удалению ошибки, показанной выше, и вы можете компилировать / экспортировать файл APK. Таким образом, APK будет работать на Android 1.6-2.1, как обычно, и на Android 2.2 он позволит вам использовать SD-карту для установки и перемещения приложения.

Однако Слово предупреждения: Это может быть источником несовместимости, если вы не будете осторожны. Поэтому требуется расширенная фаза тестирования, потому что вы не заметите сразу, если используете функцию 2.x, потому что Eclipse не будет показывать ее как ошибку, потому что она использует SDK Android 2.2 в качестве ссылки.

Таким образом, у вас в основном есть 2 варианта: 1. Выполняйте описанные выше шаги, когда вы экспортируете / подписываете свое приложение (то есть перед тем, как опубликовать эту новую версию), а затем установите его или 2. Активно протестируйте свои приложения на 1.6. Устройство или эмулятор и проверьте, не сработает ли он в любой момент, потому что приложение использует функцию, доступную только на более новой ОС, чем 1,6.

В зависимости от сложности вашего приложения, первый, как правило, более безопасный, однако несет риск, что вы забыли сделать это один раз. Это привело бы к тому, что для этого обновления у пользователя не будет возможности установить его на SD-карту. У Choice 2 есть проблема, что если вы не будете тестировать все достаточно хорошо, приложение может внезапно заставить ForceClose, когда устройства Android 1.6 попытаются вызывать функции / функции, доступные только в 2.x.

Следуйте приведенной ниже процедуре для телефонов Android.

  1. Скопируйте Android SDK в свою систему.
  2. Подключите свой мобильный телефон к системе и включите опцию USB-отладки на своем мобильном устройстве.
  3. Откройте cmd-строку и перейдите на путь android sdk\platform-tools
  4. Запустите команду adb shell pm setInstallLocation 2
  5. Перейдите к настройкам на мобильном устройстве и установите флажок «Переместить на SD-карту» или нет.

В этом руководстве содержатся четкие инструкции по перемещению приложения на SD-карту

http://mobile.tutsplus.com/tutorials/android/move-to-sd-card/

Также он имеет указатель на то, когда использовать функцию SD-карты http://developer.android.com/guide/topics/data/install-location.html#ShouldNot