NotaBene

popin aladdin 2でadbを有効化する | NotaBene

popin aladdin 2でadbを有効化する

October 04, 2020

前置き

popin aladdinというデバイスを購入したのだが, adbがブロックされていて, kodi等の野良apkをsideloadできない. system領域を書き換えてやることで, adbdを起動させたい.

当然今後のOTAで失敗するであろうと考えられるので, 導入は慎重に…

Stock ROM

とりあえずオフィシャルのROMを手に入れる.

wget $(curl 'http://jp2-update.popin.cc/api/update?gimiPid=TTTTTTTTTTTT&systemVersion=V1.1.0&androidVersion=Android9&type=rom' | jq ".data.packageDownloadUrl" | sed 's/"//g')

TTTTTTTTTTTTは自分のシリアルを入れてもよいし, 入れなくてもよい.

System領域の解凍

先程ダウンロードしたファイルを解凍して,

brotli --decompress system.new.dat.br --output=system.new.dat
wget https://raw.githubusercontent.com/xpirt/sdat2img/master/sdat2img.py
chmod +x sdat2img.py
./sdat2img.py system.transfer.list system.new.dat system.img

とする.

これでシステム領域のext4イメージが手に入った.

system.imgの書き換え

mkdir output
sudo mount -o loop system.img output

等でsystem領域をマウントして, output/system/etc/prop.defaultのパラメータを下記のように書き換える.

ro.secure=0
ro.debuggable=1
persist.sys.usb.config=adb
ro.adb.secure=0
sudo vim output/system/etc/prop.default

等で編集すればいい.

次に認証に穴をあけたadbdを用意して, 標準のもの(output/system/bin/adbd)と差し換える.

sudo cp /path/to/adbd output/system/bin/adbd
chmod 755 output/system/bin/adbd

/path/to/adbdは自分のadbdへのpathを入れる.

最後にアンマウントしておこう.

sudo umount output

アップデートファイルの作成

git clone https://github.com/khadas/utils.git
cd utils

tee ./aml_upgrade_package.conf <<EOF
[LIST_NORMAL]
[LIST_VERIFY]
file="system.img"       main_type="PARTITION"      sub_type="system"
EOF

./aml_image_v2_packer -r ./aml_upgrade_package.conf /path/to/parent/of/system.img XGIMI_ALADD_II_PA20U01DJ.bin

/path/to/parent/of/system.imgsystem.imgの親ディレクトリを意味している.

Flash

FAT32でフォーマットしたUSBメモリにXGIMI_ALADD_II_PA20U01DJ.binをコピーする.

USBメモリをデバイスに挿入して, システム環境設定 -> システムアップデート -> USBメモリによるアップデートを選択する.

暫くまつと再起動するので, なぞのアナウンスがながれるが, 慌てずにリモコンのホームボタンを押す.

システム環境設定 -> その他の設定 -> リセットからデータ領域の初期化をするとよい.


© 2017-2024 mtphl