題:
除了可移植性之外,將應用程序存儲在外部存儲上是否還有其他優點(或缺點)?
ale
2010-12-02 09:46:22 UTC
view on stackexchange narkive permalink

如果小部件位於SD卡上,則它們將無法工作。

十 答案:
bbaja42
2010-12-02 15:11:47 UTC
view on stackexchange narkive permalink

直接取自 android開發者站點

  • ,只要將外部存儲設備安裝在設備上,對應用程序的性能就沒有影響。
    • .apk文件保存在外部存儲中,但所有專用用戶數據,數據庫,優化的.dex文件和提取的本機代碼都保存在內部設備內存中。
    • 唯一的容器,其中您的應用程序存儲使用隨機生成的密鑰加密,該密鑰只能由最初安裝該應用程序的設備解密。因此,安裝在SD卡上的應用程序只能在一個設備上使用。
    • 用戶可以通過系統設置將您的應用程序移動到內部存儲中。

也->不應安裝在外部存儲上的應用程序(有關 android開發人員網站的更多詳細信息)

  • 服務
  • 警報服務
  • 動態壁紙
  • 動態文件夾
  • 應用程序小工具
  • 客戶經理
  • 同步適配器
  • 設備管理員
  • 正在偵聽“啟動完成”的廣播接收器
Dunhamzzz
2011-05-27 13:18:15 UTC
view on stackexchange narkive permalink

將應用程序存儲在Android設備的外部存儲設備上是否有任何特殊的優點/缺點?有了Nexus S,我無法想到自己的優勢,因為無法移除存儲,而且內部存儲足以滿足我的需求。

我注意到在手機開機時向上,當我將所有應用程序移至USB存儲設備時,將所有應用程序註冊在菜單/主屏幕上非常緩慢。所有讀取操作實際上也會消耗大量的電池電量(儘管我認為這可能是一個錯誤)。

您沒有HTC電話,也沒有小型存儲空間帶來的所有問題。您沒有真正的理由將任何應用程序移至SD。
另請參見http://android.stackexchange.com/questions/3298/what-are-the-drawbacks-of-moving-an-app-to-sd-card
Chahk
2011-05-27 20:13:37 UTC
view on stackexchange narkive permalink

優勢:

  • 擴展內存中的可用空間以安裝更多應用。
    儘管該應用的某些部分仍然保留在內部存儲器(數據和設置)上,它仍然釋放了大量的空間。對於具有150MB可用空間的舊手機(G1,MT3G等),這是一個巨大的進步。對於這些設備的所有者,此優點本身勝過此方法帶來的任何缺點。

缺點:

  • 不能
    一種不言自明的方式:如果卸載SD卡以將其移除,則駐留在其上的應用也必須停止並進行um-mount。
  • 將這些應用程序移至SD卡時無法使用小部件或同步適配器。
    這是一種設計從以上觀點出發,存在局限性。由於需要根據需要刪除存儲在SD卡上的應用,因此掛接到您的帳戶設置中的小部件或應用(例如Skype,LinkedIn)會崩潰,無法輕鬆重啟。因此,谷歌要求這些應用保留在內部存儲器中,從而做出了讓步。即使您確實設法將它們強制插入SD卡(某些自定義ROM允許這樣做),您也將無法使用它們。
  • 更長的啟動和關閉時間系統安裝/卸載SD卡上存儲的所有應用程序時。
    移至SD卡的應用程序不會一目了然地存儲,以防止猖ramp的盜版行為。相反,Android會留出一些空間,並為您移動的每個應用程序創建一個虛擬分區。這意味著在初次啟動時,必須先安裝所有這些虛擬分區,然後才能訪問存儲在其中的應用程序。當您關閉手機時,​​情況也是如此-在進行其他關機過程之前,先卸載每個虛擬分區。根據安裝的應用程序的數量,這可能需要一分鐘甚至更長的時間,系統才能在啟動時“穩定”下來(關閉系統大約需要20秒鐘的額外時間。)不過,一旦發生這種情況,啟動這些應用程序就不需要
  • SD卡上的額外磨損。
    這一點值得商,,因為寫入SD卡(會導致磨損)不會經常發生。此外,這些天的SD卡價格便宜,足以不必擔心它們的使用壽命。
  • 應用需要更新才能支持此功能。
    能夠遷移到SD卡不會自動授予較舊的應用程序。開發人員必須更改其應用程序以支持此功能,然後通過Market(或他們使用的任何分發方法)發布更新。某些較舊的應用程序可能不再受支持,因此可能永遠無法獲得此功能。儘管某些自定義ROM可以覆蓋此問題,但是對於大多數運行常規固件的人來說,這是一個問題。

