Когда приложение перемещается на SD-карту, где данные приложения хранятся на SD-карте?

Мой телефон (Sony E4g, работающий под управлением Android 4.4.4) предлагает возможность частичного переноса некоторых установленных приложений на (съемную) SD-карту. Я использую эту функцию регулярно, и теоретически довольно большая часть приложений уже перенесена на нее. Моя проблема, однако, в том, что я не могу найти их нигде на SD-карте, и на карте также нет отдельных разделов. Итак, мой вопрос: где именно эти перемещенные приложения хранятся во внешнем хранилище в KitKat? Спасибо.

Ответы (2)

ОК, после некоторых исследований кажется, что все приложения, перемещенные на внешнюю SD-карту, находятся в виртуальной файловой системе /mnt/asec, которая, в свою очередь, является уровнем абстракции над зашифрованными файлами, хранящимися в скрытой папке .android_secure на доб. SD Card.

Как правило, вы не можете видеть файлы данных приложения во внутреннем хранилище, если у вас нет root — я предполагаю, что это то же самое с файлами данных во внешнем хранилище. Быстрая проверка с помощью одного из моих приложений показывает, что даже после перемещения его на SD-карту данные все еще находятся в /data/data, без символической ссылки или чего-то еще. Конечно, это не означает, что файлов нет на SD-карте — возможно, сама система Android просто «видит» файлы как на внутренней памяти, но на самом деле они находятся на внешней. Кроме того, кажется, что ничего нет в /storage/sdcard1/Android/data/app.package.name(или/external_sd/Android/data/app.package.name), однако я предполагаю, что именно там они хранятся. Тем не менее, я понимаю вашу точку зрения, и я хотел бы сам точно знать, где они хранятся, но я не могу точно уместить все это в комментарий. Некоторые приложения используют корень и второй раздел для полного перемещения данных приложения и создания «ссылок» (в частности, символических ссылок) между тем, где хранятся фактические файлы, библиотеки, файлы APK и т. д., и тем, где они обычно должны быть. Это делается на втором разделе, так как существует большой риск того, что первый раздел будет размонтирован, когда вы подключите свое устройство к компьютеру в режиме MTP (протокол передачи мультимедиа), и если он будет размонтирован, он отобразит большое количество приложений. бесполезный.

Если у вас есть большое количество приложений, перемещенных на внешнее хранилище, убедитесь, что карта microSD всегда подключена и что вы ничего не удаляете с нее. Если это произойдет, вы можете столкнуться с такими проблемами, как недоступность всего приложения, которое все же будет занимать место во внутренней памяти.

Спасибо за ответ. Мой телефон фактически перезагружается, как только я пытаюсь отключить внешнюю SD-карту (в меню настроек). Одно замечание к вашему ответу: подключение в режиме MTP не приводит к размонтированию какого-либо раздела.
Действительно? Link2SD заявляет в своем описании, что Android размонтирует первый раздел, когда вы подключаете свое устройство к запоминающему устройству ПК. Я так понимаю это МТП...
О да, ваш ответ кажется правильным. Логично, что они там хранятся
Нет, MTP не является запоминающим устройством. Проблема, которую вы описали, была серьезной причиной для Android, чтобы перейти от использования массового хранилища к MTP. См. android.stackexchange.com/a/56094/12442 для более подробной информации.