Как известно Android версии 2.2 и выше позволяет устанавливать приложения на карту памяти. Однако, для этого нужно, чтобы сам разработчик разрешил проделывать подобное со своим творением. Далеко не все разработчики такие добрые, некоторые из них либо забывают об этом, либо просто забивают. А может и вовсе не знают о такой возможности. Я хочу научить вас, как исправлять это дурацкое недоразумение.
Вот как это делается из-под Windows на примере офисного приложения Picsel Smart Office (если пользуетесь другим способом редактирования apk, то переходите сразу к пунктам 6-9):
  1. Скачиваем и устанавливаем java-машину (ссылка).
  2. Скачиваем отсюда первые два файла. Оба файла нужно распаковать в папку WINDOWS (распаковываются WinRar'ом)
  3. Создаем в корне диска C:\ папку 1111 и размещаем там файл .apk, который хотим научить устанавливаться на SD-карту. Переименовываем его в 1111.apk, для удобства.
  4. Пуск - Выполнить - CMD - ОК (В Win7 и Vista путь выглюдит иначе: Пуск - Все Программы - Стандартные - Командная строка - ОК).
  5. Набираем в консоли латиницей код разборки .apk и ждем окончания процесса:
    Код
    C:
    cd c:\
    apktool d 1111\1111.apk 1111\1111
  6. Заходим в папку C:\1111\1111 и открываем AndroidManifest.xml любым текстовым редактором (можно Блокнотом)
  7. Находим примерно такую строку (у каждой программы свое значение параметров, но сами параметры везде одинаковы):
    Код
    <manifest android:versionCode="6342" android:versionName="1.7.0" package="com.picsel.tgv.app.ue2fileviewer"
  8. Заменяем эту строку на следующую:
    Код
    <manifest android:versionCode="6342" android:versionName="1.7.0" android:installLocation="auto" package="com.picsel.tgv.app.ue2fileviewer"

    Что мы сделали? Добавили параметр android:installLocation="auto" между номером версии и названием пакета.
  9. Сохраняем файл.
  10. Набираем в консоли латиницей код сборки .apk (вы ведь еще не закрывали консоль, нет?), ждем окончания процесса:
    Код
    apktool b 1111\1111

    В папке C:\1111\1111\ появятся новые папки: build и dist. Заходим в dist.
  11. Подписываем приложение. Я использую для этого скрипт Auto-sign Нажмите для просмотра прикрепленного файла
    Как пользоваться скриптом? Распакуйте содержимое внутренней папки архива "Auto-sign" в dist, переименуйте 1111.apk в update.zip, запустите sign.bat, дождитесь окончания процесса, переименуйте update_signed.zip в xxxx.apk (где xxxx - любое название, придумайте его сами).
    Ну вот и все, теперь можно ставить программу (или игру) на телефон.
Примечания:
За информацию Спасибо! Alelug с 4Пда