Окрім портативності, чи є інші переваги (або недоліки) для зберігання програм на зовнішньому сховищі?


26

Чи є якісь переваги / недоліки для зберігання програм на зовнішньому сховищі пристрою Android? Оскільки у мене Nexus S, я не можу придумати собі переваг, оскільки я не можу видалити сховище, також внутрішнього накопичувача більш ніж достатньо для моїх потреб.

Я помітив, що після запуску телефону, коли я переміщував усі додатки на USB-накопичувач, було досить мляво реєструвати всі програми в меню / домашніх екранах.

Я також десь читав, що встановлення шпалер із фотографії, яка зберігалася на зовнішній пам'яті, насправді виснажила зовсім небагато батареї з усіма показаннями (хоча, я думаю, це була помилка).


2
У вас немає телефону HTC, у вас немає всіх проблем із крихітним внутрішнім сховищем. Немає реальної причини для переміщення будь-яких додатків на SD.
GAThrawn

Відповіді:


25

Переваги:

  • Розширити доступний простір у внутрішній пам'яті для встановлення додаткових додатків.
    Хоча деякі частини програми все ще залишаються у внутрішній пам'яті (дані та налаштування), вона все одно звільняє значну кількість місця. Для старих телефонів із 150 МБ вільного місця (G1, MT3G тощо) це величезне вдосконалення. Для власників цих пристроїв ця перевага лише переважає будь-які недоліки, які приносить цей метод.

Недоліки:

  • Не можна використовувати додатки, переміщені на SD-карту, якщо її відключено.
    Вигляд із пояснень: якщо ви видалите SD-карту для видалення, додатки, які перебувають на ній, потрібно зупинити та встановити гром, щоб уникнути збоїв та втрати даних, якщо ви видалите картку.
  • Неможливо використовувати віджети чи адаптери синхронізації під час переміщення цих програм на SD-карту.
    Це обмеження дизайну, яке стоїть з вищезазначеної точки. Оскільки програми, що зберігаються на SD-картах, потрібно мати можливість видаляти на вимогу, такі речі, як віджети або додатки, які приєднані до налаштувань вашого акаунта (наприклад, Skype, LinkedIn), завершаться збою, і це не буде легким способом їх перезапуску. Тож Google пішов на компроміс, вимагаючи, щоб ці програми залишалися у внутрішній пам'яті. Навіть якщо вам вдасться примусити їх на SD-карту (деякі спеціальні ROM дозволяють це), ви просто не зможете їх використовувати.
  • Більш тривалий час завантаження та завершення роботи, коли система монтує / знімає всі програми, що зберігаються на SD-картці.
    Програми, переміщені на SD-карту, не зберігаються на очах, щоб запобігти бурхливому піратству. Натомість Android відводить простір і створює віртуальний розділ для кожного додатка, який ви переміщуєте. Це означає, що при початковому завантаженні всі ці віртуальні розділи потрібно монтувати до того, як можна отримати доступ до програм, що зберігаються на них. Це ж справедливо, коли ви вимикаєте трубку - кожен віртуальний розділ не змонтований до того, як можуть відбутися інші процеси вимкнення. Залежно від кількості встановлених додатків, це може зайняти додаткову хвилину або навіть довше, щоб система «стабілізувалася» після завантаження (і приблизно 20 додаткових секунд для вимкнення.) Після цього запуск цих програм не займе. не довше, ніж у внутрішній пам'яті.
  • Додатковий знос SD-карти.
    Цей момент є дискусійним, оскільки запис на SD-карту (що спричиняє знос) трапляється не так часто. А крім того, карти SD сьогодні є дешевими, щоб не турбуватися про свій життєвий час.
  • Додатки потребують оновлення для підтримки цієї функціональності.
    Можливість переміщення на SD-карту не надається автоматично старішим програмам. Розробники повинні змінити свої додатки, щоб підтримувати цю функцію та опублікувати оновлення через Market (або який би метод розповсюдження вони не використовували.) Деякі старі програми більше не можуть підтримуватися, і тому вони ніколи не зможуть отримати цю функцію. Хоча деякі користувальницькі ROM можуть це змінити, для більшості людей, які працюють з біржовим програмним забезпеченням, це проблема.

Для нових пристроїв з гігабайти внутрішніх пам'яток переміщення програм на зовнішнє сховище не потрібно, оскільки простір не є проблемою. Однак для телефонів з низькою пам’яттю це безцінний інструмент, який продовжує термін їх зберігання для власників.


Ще один недолік: при відновленні з резервних копій усі відновлені програми переходять у основну пам'ять - що призводить до відмови відновлення, коли основна пам'ять заповнюється.
Май

1
@David Це дійсно залежить від програми, яку ви використовуєте для цілей резервного копіювання / відновлення. Кращі (наприклад, резервна копія Titanium) дадуть вам можливість розташування відновлення та дозволять відновити безпосередньо SD-карту, або вихідне місце.
Чах

"Носити" на sd-картці? Зазвичай, не більше або менше, ніж "зношення" на внутрішньому зберіганні.
LarryBud

