Czy oprócz przenośności istnieją inne zalety (lub wady) przechowywania aplikacji w pamięci zewnętrznej?


26

Czy są jakieś szczególne zalety / wady przechowywania aplikacji na zewnętrznej pamięci urządzenia z Androidem? Ponieważ mam Nexusa S, nie mogę wymyślić dla mnie korzyści, ponieważ nie mogę usunąć pamięci, również pamięć wewnętrzna jest więcej niż wystarczająca na moje potrzeby.

Zauważyłem, że po uruchomieniu telefonu, kiedy wszystkie moje aplikacje zostały przeniesione do pamięci USB, rejestrowanie wszystkich aplikacji na menu / ekranach głównych było dość powolne.

Czytałem też gdzieś, że posiadanie zestawu tapet ze zdjęcia zapisanego w pamięci zewnętrznej faktycznie wyczerpało sporo baterii przy wszystkich odczytach (chociaż myślę, że to mógł być błąd).


2
Nie masz telefonu HTC, nie masz wszystkich problemów z małą pamięcią wewnętrzną. Nie ma prawdziwego powodu, aby przenieść jakiekolwiek aplikacje na SD.
GAThrawn

Odpowiedzi:


25

Zalety:

  • Zwiększ ilość dostępnego miejsca w pamięci wewnętrznej, aby zainstalować więcej aplikacji.
    Chociaż niektóre części aplikacji nadal pozostają w pamięci wewnętrznej (dane i ustawienia), nadal zwalnia znaczną ilość miejsca. W przypadku starszych telefonów z 150 MB wolnego miejsca (G1, MT3G itp.) Jest to ogromna poprawa. Dla właścicieli tych urządzeń sama ta przewaga przewyższa wszelkie wady związane z tą metodą.

Niedogodności:

  • Nie można używać aplikacji przeniesionych na kartę SD, jeśli jest ona odmontowana.
    To oczywiste: jeśli odłączysz kartę SD w celu jej usunięcia, aplikacje, które się na niej znajdują, muszą zostać zatrzymane i zamontowane, aby zapobiec awariom i utracie danych, jeśli wyjmiesz kartę.
  • Brak możliwości korzystania z widżetów lub synchronizacji adapterów po przeniesieniu tych aplikacji na kartę SD.
    Jest to ograniczenie projektowe, które obowiązuje od powyższego punktu. Ponieważ aplikacje przechowywane na kartach SD muszą być możliwe do usunięcia na żądanie, awarie lub aplikacje, które podpinają się do ustawień konta (np. Skype, LinkedIn), ulegają awarii, bez łatwego sposobu ich ponownego uruchomienia. Dlatego Google dokonał kompromisu, wymagając od tych aplikacji pozostawania w pamięci wewnętrznej. Nawet jeśli uda ci się wymusić ich na karcie SD (niektóre niestandardowe ROM-y na to pozwalają), po prostu nie będziesz mógł ich użyć.
  • Dłuższy czas uruchamiania i wyłączania, gdy system montuje / odinstalowuje wszystkie aplikacje zapisane na karcie SD.
    Aplikacje przeniesione na kartę SD nie są przechowywane na widoku, aby zapobiec szerzącemu się piractwu. Zamiast tego Android przeznacza trochę miejsca i tworzy wirtualną partycję dla każdej przenoszonej aplikacji. Oznacza to, że przy pierwszym uruchomieniu wszystkie wirtualne partycje muszą zostać zamontowane, aby można było uzyskać dostęp do aplikacji na nich zapisanych. To samo dotyczy wyłączenia telefonu - każda partycja wirtualna jest odłączana, zanim mogą nastąpić inne procesy zamykania. W zależności od liczby zainstalowanych aplikacji może to zająć dodatkową minutę lub nawet dłużej, aby system mógł się „ustabilizować” po uruchomieniu (i około 20 dodatkowych sekund na zamknięcie). Po tym jednak, uruchomienie tych aplikacji nie zajmuje dłużej niż w pamięci wewnętrznej.
  • Dodatkowe zużycie karty SD.
    Ta kwestia jest dyskusyjna, ponieważ zapisywanie na karcie SD (która powoduje zużycie) nie zdarza się tak często. Poza tym obecnie karty SD są wystarczająco tanie, aby nie martwić się o ich życie.
  • Aplikacje wymagają aktualizacji w celu obsługi tej funkcji.
    Możliwość przeniesienia na kartę SD nie jest automatycznie przyznawana starszym aplikacjom. Programiści muszą zmienić swoje aplikacje, aby obsługiwać tę funkcję i wydać aktualizację za pośrednictwem usługi Market (lub jakiejkolwiek innej metody dystrybucji, której używają). Niektóre starsze aplikacje mogą nie być już obsługiwane, a więc mogą nigdy nie uzyskać tej funkcji. Chociaż niektóre niestandardowe ROM-y mogą to zmienić, dla większości osób, które używają oprogramowania układowego, jest to problem.

