Я хотел бы знать, есть ли способ сказать Android устанавливать приложения на карту micro SD по умолчанию вместо того, чтобы сначала загружать приложения во внутреннюю память, а затем перемещать их на SD-карту вручную.
Спасибо
В этой статье на HowtoGeek описывается возможный способ использования adb :
adb shell pm setInstallLocation 2
adb shell pm set-install-location 2
)Эта команда установит цель установки устройства по умолчанию на вашу SDCard. Это не обязательно означает, что все будет установлено там: туда будут помещены только приложения, поддерживающие это, и разработчики могут «отменить» это в манифесте своих приложений, если они сочтут это необходимым. Из связанной ссылки API :
Изменяет место установки по умолчанию. Значения местоположения:
0
: Авто — позволить системе выбрать наилучшее местоположение.1
: Internal — установить на внутреннюю память устройства.2
: External — установить на внешний носитель.Примечание. Это предназначено только для отладки; использование этого может привести к сбою приложений и другому нежелательному поведению.
Для получения более подробной информации об ADB и о том, как вы можете, например, установить его минимальную версию на свой компьютер (без излишней установки всего SDK), вы можете взглянуть на adb tag-wiki .
Обновление: чтобы избежать путаницы с ответом t0mm13b , некоторая ясность в процессе установки:
/data/local
, то есть в ваше внутреннее хранилище . Вы не можете изменить это..apk
он будет установлен автоматически. Куда, зависит от нескольких вещей:
android:installLocation
свойство в своих приложениях Manifest
, приложение будет установлено во внутреннюю историю. Точка, другого выбора нет (см. Справочник по API ).android:installLocation
параметра установлено значение preferExternal
, и доступно внешнее хранилище, оно будет отправлено туда.auto
, это снова зависит:
Это нельзя изменить! Так работает Андроид.
Все загрузки из Google Play идут во внутреннюю файловую систему, затем из:
Если кнопка « Переместить на SDCard» отключена или выделена серым цветом, это, вероятно, препятствует работе приложения, например, их собственных виджетов на главном экране.
Также см. этот ответ на соответствующей боковой панели справа от этой страницы. :)
adb shell pm setInstallLocation 2
(например, SDCard), как описано здесь ?android:installLocation="auto"
Не видел adb shell pm setInstallLocation 2
, предположительно вы указываете имя пакета в таком случае...Manifest
написано "авто", то оно туда и идет. Если Manifest
написано что-то другое, кроме "авто", оно идет туда, куда Manifest
говорит. См. также: API ref , также здесь для команды pm set-install-location
(новый синтаксис).android:installLocation
- на самом деле позволяет переместить на SDCard из настроек управления приложением ... некоторые разработчики не указывают это и отображают кнопку как отключенную, но я уступаю - никогда не видел, чтобы команда adb делала это./data/local
, а оттуда устанавливается приложение. Но в зависимости от настроек и манифеста он устанавливается либо во внутренний, либо непосредственно во внешний оттуда. // Если вам нравится обсуждать это подробно: вы помните наш паб, кхм, чат? :)Установите «Эмулятор терминала для Android» на свой мобильный и откройте
$ su
# pm get-install-location
0[auto]
# pm set-install-location 2
# pm get-install-location
2[external]
Перейдите в «Управление приложениями», затем выберите вкладку «Все» и найдите «Google Play Store». Нажмите на него, а затем нажмите кнопку «Удалить обновления». После этого перейдите в Play Store, все приложения будут установлены на вашу SD-карту. Это то, что я сделал на своем QMobile A110 (Android 4.2).
Дело в том, что вы можете изменить каталог установки по умолчанию, если ваш телефон рутирован. Загрузите Lucky Patcher и нажмите на инструменты, там вы можете найти опцию для изменения каталога установки по умолчанию. ** Не делайте этого для Android 4 или выше, иначе это может привести к необратимым изменениям. **
GATrawn
GATrawn
Иззи