Android中AVD與鏡像文件
1、創(chuàng)建AVD
在android sdk 1.5 版本以后的開發(fā)中,必須至少創(chuàng)建一個AVD,每個AVD模擬一套虛擬設(shè)備來運行Android應(yīng)用程序。無論是在eclipse下或者命令行下創(chuàng)建新的 avd,系統(tǒng)會在系統(tǒng)默認文件路徑下自動創(chuàng)建一個.android 文件夾,所創(chuàng)建的有關(guān)avd的配置信息則被保存在該.android目錄下,如:
C:\Documents and Settings\Administrator\.android
1)命令行方式創(chuàng)建AVD
命令格式:android create avd -n [avd名稱] -t [api level]
進入Android SDK目錄下的tools子目錄,運行:
:android create avd –name adk_1_5_version --target 2
在創(chuàng)建avd文件得第二步,控制臺提示“是否自定義自己得設(shè)備”,默認選項是"no",如果輸入 "y",接下來可以一步步根據(jù)提示,定制自己得模擬器性能參數(shù)。
這里t代表target目標(biāo)平臺的API Level,我們可以使用android list targets來查看這里t的可選參數(shù),
進入Android SDK目錄下的tools子目錄,運行:android list targets
2)開發(fā)工具創(chuàng)建AVD
1、在Eclipse中。選擇Windows > Android SDK and AVD Manager
2、點擊左側(cè)面板的Virtual Devices,再右側(cè)點擊New
3、填入Name,選擇Target的API,SD Card大小任意,Skin隨便選,Hardware目前保持默認值
4、點擊Create AVD即可完成創(chuàng)建AVD
注意:如果你點擊左側(cè)面板的Virtual Devices,再右側(cè)點擊New ,而target下拉列表沒有可選項時,這時候點擊左側(cè)面板的Available Packages,在右側(cè)勾選
https://dl-ssl.google.com/android/repository/repository.xml,
然后點擊Install Selected按鈕,接下來就是按提示做就行了。
2、創(chuàng)建SDCard鏡像文件
進入Android SDK目錄下的tools子目錄,運行
mksdcard -l sdcard 512M e:\sdcard.img
這樣就創(chuàng)建了一個512M的SD卡鏡像文件:查看E盤,E盤下會有一個sdcard.img 文件。
3、命令行下運行AVD時加載sdcard
進入Android SDK目錄下的tools子目錄,運行
emulator -avd MyAVD -sdcard android.img
如果不想每次都加-sdcard $sdcard_path,有兩個辦法
解決辦法一:可以把sdcard.img 復(fù)制到C:\Documents and Settings\Administrator\.android\avd\下對應(yīng)的AVD目錄下
解決辦法二:修改配置文件,C:\Documents and Settings\Administrator\.android\avd\AVD_NAME.avd\,打開config.ini,加入以下行:sdcard.path=你的SD卡路徑
4、AVD路徑設(shè)置
前面提到,不管用Eclipse還是從命令行創(chuàng)建Android Emulator時,相應(yīng)的文件是被放置到 “C:\Documents and Settings\Administrator\.android“ 下面。如果想改變AVD的路徑設(shè)置,也有2個辦法
解決辦法一:
新添加一個環(huán)境變量,名字為 "ANDROID_SDK_HOME”,然后把變量值改為你想將".android”文件夾(AVD信息)所放置的位置
解決辦法二:
修改配置文件中的路徑,比如我的AVD名稱是MyAVD, 打開
C:\Documents and Settings\Administrator\.android\avd目錄中的文件MyAVD.ini文件,找到
target=android-5path
=C:\Documents and Settings\Administrator\.android\avd\MyAVD.avd
修改其路徑即可
若遇到ERROR: unknown virtual device name 這樣的問題一般是由于AVD文件路徑引用錯誤造成的。