[瀬戸のテーマ] Android 分享 - 另類 Apps to SD 方法

Apps to SD,是指把 Apps 轉到 SD Card 上的功能,包括 Apps 程式、Cache、Data 三部份。
由於 Android 系統還非常年幼,Apps 還是只可以安裝到內存(Internal Memory)中。
系統、廠方附屬程式已經佔用了一部份內存,餘下的除了安裝自己喜歡的 Apps,還要供給 Apps 及系統運作時的 Cache 和 Data,如果安裝大量(過百)程式的話,內存實在不足以應付。特別是使用了 HTC Sense 後,內存更顯不足。

傳統的 Apps to SD 方法,是附屬於 ROM 中。即是如果閣下想使用 Apps to SD 的話,便要找一個合適的 ROM 了(有小數穩定的 ROM 是不支援 Apps to SD)。
除了須要 ROM 的支援外,還要把 SD Card 格式化,分配成 Swap(非必要) + Ext2/3/4 + vFat 三個區域。
Swap 是供系統使用,一般是 32mb,也有 ROM 是不需要的。
Ext2/3/4 是 Linux 系統的伸延空間,像 Windows 的 D Drive 一樣,一般是設定成 500mb。
vFat 是 SD Card 的空間,使用者只可以使用這個地方。在 Mount SD Card 到 PC 上時,只會 Mount 這部份。
說到這裡,相信大部份新手已經一頭霧水,所以就此打住。


新的方法 – Apps to SD(vfat) + Dual Mount SD Card
SD Share capture
如上圖所示,手機上和電腦上同時可以使用 SD Card。
這全是一個價值 US$1.00 的 Paid App "SD Share" 的功勞。
SD Share 可以實現 Dual-Mount SD Card,令手機和電腦可以同時使用機子上的 SD Card。

capture39
就是左下的 Widget,非常方便。

全靠這個 App,新的 Apps to SD 方法才可以 100% 成立。
新的 Apps to SD 方法,不用格式化 SD Card,不用為 SD Card 分區,只要直接把 /data/app 複製到 SD Card 上,再把 /data/app 連結上就可以。
不過,這個方法也是要 root 權限的。
在 cmd 上,用 adb remount 後,在 shell 中執行:

cd /data
cp -a app /sdcard/
rm -r app
ln -s /sdcard/app /data/app
reboot
重啟後,SD Card 上多了一個 app 的資料夾,所有 Apps 也轉移到這裡,新安裝的 Apps 也會自動放到這裡,不過 Apps 的 Cache 和 Data 會保留在內存中,這是令系統運行暢通的必然方案。
好處:
    • 系統和程式的運作更暢順,因為內存多了,有足夠的空間存於 Cache。
    • 不受 Ext2/3/4 的大小限制。
    • 不用格式化 SD Card,也不用分區,也不用 ROM 的支援。
壞處:
    • 必須 Root 權限。
    • 由於系統會把整個 SD Card vFat 區 Mount 到 PC,所以 Mount SD Card to PC 後,會當機。
      不過,只要使用 SD Share 就可以完美地解決這個問題。
    • 部份 Apps 需要重新安裝後才能正常運作,但不用解除安裝。

留言

Unknown說…
請問這種app to sd的方法是否不用刷rom,只要有root就可以了?
另外 "在 cmd 上,用 adb remount 後,在 shell 中執行:"

不好意思,我是新手,不懂adb remount和shell,要怎麼用?謝謝
Parsue Choi說…
obaz.

如果真的不了解系統的高階操作,那先不要做,應該去了解學習一下。
手機是日常生活用品,甚至乎是必需品,若出問題的話吃虧的只有自己。

其實現在這個方法是弊多於優,還是建議去刷一個有 App2sd 的 ROM 比較實際和安全。

此網誌的熱門文章

[教學]一起來開發遊戲吧 - Unity C# 基礎

QUMARION

[教學]一起來開發遊戲吧(二) - Character Controller, Pool System