概要
- Nexus 6 用 ROM をソースから Build する方法
- たまに自作 ROM で遊びたくなるのでメモ
詳細
ビルド番号の確認 Factory Image からビルド番号を確認しておく →7.1.1 の最終は N6F27M
branch の確認 Build Numbers で N627M を探すと android-7.1.1_r55 が branch 名
ソースの取得
repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.1_r55 repo sync -j8
Proprietary なバイナリの取得 ここ で N6F27M を探して取得
wget https://dl.google.com/dl/android/aosp/broadcom-shamu-n6f27m-f127d01b.tgz wget https://dl.google.com/dl/android/aosp/moto-shamu-n6f27m-4596dbc2.tgz wget https://dl.google.com/dl/android/aosp/qcom-shamu-n6f27m-308c6363.tgz
これらを解凍
tar zxvf broadcom-shamu-n6f27m-f127d01b.tgz tar zxvf moto-shamu-n6f27m-4596dbc2.tgz tar zxvf qcom-shamu-n6f27m-308c6363.tgz
解凍された Shell Script を実行し、色々読んで “I ACCEPT” を入力
./extract-broadcom-shamu.sh ./extract-moto-shamu.sh ./extract-qcom-shamu.sh
WebView の設定
- Open GAPPS を使うために WebView の設定が必要、AOSP デフォルトでは入らない
- https://github.com/opengapps/opengapps/wiki/Notes-for-Android-7.x ここの通り、最後の config_webview_packages.xml を落として (…で View file → Raw ボタンの右クリックでファイルに保存) frameworks_base/core/res/res/xml/config_webview_packages.xml に上書き
Build
source build/envsetup.sh lunch full_shamu-userdebug make -j8 make -j8 otapackage
メモリが足らずエラーになることがある
Try increasing heap size with java option '-Xmx<size>'
というエラーが出る場合は、 ここを参考に
export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4096m" out/host/linux-x86/bin/jack-admin kill-server out/host/linux-x86/bin/jack-admin start-server
としてから make する
TWRP を落とす ここ の Download Links: から twrp-3.3.1-0-shamu.img を落とす
Google apps を落とす Oen GAPPS で、ARM, 7.1, stock を選択して、open_gapps-arm-7.1-stock-2019xxxx.zip を落とす
Magisk と Magisk Manager を落とす(SuperSU より Root hide が使えるのが良い) GitHub XDA Forum Magisk-v19.4.zip と MagiskManager-v7.3.4.apk
焼く
adb push out/target/product/shamu/full_shamu-ota-eng.xxxxx.zip /sdcard/ adb push open_gapps-arm-7.1-stock-2019xxxx.zip /sdcard/ adb push Magisk-v19.4.zip /sdcaard/ adb reboot recovery
Push して、TWRP で起動して以下を焼く。gapps を入れたら Magisk も入れないと起動できなくなる。
- full_magro-ota-eng.xxxxx.zip (Buildしたもの。xxxxx はユーザ名が入るはず。)
- gapps-jb43-20131116-dmd151.zip
- UPDATE-SuperSU-v1.43.zip
焼いた後、permission を grant する必要あり
- https://github.com/opengapps/opengapps/wiki/Notes-for-Android-6.0 これは、Android 6.0 用だが、、、7.1.1で使っても問題なさそう fix_open_gapps_permissions.sh を落として
adb push fix_open_gapps_permissions.sh /sdcard/ adb shell su cd /sdcarad/ sh fix_open_gapps_permissions.sh
まとめ
- これで色々試せる。位置偽装とか。