課程答疑和新課資訊:QQ交流群:422901085進行課程討論
FrameWork實戰課系列視頻鏈接:https://edu.csdn.net/combo/detail/2123
或者點擊這里
專題博客系列:
Android 8.1 zygote 啟動程序原始碼
Android Framework實戰視頻–Zygote的fork行程篇
Android Framework實戰視頻–SystemServer啟動篇
Android Framework實戰視頻–SystemServer啟動FallbackHome篇
Android Framework實戰視頻–FallbackHome行程啟動及Activity啟動篇
Android Framework實戰視頻–FallbackHome結束啟動Launcher篇
1、Ubuntu編譯拷貝好對應的img
這個部分在我們入門課已經有了講解可以去看framework入門課:https://edu.csdn.net/combo/detail/2123
在out/target/product/generic_x86_64目錄下有:
system.img system-qemu.img userdata.img vendor-qemu.img vendor.img kernel-ranchu-64 ramdisk.img
這里要選擇system-qemu.img和vendor-qemu.img,這兩個鏡像是專門為qemu運行制作的,如果選擇system.img 和vendor.img,則avd運行失敗,
這里我們之前如果在圖形界面的Ubuntu上肯定一個emulator命令就可以跑起來,看到如下好看的界面:

但是很多同學想著平時作業都是window多,也不可能天天使用Ubuntu辦公,實在有些不方便,問老師是否可以考慮在window上模擬器運行起來我們編譯的系統,這種需求其實還比較多,很多人一般都是使用一個阿里云什么只有一個命令列終端,根本不會有什么圖形界面的Ubuntu,大部分公司服務器也一樣只有個命令列終端,那么我們要實作的就是如下場景:

既然是學員們提出的需求,我這邊當然就盡量想辦法滿足,分享出來讓以后學員就不需要我單獨一個個講了,
上面我們已經編譯成功了到out的檔案夾吧對應的幾個img和kernel拷貝到我們的和window共享的目錄下(這個共享部分就不需要多講了,可以自行百度Samba或者模擬器映射路徑)
這里我拷貝到一個路徑如下:

好那這里linux部分就完成了,接下就是window部分
2、window配置好對應的avd,替換對應img
2.1 首先在window端的android studio建立好一個avd,這個直接android studio就可以操作

先創建一個虛擬機

選擇一個設備,這里我們選擇一個pixel就行 1920 * 1080的

這里為設定選擇一個rom,因為我們目的是想運行我們自己編譯的aosp的rom,所以選擇和我們最貼近的x86選擇一個x86_64對月的一個O版本,因為剛好我們自己編譯的rom也是這個,如果沒有下載就點擊下載一下

這里最后給我們創建模擬器命名為MyPhone
到此就完成了window本身的模擬器創建
3、替換window本身模擬器的img檔案
上面已經實作了window模擬器的創建了,也可以運行模擬器了,但是我們目的是想要實作對我們編譯的img運行,而不是sdk下載的img運行

這里大家去sdk路徑下找到剛剛我們下載的鏡像檔案夾,路徑看截圖,大家看到其實它主要也就是幾個img的集合,這里本質上我們只需要對各個Ubuntu拷貝出來的img覆寫到這個檔案夾下即可以實作運行我們自己編譯的rom img檔案
注意:這里要選擇system-qemu.img和vendor-qemu.img改名成system.img和vendor.img
最后運行命令:

然后打開命令列:
輸入:./emulator -avd MyPhone 既可以

大家看運行起來了課程里面的img,因為這開機影片都是Android Framework高級實戰課里面BootAnimation的成果
最后:大家想學習framework的可以去買我的實戰和入門系列課,相對很實惠,也不要忘記加入qq群:422901085哦
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/286352.html
標籤:其他
下一篇:C++中cout的格式使用