W przypadku nowszych urządzeń z gigabajtami pamięci wewnętrznej przenoszenie aplikacji do pamięci zewnętrznej nie jest konieczne, ponieważ miejsce nie stanowi problemu. Jednak w przypadku telefonów z małą ilością pamięci jest to nieocenione narzędzie, które wydłuża ich okres przydatności dla właścicieli.


Kolejna wada: podczas przywracania z kopii zapasowych wszystkie przywrócone aplikacje przechodzą do pamięci głównej - co powoduje niepowodzenie przywracania po zapełnieniu pamięci głównej.
Mei

1
@David To naprawdę zależy od aplikacji, której używasz do tworzenia kopii zapasowych / przywracania. Lepsze (na przykład Titanium Backup) daje opcję przywracania lokalizacji i pozwala przywrócić bezpośrednio na karcie SD lub do pierwotnej lokalizacji.
Chahk

„Nosić” na karcie SD? No dalej, nie więcej niż „zużycie” w pamięci wewnętrznej.
LarryBud,

31

pochodzi bezpośrednio ze strony programisty Androida

  • Nie ma to wpływu na wydajność aplikacji, dopóki pamięć zewnętrzna jest zamontowana na urządzeniu.
    • Plik .apk jest zapisywany w pamięci zewnętrznej, ale wszystkie prywatne dane użytkowników, bazy danych, zoptymalizowane pliki .dex i wyodrębniony kod macierzysty są zapisywane w wewnętrznej pamięci urządzenia.
    • Unikalny pojemnik, w którym przechowywana jest aplikacja, jest szyfrowany losowo generowanym kluczem, który może być odszyfrowany tylko przez urządzenie, które go pierwotnie zainstalowało. Dlatego aplikacja zainstalowana na karcie SD działa tylko dla jednego urządzenia.
    • Użytkownik może przenieść aplikację do pamięci wewnętrznej poprzez ustawienia systemowe.

Również -> Aplikacje, których NIE należy instalować w pamięci zewnętrznej (więcej informacji na stronie programisty Androida )

  • Usługi
  • Usługi alarmowe
  • Animowane tapety
  • Foldery na żywo
  • Widżety aplikacji
  • Menadżerowie konta
  • Synchronizuj adaptery
  • Administratorów urządzeń
  • Odbiorniki rozgłoszeniowe nasłuchują „rozruch zakończony”

17

Widżety nie będą działać, jeśli znajdują się na karcie SD.


13

Aplikacje zainstalowane na karcie SD nie będą działać, jeśli wyjmiesz kartę SD lub włączysz pamięć masową USB (aby można było uzyskać do niej dostęp z komputera). To jedyna wada, której doświadczam.

Rzeczywiście widziałem poprawę wydajności od czasu przejścia na SD; zanim przeniosłem się do SD, wyczerpałem pamięć wewnętrzną (pozostało około kilku kilobajtów) i telefon dość mocno się spóźnia. Ponieważ przejście do SD (a zatem zwolnienie miejsca w pamięci wewnętrznej), a opóźnienie znika.


