Android模擬器中磁碟類比SD卡 && Android系統中載入SD卡

來源:互聯網
上載者:User

    在Andorid開發中經常遇到與SD卡有關的調試,比如MP3檔案、圖片檔案等。在使用模擬器開發時,可以通過硬碟來類比SD卡。具體做法是:

(1)建立一個SD卡鏡像檔案:開啟cmd,進入到SDK目錄TOOLS目錄下,輸入如下命令:mksdcard
64M sdcard.img。該命令會在目前的目錄下產生一個sdcard.img檔案,該檔案就是Android模擬器的SD卡鏡像檔案。

(2)啟動帶sdcard的Android模擬器。在CMD中輸入:emulator
–avd   sdk_1_5_version –sdcard sdcard.img。該指令啟動一個帶SD卡的並以特定AVD為平台的模擬器。這樣會看到tools目錄下就會動態產生一個sdcard.img.lock的檔案夾,當關閉模擬器時又會消失。注意:不要關閉這個Dos視窗,不然連模擬器也會關掉,後面一步也不能執行。

(3)添加檔案到SD卡。在cmd中,命令如下:adb
push test.mp3 sdcard/test.mp3,可把目前的目錄下存在的檔案拷貝到SD卡中。過程會顯示耗時和檔案大小及速度。

(4)查看SD卡中的拷貝檔案有多個方法。其一是直接在模擬器中點擊MENU的音樂播放可看到考入的歌曲,或者DEVTOOLS->MEIDA
SCANNER檢測SD卡的識別。另一種方法是點擊 ECLIPSE的WINDOWS的DDMS視圖,裡面有FILE EXPLORER,點擊SD CARD就可以看見裡面的內容,同時在該介面下也可以移入和移出檔案。在該種情況下偶爾會碰到SDCARD的存取權限不夠,不過仍然可以通過CMD命令方式訪問到。

             

 

(6)以上是在DOS模式下啟動帶SD的模擬器,如果是要從ECLIPSE中啟動帶SD的模擬器,需要在各個工程的回合組態中添加一個命令列。比如:RUN
CONFIGUATIONS->TARGET-> Aditional Emulator Command Line Options下面添加啟動參數:-sdcard 
E:/ToolBackUp/JAVA/android-sdk-windows-1.5_r3/tools/sdcard.img。那麼再運行後就是帶SD的模擬器。

             

==============================================================================================================

     關於android系統開發sdcard的載入移植,主要有如下工作:

(1)核心驅動開發,完成後每次插入和拔出sdcard系統都會有相關的資訊顯示,而且sdcard可以手動掛載。

(2)android的sdcard掛載主要是vold來完成,vold的原始碼在alps\system\vold\目錄下,編譯成alps\out\target\product\$ProjectName\system\bin\vold。在init.rc檔案中有vold系統服務,確保android系統開機後vold有正常運行。

(3)添加vold的設定檔,先查看alps\system\vold\main.cpp檔案中的process_config函數,發現設定檔路徑如下:
/etc/vold.fstab,這是一個組建檔案,原始的檔案在alps\mediatek\config\$ProjectName\vold.fstab。

(4)修改vold.fstab的內容。寫法如下,實際各個定義的含義請參考檔案上端的說明:
dev_mount       <label>     <mount_point>     <part>       <sysfs_path1...>
dev_mount命令    標籤          掛載點        子分區               裝置在sysfs檔案系統下的路徑(可多個)
按照上面的要求和我的平台的實際情況,在vold.fstab中添加如下內容:

dev_mount sdcard /mnt/sdcard auto /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.1/mmc_host/mmc0

(5)完成後發現android系統中sdcard可用了,總結一下sdcard部分很簡單,主要是找到sdcard裝置對應的sysfs檔案系統路徑。

 

參考原文:http://blog.csdn.net/jiajie961/article/details/6035369

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.