google發佈了Android 4.1的代碼,可是不包含藍牙、wifi、顯卡等驅動,google將這些驅動單獨提供下載,並未集成到源碼中,因此須要將其編譯進rom中,步驟以下: php
編譯完成後會在android_souce/out/target/product/maguro/中生成一大堆img文件,這就是編譯生成的刷機rom了 linux
而後打開https://developers.google.com/android/nexus/drivers,下載Galaxy Nexus對應的4個文件並解壓到源代碼的目錄,解壓出來的4個文件是4個shell腳本,分別爲extract-broadcom-maguro.sh,extract-imgtec-maguro.sh,extract-invensense-maguro.sh,extract-samsung-maguro.sh
分別執行這4個腳本,執行期間會要求輸入「I ACCEPT」
從新執行make -j4進行編譯,此次編譯過程時間很短 android
完成上面的驅動集成後,能夠把編譯好的img拿到windows下面去刷機,也能夠參照下面的方法在linux下刷: shell
輸入 cd android_source/out/host/linux-x86/bin(該目錄下有fastboot文件), 而後輸入sudo ./fastboot flashall -w開始刷機,通常狀況下這一步會出現如下錯誤提示:neither -p product specified nor ANDROID_PRODUCT_OUT set,緣由是沒有設置rom的位置,解決方法要麼使用-p參數,後面跟着rom的位置,或者配置環境變量ANDROID_PRODUCT_OUT,過程以下:
輸入sudo gedit /etc/profile,在尾部添加
export ANDROID_PRODUCT_OUT=/home/jamie/android_source/out/target/product/maguro,
保存並退出 而後輸入source /etc/profile使剛設置的環境變量當即生效。 windows
最後等待刷機完成,完成後手機會自動重啓,大功告成!! typecho