爲何Android虛擬機比iOS和WP7的虛擬機要慢不少呢?緣由以下:java
1. Android 模擬器模擬的是 ARM 的體系結構(arm-eabi),而 iOS 和 WP7 的模擬器的目標體系結構都是 x86 的,另外 iOS 的模擬器中運行的 App 也是編譯爲 x86 的。這樣一來 Android 模擬器須要作一些額外的二進制翻譯工做。
2. Android 模擬器用的是 QEMU 的全系統模式(full system),也就說它模擬時須要啓動整個 GUEST 系統,初始化各類模擬設備。相反的,iOS 和 WP7 的模擬器只是 user-mode 的模擬。
3. 在 Android 模擬器之中還須要跑一個 Dalvik VM,用以執行 Android 應用的 bytecodes。android
綜上所述,慢的一個主要緣由就是虛擬機不是跑在x86上而是模擬的ARM,有沒有辦法弄個x86的Android呢?數據庫
答案是固然有———開源項目Android-x86,這個牛B的開源項目將Android移植到了x86平臺,系統運行的時候再也不須要模擬成ARM,這樣就能直接將Android裝在PC或虛擬機上流暢的運行了。
萬事俱備,只欠東風了,下面我就來說一下我使用Android-X86和VirtualBox打造手機開發模擬器的整個流程eclipse
1:先下載Android-x86系統鏡像文件 http://www.android-x86.org/download post
這裏要提一點,若是你要下最新的4.0,請下載android-x86-4.0-eeepc-20111209.iso 這個版本,其餘的都有bug,開機後會不斷的crash,注意是09性能
2.在VirtualBox上建立虛擬機優化
操做系統選擇Linux,版本選擇Linux 2.6google
建立虛擬硬盤操作系統
選擇第一就可 VDI插件
接下來:
建立好之後就ok了
建立好之後還須要一些配置:
若是但願聽到聲音,則這樣設置:
關鍵的網卡設置:
設置好之後就能夠點啓動進行android的安裝了
選擇install,建議先選第一個進入android系統,若是進去不報錯再安裝,這樣保險一點
Create/Modify partitions
選擇 NEW 來創建磁盤
屬性請選擇Primary
默認便可
選擇Bootable
只管打yes就行,雖然s看不到
退出之後就能看到你剛纔分的區了,而後把android裝到這個區裏就能夠了
一路yes
選擇sd分配sd
而後重啓就好了
在設置裏把啓動順序調整一下,若是不想費勁,把光驅裏的iso路徑去了就能夠了,由於默認是先從光盤加載的
搞定這些直接點擊 開始
選擇進入系統
這樣你的鼠標就能進入到模擬器中了
模擬器和你真機鼠標切換的快捷鍵在這裏設置
這裏我選擇了左 ctrl
這樣就ok了
可是有朋友可能要問,若是我調試程序,怎麼讓eclipse自動打包到咱們的x86虛擬機上呢?
進入android系統的全部應用裏
有了ip就好辦了,不少人是否是和我同樣想到了adb connect
done,搞定,進到eclipse的DDM裏面
這樣就能夠開發了,速度如飛啊,不管打包仍是運行!