31

взяті прямо з сайту розробників Android

  • Це не впливає на продуктивність програми, якщо зовнішній накопичувач встановлений на пристрої.
    • Файл .apk зберігається на зовнішньому сховищі, але всі приватні користувацькі дані, бази даних, оптимізовані файли .dex та витягнутий власний код зберігаються у внутрішній пам'яті пристрою.
    • Унікальний контейнер, у якому зберігається ваша програма, шифрується випадковим чином згенерованим ключем, який можна розшифрувати лише тим пристроєм, який його спочатку встановив. Таким чином, додаток, встановлений на SD-картці, працює лише для одного пристрою.
    • Користувач може перемістити вашу програму до внутрішнього сховища за допомогою системних налаштувань.

Також -> Програми, які НЕ повинні встановлюватися на зовнішньому сховищі (детальніше на веб-сайті для розробників Android )

  • Послуги
  • Служби сигналізації
  • Живі шпалери
  • Живі папки
  • Віджети додатків
  • Менеджери облікових записів
  • Синхронізатори
  • Адміністратори пристроїв
  • Трансляція трансляцій, які слухають "завершено завантаження"

17

Віджети не працюватимуть, якщо вони знаходяться на SD-карті.


13

Програми, встановлені на SD-картці, не можуть запускатися, якщо ви виймете SD-карту або ввімкнено USB-накопичувач (це доступ до неї можна з комп'ютера) Це єдиний недолік, який я відчував.

Я фактично бачив покращення продуктивності з моменту переходу на SD; перед тим, як перейти на SD, я вичерпав внутрішню пам'ять (близько кількох кілобайт) і телефон досить сильно відстає. З моменту переходу на SD (і тому звільнення деякого місця у внутрішній пам'яті), і відставання зникає.


7

Для деяких телефонів і пристроїв (особливо для старих) внутрішня пам’ять досить обмежена. Кожна програма (і це файли даних) займає дорогоцінний простір. Тобто, у моїх ідей є 512 Мб, і він був майже повний, перш ніж я почав "евакуювати" програми на SD-карту.

Іншим фактором є можливість резервного копіювання ваших додатків і даних або переміщення їх на інший пристрій.

Крім цього, ви правильно зауважуєте, що програми завантажуються повільніше із зовнішнього сховища порівняно з внутрішнім. Це дуже добре видно, якщо у вас на головному екрані є ярлики цих програм - ви побачите загальний значок Android протягом перших 30 секунд, поки додаток не знайдеться на картці.

Я виявив, що перехід на microSD 6 класу (у мене був клас 2 за замовчуванням, який постачався разом із телефоном) значно покращив ситуацію. І все-таки моєму телефону потрібно приблизно 20 секунд, щоб «вирівняти» після холодного старту.


О, клас 2 за замовчуванням? Це суворо.
Метью читайте

5

Наслідки безпеки та продуктивності

Ресурси програми, що зберігаються на зовнішньому сховищі, доступні лише для читання, а отже, не виникає проблем із завантаженням або запуском програм на SD-карту.

Від: http://android-developers.blogspot.co.uk/2010/07/apps-on-sd-card-details.html

Повідомлення написано "Сучі Амалапурапу, інженером, який працював над цією функцією". Особливістю є можливість розміщення програм на SD-картці.


1
Чому зовнішнє сховище лише для читання, причина запуску програми не повільніше? Я б припустив, що для цього важливіша ефективність читання.
Ерік

2

На моєму досвіді, було мало або якась помітна проблема з роботою. У мене був дуже прикрий досвід управління пам’яттю за допомогою мого Nexus One. Я використовував S2E для міграції і не оглядався. Дивно, що не можна видаляти додатки просто для установки нових.


-2

Я думаю, що переміщення програм із внутрішнього на зовнішнє не впливає на продуктивність.

Але це додасть додаткові кілька мілісекунд, щоб відкрити додаток із зовнішнього сховища замість внутрішнього. пробіг буде залежати від пристрою до пристрою, залежно від швидкості, версії Android тощо


-2

Додатки, у яких постійно відкритий сервіс, як-от Viber, WhatsApp, месенджер Facebook, etcetera, можуть значно уповільнити користувальницький інтерфейс, якщо таких працює багато, тому бажано тримати додатки з постійним обслуговуванням по телефону пам'ять, оскільки вплив там непомітний для порівняння.


Якщо він постійно працює, він завантажується в пам'ять, і не має значення, де він встановлений після цього початкового часу завантаження.
Матвій

-3

Ніколи не переміщуйте програми на зовнішню SD-карту. Це змусить ваш телефон відставати більше, а телефон перезавантажиться повільніше, ніж зазвичай. Можливо, вам доведеться навіть перезавантажувати телефон щодня або раз на тиждень. Обробка всієї інформації, що є у цих додатків, займе більше часу. Я кажу з досвіду.


1
Чи можете ви надати нам щось важко довірити чи підтвердити, що ми можемо використати для оцінки вашої відповіді технічно? (Підказка: бенчмаркінг)
Firelord
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.