- Android游戲開發技術實戰詳解
- 褚尚軍 張加春編著
- 356字
- 2018-12-30 05:33:10
1.5 Android模擬器
我們都知道開發程序時需要調試,只有經過調試后,才能知道我們的程序是否能正確運行。作為一款手機系統,我們怎樣在計算機平臺上調試Android程序呢?不用擔心,谷歌為我們提供了模擬器來解決這個問題。所謂模擬器,就是指在計算機上模擬Android系統,可以用這個模擬器來調試并運行開發的Android程序。開發人員不需要一個真實的Android手機,只通過計算機即可模擬運行手機。
1.5.1 Android模擬器簡介
對于Android程序的開發者來說,模擬器的推出給開發者在開發上和測試上帶來了很大的便利。無論在Windows下還是在Linux下,Android模擬器都可以順利運行,并且官方提供了Eclipse插件,可將模擬器集成到Eclipse的IDE環境中。當然,你也可以從命令行啟動Android模擬器。
獲取模擬器的方法非常簡單,我們既可以從官方站點(http://developer.Android.com/)免費下載單獨的模擬器,也可以先下載Android SDK,解壓后在其SDK根目錄找到一個名為“tools”的文件夾,此文件夾下包含了完整的模擬器和一些非常有用的工具。
Android SDK中包含的模擬器的功能非常齊全,電話本、通話等功能都可正常使用(當然你沒辦法真的從這里打電話),甚至其內置的瀏覽器和Maps都可以聯網。用戶可以使用鍵盤輸入、鼠標單擊模擬器按鍵輸入,甚至還可以使用鼠標單擊、拖動屏幕進行操縱。
1.5.2 模擬器和真機究竟有何區別
當然Android模擬器不能完全替代真機,具體來說有如下差異。
· 模擬器不支持呼叫和接聽實際來電;但可以通過控制臺模擬電話呼叫(呼入和呼出);
· 模擬器不支持USB連接;
· 模擬器不支持相機/視頻捕捉;
· 模擬器不支持音頻輸入(捕捉),但支持輸出(重放);
· 模擬器不支持擴展耳機;
· 模擬器不能確定連接狀態;
· 模擬器不能確定電池電量水平和交流充電狀態;
· 模擬器不能確定SD卡的插入/彈出;
· 模擬器不支持藍牙。
1.5.3 創建Android虛擬設備
Android專門為開發人員提供了一個虛擬設備,這樣開發人員不必使用真機即可實現對程序的調試。這個虛擬設備被集成在了Eclipse中,接下來將講解在Eclipse中創建虛擬設備的具體方法。
step 1 單擊Eclipse菜單中啟動“Android SDK and AVD Manager”界面的圖標。
step 2 在彈出的“Android SDK and AVD Manager”界面的左側導航中選擇“Virtual devices”選項,如圖1-46所示。

圖1-46 “Android SDK and AVD Manager”界面
在“Virtual devices”列表中列出了當前已經安裝的AVD版本,我們可以通過右側的按鈕來創建、刪除或修改AVD。主要按鈕的具體說明如下所示。
:創建新的AVD,單擊此按鈕在彈出的界面中可以創建一個新AVD,如圖1-47所示。

圖1-47 新建AVD界面
:修改已經存在的AVD。
:刪除已經存在的AVD。
:啟動一個AVD模擬器。
注意:我們可以在CMD窗口中創建或刪除AVD,例如,可以按照如下CMD命令創建一個AVD:
android create avd --name <your_avd_name> --target <targetID>
其中,“your_avd_name”是需要創建的AVD的名字,CMD窗口如圖1-48所示。

圖1-48 CMD窗口
1.5.4 模擬器總結
要正確地啟動Android模擬器,必須先創建一個AVD(Android Virtual Device,虛擬設備),讀者可以利用AVD創建基于不同版本的模擬器。在此對Android模擬器的參數進行簡單總結,其參數格式如下:
emulator [option] [-qemu args]
其中,option選項的具體說明如表1-2所示。
表1-2 模擬器選項

(續表)

(續表)

- 物聯網(IoT)基礎:網絡技術+協議+用例
- 從區塊鏈到Web3:構建未來互聯網生態
- Hands-On Full Stack Development with Spring Boot 2 and React(Second Edition)
- Drush User’s Guide
- 區塊鏈輕松上手:原理、源碼、搭建與應用
- Microsoft Dynamics CRM 2011 Applications(MB2-868) Certification Guide
- Microservice Patterns and Best Practices
- INSTANT KineticJS Starter
- 面向5G-Advanced的關鍵技術
- 物聯網與智能家居
- Learning Windows 8 Game Development
- 6G無線網絡空口關鍵技術
- 深入理解OpenStack Neutron
- Practical Web Penetration Testing
- Selenium WebDriver 3 Practical Guide