對於具有千兆位內部存儲器的較新設備,無需將應用程序移動到外部存儲,因為空間不是問題。但是,對於內存不足的手機,這是一種寶貴的工具,可以為所有者延長其保質期。

另一個缺點:從備份還原時,所有還原的應用程序都進入主內存-當主內存填滿時,這將導致還原失敗。
@David確實取決於您用於備份/還原目的的應用程序。更好的版本(例如,Titanium Backup)將為您提供還原位置的選項,並允許直接還原到SD卡或原始位置。
在SD卡上“佩戴”嗎?來吧,內部存儲上的磨損不多於或少。
Lie Ryan
2010-12-02 15:32:17 UTC
view on stackexchange narkive permalink

如果卸下SD卡或打開USB大容量存儲設備(因此可以從計算機進行訪問),則SD卡上安裝的應用程序將無法運行。這是我一直遇到的唯一缺點。

自從移至SD以來,我實際上已經看到了性能的提高。在轉移到SD之前,我已經用盡了內部存儲器(還剩下大約幾千字節),並且電話的延遲非常嚴重。由於移至SD(並因此釋放了內部存儲器中的某些空間),因此滯後現象消失了。

Traveling Tech Guy
2011-05-27 14:38:54 UTC
view on stackexchange narkive permalink

對於某些電話和設備(尤其是較舊的電話和設備),內部存儲空間非常有限。每個應用程序(及其數據文件)都佔用寶貴的空間。即我的Ideos有512MB,在我開始將應用程序“撤離”到SD卡之前已經快滿了。

另一個因素是能夠備份應用程序和數據,或將它們移動到另一台設備上。

除此之外,您會發現,與內部存儲器相比,應用程序從外部存儲器加載的速度更慢。如果您在主屏幕上有這些應用程序的快捷方式,這將非常明顯-您會在前30秒內看到一個通用的Android圖標,直到該應用程序位於卡上。

我發現切換到6級microSD(我手機隨附的默認2級)大大改善了這種情況。儘管如此,冷啟動後,我的手機仍需要20秒鐘才能“達到平衡”。

哦,默認班級2?太殘酷了
Peanut
2012-04-13 20:53:49 UTC
view on stackexchange narkive permalink

安全性和性能影響

存儲在外部存儲中的應用程序資源是只讀的,因此在SD卡上加載或啟動應用程序時沒有性能問題。

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

該帖子由“從事此功能的工程師Suchi Amalapurapu”撰寫。該功能是將應用程序放入SD卡的功能。

為什麼外部存儲為只讀,為什麼啟動應用程序的速度並不慢?我本以為閱讀性能對此更重要。
Kendor
2012-04-16 02:40:22 UTC
view on stackexchange narkive permalink

根據我的經驗,幾乎沒有或沒有任何明顯的性能問題。使用Nexus One管理內存時,我感到非常煩惱。我使用S2E進行遷移,但沒有回頭。不必為安裝新應用而刪除應用程序,真是太神奇了。

Kunal Raj
2013-10-05 07:43:29 UTC
view on stackexchange narkive permalink

我認為將應用程序從內部遷移到外部不會影響性能。

但是從外部存儲(而不是內部存儲)打開應用程序確實要花費額外的幾毫秒。 里程因設備而異,具體取決於速度,Android版本等

Oliver
2014-07-28 01:54:02 UTC
view on stackexchange narkive permalink

具有不斷開放的服務的應用程序,例如Viber,WhatsApp,Facebook Messenger等,如果其中有很多正在運行,則可能會大大降低ui的速度,因此最好保持應用程序提供恆定的服務在手機記憶庫中,因為相比之下影響並不明顯。

如果它一直在運行,那麼它將被加載到內存中,並且在初始加載時間之後的安裝位置無關緊要。
user156421
2016-03-16 21:13:56 UTC
view on stackexchange narkive permalink

永遠不要將應用程序移動到外部SD卡中。這將使您的手機滯後更多,並且手機重啟的速度將比平常慢。您甚至可能每天或每週必須重啟一次電話。處理這些應用程序擁有的所有信息將需要更長的時間。我是憑經驗說話的。

您能否提供一些難以信任或難以驗證的信息,以便我們以技術方式評估您的答案? (提示:基準測試)


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...