標籤:拷貝 set oem article style core 開啟 恢複 aos
光說不練非好漢,如今就讓我們開啟自己編譯的系統測試!事實上懂得這些過程。就知道了Android手機系統定製的整個流程。現有的智能機都是使用Google的android開源的系統然後加入一些自己的東西。就成為公司的系統!
TaintDroid(Android)虛擬機器上測試
我們前面講了怎樣編譯,編譯的成功的標識就是產生system.img檔案,例如以:
sdk替換
拷貝system.img鏡像檔案,替換掉sdk中的鏡像。例如以:
對於建立AVD非常easy,這裡幾張圖就能夠看懂。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
點擊start就能夠啟動該虛擬機器。
Api一定是調用18的,由於該介面是我們編譯產生的system.img
執行TaintDroid!這裡我對該應用進行了改動,使其能夠組建記錄檔檔案!
已經測試成功。
TaintDroid(Android)在真機上測試在真機上比較複雜,須要下載驅動。我測試的手機是Galaxy Nexus i9250所下面載例如以下驅動
% cd ~/tdroid/tdroid-4.3_r1% wget https://dl.google.com/dl/android/aosp/broadcom-maguro-jwr66y-5fa7715b.tgz% tar -zxvf broadcom-maguro-jwr66y-5fa7715b.tgz% ./extract-broadcom-maguro.sh # (view the license and then type "I ACCEPT")...% wget https://dl.google.com/dl/android/aosp/imgtec-maguro-jwr66y-b0a4a1ef.tgz% tar -zxvf imgtec-maguro-jwr66y-b0a4a1ef.tgz % ./extract-imgtec-maguro.sh # (view the license and then type "I ACCEPT")...% wget https://dl.google.com/dl/android/aosp/invensense-maguro-jwr66y-e0d2e531.tgz% tar -zxvf invensense-maguro-jwr66y-e0d2e531.tgz% ./extract-invensense-maguro.sh # (view the license and then type "I ACCEPT")...% wget https://dl.google.com/dl/android/aosp/nxp-maguro-jwr66y-d8ac2804.tgz% tar -zxvf nxp-maguro-jwr66y-d8ac2804.tgz% ./extract-nxp-maguro.sh # (view the license and then type "I ACCEPT")...% wget https://dl.google.com/dl/android/aosp/samsung-maguro-jwr66y-fb8f93b6.tgz% tar -zxvf samsung-maguro-jwr66y-fb8f93b6.tgz% ./extract-samsung-maguro.sh # (view the license and then type "I ACCEPT")...% wget https://dl.google.com/dl/android/aosp/widevine-maguro-jwr66y-c49927ce.tgz% tar -zxvf widevine-maguro-jwr66y-c49927ce.tgz% ./extract-widevine-maguro.sh # (view the license and then type "I ACCEPT")
建立buildspec.mk檔案並輸入下面內容!
% cd ~/tdroid/tdroid-4.3_r1% edit/create buildspec.mk # Enable core taint tracking logic (always add this)WITH_TAINT_TRACKING := true# Enable taint tracking for ODEX files (always add this)WITH_TAINT_ODEX := true# Enable taint tracking in the "fast" (aka ASM) interpreter (recommended)WITH_TAINT_FAST := true# Enable additional output for tracking JNI usage (not recommended)#TAINT_JNI_LOG := true# Enable byte-granularity tracking for IPC parcelsWITH_TAINT_BYTE_PARCEL := true
開始進行編譯!開啟build/target/product/core.mk加入內容
PRODUCT_PACKAGES += BasicDreams ... voip-common TaintDroidNotify
又一次編譯
% . build/envsetup.sh% lunch 12% make clean% make -j4
開始進行刷機首先對手機fastboot狀態調成UNCLOSE
% fastboot oem unlock
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
進行刷機!
% cd out/target/product/maguro% fastboot flash boot boot.img% fastboot flash system system.img% fastboot flash userdata userdata.img
例如以:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
測試結果
至此。實驗最終完畢了!總結看著圖片非常easy,操作起來相當麻煩!
編譯錯誤,刷機錯誤。反正一點一點調吧!整個過程走下來,至少還是能學點東西的!!
(驅動一定要符合手機,否則刷機的開始也是板磚的開始。變板之後再想恢複,對於google手機比較難。假設SD卡外置就相當簡單,可我實驗的機子都是內建的SD卡~~~)祝大家學習愉快!
。
TaintDroid下載先行編譯(五):TaintDroid(Android)系統編譯虛擬機器和真機測試