|
對于擁有內(nèi)置sd卡與支持外插擴(kuò)展sd卡的機(jī)型,內(nèi)置sd卡一般是從fat分區(qū)掛載到/mnt/sdcard目錄下。而擴(kuò)展的sd卡,則是掛載到/mnt/sdcard/external_sd目錄。
系統(tǒng)一般是根據(jù)路徑mnt/sdcard識別sdcard(而不管該目錄是哪個分區(qū)),并把該路徑設(shè)為程序的默認(rèn)數(shù)據(jù)存儲路徑(有些軟件指定把數(shù)據(jù)存于外插sd卡則是根據(jù)系統(tǒng)提供的mnt/sdcard/external_sd路徑識別)。
有時候,感覺下載東西較多,或安裝的軟件存的數(shù)據(jù)過多,就會顯得內(nèi)置存儲不夠用。這時候,可以把大容量8G、16G等外插sd卡掛載到/mnt/sdcard目錄,并把內(nèi)置sd卡掛載到/mnt/sdcard/external_sd目錄。這樣,根據(jù)系統(tǒng)的這種設(shè)置,軟件默認(rèn)存于內(nèi)置存儲的數(shù)據(jù)將實際保存到外插大容量卡上�;蛘�,你所下載的文件也會根據(jù)這種設(shè)置保存到sd卡。
4.0及以上版本,共有兩種方法。4.0 以下不知道是否支持方法二。
修改數(shù)據(jù)掛載路徑:
一:
注意,接下來說到的操作具有危險性。請不要輕易嘗試!
首先,你的手機(jī)必須已root方可操作系統(tǒng)文件。下載安裝re管理器。
1. re管理器進(jìn)入到/system/etc目錄,找到vold.fstab,掛載system分區(qū)讀寫。
這時先要做個備份。不管理你用的什么軟件來修改文件,最好做個備份�?梢园言撐募䦶�(fù)制一份到上一個文件夾system目錄下,方便出錯還原。re管理器會自動備份并后綴.bak,這時,你可以通過修改后綴還原。需要注意的是,復(fù)制到sd卡等于沒用,萬一出錯,你會連sd卡目錄都進(jìn)不了,不管是外置的還是內(nèi)置的。所以,你務(wù)必要小心。
2. 長按文件,選擇文本編輯器打開。
以下是我的機(jī)型的vold.fstab文件:有些機(jī)型可能不一樣,詳細(xì)還需要你摸索。
———————————————————————————————————————————
## Vold 2.0 Generic fstab
## - San Mehat (san@android.com)
##
#######################
## Regular device mount
##
## Format: dev_mount <label> <mount_point> <part> <sysfs_path1...>
## label - Label for the volume
## mount_point - Where the volume will be mounted
## part - Partition # (1 based), or 'auto' for first usable partition.
## <sysfs_path> - List of sysfs paths to source devices
######################
## Example of a standard sdcard mount for the emulator / Dream
# Mounts the first usable partition of the specified device
dev_mount sdcard /mnt/sdcard emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_host
dev_mount external_sdcard /mnt/sdcard/external_sd auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.1/mmc_host
## Example of a dual card setup
# dev_mount left_sdcard /mnt/sdcard1 auto /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_host/mmc0
# dev_mount right_sdcard /mnt/sdcard2 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.2/mmc_host/mmc2
## Example of specifying a specific partition for mounts
# dev_mount sdcard /mnt/sdcard 2 /devices/platform/goldfish_mmc.0 /devices/platform/msm_sdcc.2/mmc_host/mmc1
———————————————————————————————————————————
注意到vold.fstab文件中,即上面兩行紅色字體部分,它們就是sd卡掛載目錄的具體設(shè)置,其余大部分是注釋(outo 表示掛載外插sd卡第一主分區(qū),可以不改動。)。把其中的藍(lán)色字體部分互換保存即可。但需要注意空格不能多也不能少,也不能修改其它地方,/符號不能少也不能用反方向的。在修改過程不能使用回車換行,只能在原文件的基礎(chǔ)上修改字母。輸入法要切換到英文輸入,使用英文字符。
下面是改好的:
dev_mount sdcard /mnt/sdcard/external_sd emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_host
dev_mount external_sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.1/mmc_host
這種修改方法其實就是修改分區(qū)的掛載目錄,以讓系統(tǒng)把mnt/sdcard這個路徑識別成默認(rèn)的路徑,并提供給應(yīng)用程序。
還有個類似的文件vold.fstab.nand,改不改都無所謂。
修改完畢確認(rèn)無誤后,保存,重啟手機(jī)。
需要注意的是,修改后,你不能把sd卡取出并開機(jī)使用。如果你這么做,系統(tǒng)將會連內(nèi)置存儲都識別不到,手機(jī)無法正常使用。
———————————————————————————————————————————
二:
鑒于方法一的危險性,推薦一個簡單安全的方法,無需root權(quán)限。即通過改變系統(tǒng)默認(rèn)數(shù)據(jù)存儲路徑實現(xiàn)將數(shù)據(jù)保存到外插sd卡。
1.打開手機(jī)撥號器,即“電話”
2.輸入*#08#
3.選擇“sd卡”即可。
不管你是用方法一或者二,修改數(shù)據(jù)默認(rèn)路徑后,原先應(yīng)用程序所保存在sd卡或外置sd卡上的數(shù)據(jù)將無法再正常讀取。可能導(dǎo)致系統(tǒng)變化或者應(yīng)用程序讀取不到之前的數(shù)據(jù),造成數(shù)據(jù)丟失的假象。
解決方法:首先把應(yīng)用及系統(tǒng)在 內(nèi)外存儲卡 產(chǎn)生的文件及文件夾做個備份,并交換內(nèi)置sd卡與外插sd卡的應(yīng)用程序數(shù)據(jù)。
即是把外插sd卡的相應(yīng)文件復(fù)制到內(nèi)置sd中,把內(nèi)置sd卡的相應(yīng)文件復(fù)制到外插sd卡。
【完】
|
|