7

W przypadku niektórych telefonów i urządzeń (zwłaszcza starszych) pamięć wewnętrzna jest dość ograniczona. Każda aplikacja (i jej pliki danych) zajmuje cenne miejsce. To znaczy moje pomysły mają 512 MB i były prawie pełne, zanim zacząłem „ewakuować” aplikacje na kartę SD.

Innym czynnikiem jest możliwość tworzenia kopii zapasowych aplikacji i danych lub przenoszenia ich na inne urządzenie.

Poza tym masz rację, że aplikacje ładują się wolniej z pamięci zewnętrznej w porównaniu do pamięci wewnętrznej. Jest to bardzo widoczne, jeśli masz skróty tych aplikacji na ekranie głównym - zobaczysz ogólną ikonę Androida przez pierwsze 30 sekund, aż aplikacja znajdzie się na karcie.

Przekonałem się, że przejście na kartę microSD klasy 6 (miałem domyślną klasę 2 dostarczoną z telefonem) znacznie poprawiło sytuację. Mimo to mój telefon zajmuje około 20 sekund, aby „wyrównać” po zimnym starcie.


Ooh, domyślna klasa 2? To trudne.
Mateusz

5

Wpływ na bezpieczeństwo i wydajność

Zasoby aplikacji przechowywane w pamięci zewnętrznej są tylko do odczytu i dlatego nie występują problemy z wydajnością podczas ładowania lub uruchamiania aplikacji na karcie SD.

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

Post został napisany przez „Suchi Amalapurapu, inżyniera, który pracował nad tą funkcją”. Cechą jest możliwość umieszczania aplikacji na karcie SD.


1
Dlaczego pamięć zewnętrzna jest tylko do odczytu, dlaczego uruchamianie aplikacji nie jest wolniejsze? Zakładałbym, że ważniejsze jest przy tym czytanie.
Erik,

2

Z mojego doświadczenia wynika, że ​​występował niewielki lub zauważalny problem z wydajnością. Miałem naprawdę irytujące doświadczenie w zarządzaniu pamięcią z Nexusem One. Użyłem S2E do migracji i nie oglądałem się za siebie. Niesamowite, że nie trzeba usuwać aplikacji tylko po to, aby zainstalować nowe.


-2

Myślę, że przenoszenie aplikacji z wewnętrznych na zewnętrzne nie wpływa na wydajność.

Ale dodaje kilka dodatkowych milisekund, aby otworzyć aplikację z pamięci zewnętrznej zamiast w pamięci wewnętrznej. przebieg będzie się różnić w zależności od urządzenia, w zależności od prędkości, wersji Androida itp


-2

Aplikacje, które mają stale otwartą usługę, takie jak na przykład Viber, WhatsApp, Facebook messenger itp., Mogą znacznie spowolnić interfejs, jeśli jest ich dużo, więc lepiej jest utrzymywać aplikacje z ciągłą obsługą przez telefon pamięć, ponieważ wpływ nie jest zauważalny przez porównanie.


Jeśli jest ciągle uruchomiony, to jest ładowany do pamięci i nie ma znaczenia, gdzie jest zainstalowany po tym początkowym czasie ładowania.
Mateusz

-3

Nigdy nie przenoś aplikacji na zewnętrzną kartę SD. Sprawi, że Twój telefon będzie bardziej opóźniony, a telefon uruchomi się ponownie wolniej niż zwykle. Być może będziesz musiał zrestartować telefon codziennie lub raz w tygodniu. Przetwarzanie wszystkich informacji zawartych w tych aplikacjach potrwa dłużej. Mówię z doświadczenia.


1
Czy możesz podać nam coś, co trudno jest zaufać, lub zweryfikować, którego możemy użyć do oceny Twojej odpowiedzi w sposób techniczny? (Wskazówka: test porównawczy)
Firelord
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.