1. 程式人生 > >Android之SD卡 模擬器中SD卡的建立和檔案匯入匯出

Android之SD卡 模擬器中SD卡的建立和檔案匯入匯出

篇章一:SD卡的建立:

一 SDCard介紹

1.SDCard可以把他看看做是行動硬碟或U盤,也就是手機的記憶體卡

2.SDCard的建立是在eclipse建立模擬器時隨同建立,也可以使用dos命令建立

二 SDCard的使用

在程式中訪問SDCard的時候需要申請訪問的SDCard許可權,即是在AndroidManifest.xml中加入SDCard的許可權

<!--允許應用程式寫到外部儲存器-->

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<!--

允許裝入和解除安裝檔案系統的移動儲存 -->

<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

有兩種方式來建立SD卡。但基本上都是在建立Android模擬器之初,就需要來對模擬器的SD卡進行建立。

方法一:系統建立虛擬SD卡

可以自定義一個大小,由系統來完成該模擬器虛擬SD卡的建立。

建立完成後,啟動模擬器,可以通過開啟eclipse的DDMS->File Explorer 看到如下目錄結構:

這就是建立的SD卡檔案夾了。

方法二:手工建立虛擬SD卡

可以通過Android的Tools來建立SD卡並匯入進來。

1、 開啟dos介面,並轉換到你的sdk安裝包的tools目錄下,

本人的目錄如下:H:\android-sdk-windows\tools

2、 建立SD卡。在命令列中輸入:

Mksdcard  1024M  D:\log\sdcard.img

說明:

1)1024M即建立的SD卡的大小,可以根據自己需要來輸入;

2)D:\log\sdcard.img 是所設定的SD卡存放路徑,可以根據自己的需要來改變,但路徑中不能有空格出現

3)執行該命令後,需要稍等一段時間,因為電腦正在建立所設定的SD卡,直到重新出現DOS介面中又彈出一行命令,這說明我們所要的SD卡已經建立成功了。不同的機器可能等待的時間不一樣。

3、 建立模擬器,並以該SD卡來建立。

4、 建立完成後,啟動該模擬器。

5、 同樣開啟Eclipse的DDMS->File Explorer 可以看到如下的目錄結構

至此,證明已經安裝了SD卡。

篇章二:向SD卡里面上傳檔案

向SD卡里面上傳檔案的方法許多,可以藉助豌豆莢手機精靈91手機助手。

下面介紹一種非使用工具的上傳方式。

開啟Eclipse的DDMS->File Explorer 可以看到如下的目錄結構

在圖右上角有兩個小手機按鈕,就是傳輸檔案按鈕,用它來實現檔案的傳入和傳出。

,pull  a  file from  the  device, 把手機裡的檔案匯出

,push  a  file onto  the device, 把檔案匯入到手機裡面。

篇章三:常見問題

1、Failed to push selection: Invalid argument:

出現該異常,多半是檔案所在的目錄裡面有中文或者檔案的名字含有中文導致的。可以換個檔名試試。

 還有就是觀察自己的操作許可權是否不夠,如果是,那就是可以的。

如果SD卡是在Eclipse裡面系統自動建立的, 試著重啟一下IDE。

2、Failed to push the item(s)

出現這個異常是因為,傳輸超時造成的,可以修改。

開啟windows->Preference->android->DDMS

把ADB connection time out項的超時時間改大點。

3、將大檔案上傳到虛擬SD卡失敗

之所以大檔案上傳會失敗,究其原因,可能是SD卡的空間不足。經過測試發現:通過方法一建立的SD卡,由於是系統建立的,即使在建立時將SD卡的Size設定為1024MiB,在模擬器建立成功後,SD卡的實際大小可能沒有1024M,理由是上傳300M左右的檔案失敗(可能這個理由有點兒牽強);而通過方法二建立的SD卡,由於是手工指定的SD卡大小為1024M的img檔案,在模擬器建立成功後,可能成功上傳300M左右的檔案。

4、SD卡映象檔案拷貝到其他機器執行失敗

在別的機器上面建立的SD卡映象檔案,拷貝到另一臺機器上面是不可用的。因為這個映象檔案是以本地機器的實體地址為依據,劃分出了指定大小的硬碟空間作為模擬器的儲存空間的。所以實體地址在不同的電腦上有可能會出現實體地址的衝突,故是不可用的。


感謝作者