android編譯模擬器
❶ 如何編譯android x86模擬器
首先你需要設置一下emulator工具的目錄之類的
要在.bashrc中新增環境變數,如下
ANDROID_PRODUCT_OUT=~/android/out/target/proct/generic
ANDROID_PRODUCT_OUT_bin=~/android/out/host/linux-x86/bin
這里是設置你的輸出文件的位置和bin工具目錄
然後在命令行輸入:
export path=${path}:${ANDROID_PRODUCT_OUT_bin}:${ANDROID_PRODUCT_OUT};
上面是導入了相關的配置,然後使之生效。
source ~/.bashrc
接著切換到輸出的system文件夾
cd ~/android/out/target/proct/generic
然後來創建模擬器
emulator -system system.img -data userdata.img -ramdisk ramdisk.img
如果你運氣夠好的話,也許現在已經在運行了,不過我運氣明顯不夠好。
提示一:
emulator: ERROR: You did not specify a virtual device name, and the system
directory could not be found.
If you are an Android sdk user, please use 『@<name>』 or 『-avd <name>』
to start a given virtual device (see -help-avd for details).
Otherwise, follow the instructions in -help-disk-images to start the emulator
既然人家提示了,那就按照步驟走吧,輸入命令:
emulator -help-avd
接著提示如下:
use 『-avd <name>』 to start the emulator program with a given Android
Virtual Device (a.k.a. AVD), where <name> must correspond to the name
of one of the existing AVDs available on your host machine.
See -help-virtual-device to learn how to create/list/manage AVDs.
As a special convenience, using 『@<name>』 is equivalent to using
『-avd <name>』.
跟著提示繼續走,輸入命令:
emulator -help-virtual-device
又是提示了:
An Android Virtual Device (AVD) models a single virtual
device running the Android platform that has, at least, its own
kernel, system image and data partition.
Only one emulator process can run a given AVD at a time, but
you can create several AVDs and run them concurrently.
You can invoke a given AVD at startup using either 『-avd <name>』
or 『@<name>』, both forms being equivalent. For example, to launch
the AVD named 『foo』, type:
emulator @foo
The 『android』 helper tool can be used to manage virtual devices.
For example:
android create avd -n <name> -t 1 # creates a new virtual device.
android list avd # list all virtual devices available.
Try 『android –help』 for more commands.
Each AVD really corresponds to a content directory which stores
persistent and writable disk images as well as configuration files.
Each AVD must be created against an existing sdk platform or add-on.
For more information on this topic, see -help-sdk-images.
延伸1):
Android x86模擬器Intel Atom x86 System Image配置與使用方法
大家現在開發使用的Android 模擬器模擬的是 arm 的體系結構(arm-eabi),因此模擬器並不是運行在x86上而是模擬的arm,所以我們調試程序的時候經常感覺到非常慢,大部分開發者應該都深有體會。
針對這種情況,前段時間intel推出了支持x86的Android模擬器,這將大大提高啟動速度和程序的運行速度,這將允許Android模擬器能夠以原始速度(真機運行速度)運行在使用intel x86處理器的電腦中,各位開發者有福了,下面將為大家展示使用方法。
一、首先下載intel提供的 intel® Hardware Accelerated Execution Manager 1.0.1(R2)
requirement:
1. requires the Android* SDK to be installed (version 17 or higher). SDK17或者以上
2.intel® processor with support for VT-x, EM64T, and Execute Disable (XD) bit functionality intel的cpu:並支持VT-X(虛擬化技術)、可擴展64位、Execute Disable bit。(均需要保證在bios中開啟Enable)
3. At least 1 gb of available ram 1G以上內存,否則安裝不了
滿足硬體和軟體要求之後,就可以開始安裝了,一直下一步至安裝成功。途中有個地方選擇分配給HAXM內存大小,一般默認就好,分太多會拖慢整機速度。
安裝成功後命令行輸入sc query intelhaxm,查看運行狀態: state is: 「4 RUNNING」 ,即代表安裝成功。需要更改分配內存,重新運行一下安裝程序選擇change即可修改。
還可以使用以下指令手動開啟和關閉:
Stop: sc stop intelhaxm
Start:
sc start intelhaxm
滿足軟硬體條件,若提示如下Error:but intel Execute Disable bit (XD) is not turned on......
(需要開啟系統數據執行保護功能dep,下午糾結了好久才查到。官網原文:Windows* hosts may need to enable dep (Data Execution Prevention) in addition to intel XD)
命令行使用指令:bcdedit.exe /set nx optin 打開即可,需要重啟電腦
二、下載Intel Atom x86 System Image
1. 從SDK Manager下載:打開SDK Manager,展開至Android2.3.3(API10)(注意:目前只有2.3.3和4.0.3(Ice Cream Sandwich)有x86的Image),需要和2.3.3的SDK Platform配合使用。
2.使用avd Manager創建一個新的avd: Hardware Property裡面選擇gpu emulation yes 還有 Keyboard support yes
3.開始使用飛速的模擬器吧,各種爽歪歪
好的工具可以更有效率的開發APP,讓我們從此告別那龜速的模擬器吧
❷ Android 4.0 framework源碼修改編譯,模擬器運行不起來,求助
依賴簽名匹配失敗.
如此看來只有兩種解決辦法:
1.用make
snod命令重新編譯system.img,這樣編譯出來的system中的架包之間沒有依賴
2.修改DexPrepare.cpp中的驗證代碼,直接跳過簽名驗證
❸ android編譯出來的源碼能直接運行模擬器嗎
這很容易理解,你這程序編譯時是沒有問題的,但運行時 TextView textView = (TextView)findViewById(R.id.textView1); 這行變數的定義調用了方法。 而以上Andriod模擬是面向事件驅動的,你定義在類的變數中,在運行時沒有一個事件觸發其執行,如果你想在類初始化是開始時執行這一語句,你可以將其放在類的構造方法中。
❹ 如何預編譯 Android 模擬器專用內核
Android源碼編譯之後生成的是ramdisk.img、system.img和userdata.img。而內核源碼編譯完成之後生成的是ZImage。在一般情況下Android源碼是不帶有內核源碼的,但是帶有一個鏡像,這樣在編譯完Android源碼之後就可以模擬器啟動了,如果要更換系統的內核,此時將高版本的內核源碼進行編譯生成ZImage然後替換Android系統的的鏡像。這樣使用模擬器啟動之後就可以查看內核是否已經被刷新。
❺ android模擬器不能編譯代碼
首先android模擬器不會編譯程序,負責編譯程序的是Android SDK與java虛擬機。就您的問題有兩種可能 1 模擬環境出現問題,這是經常出現的問題,建議從新構建一個android模擬器 2 編譯程序出現問題 從新安裝Android SDK 3 jdk出現問題 看看jdk能否正常運行
❻ 如何再Ubuntu Android模擬器中運行自己編譯好的ROM
編譯內核和編譯rom一樣的原理
搭建環境
進行make就可以
到藍狐技術社區網站查看回答詳情>>
❼ 請問:用android源碼編譯出來的模擬器怎樣添加SD卡不是eclipse。
在eclipse中創建android模擬器,然後再eclipse中的view中可以打開模擬器的SD卡,不知道符合你的意思沒
❽ 如何在模擬器上運行自己編譯的android
Eclipse中對項目右鍵 Run As-->Android Application-->選擇對應模擬器
❾ 如何根據Android源代碼編譯出可以在模擬器
網頁鏈接可以參考下這個教程
模擬器的代碼