たくさんの自由帳
Androidのお話
たくさんの自由帳
投稿日 : | 0 日前
文字数(だいたい) : 16506
目次
先駆者さん
本題
ドコモ版でもブートローダーアンロックができる
arrows Alpha 今のところの感想
モイモイがいない
今北産業
必要なもの
ブートローダーアンロックする
アカウントを作る
OEMロック解除を有効にする
パソコンにドライバを入れる
アンロック用のコードを取得する
ブートローダーアンロックの申請ページを開く
解除コードがメールで来る
できた!
Root を取る
Software Fix でダウンロードできない
KernelSU を使った Root 手順
手順
システムに必要なファイルを全部バックアップする技
ABパーティションでどっちを使っているかを確認
DSU Sideloader とカスタム ROM のダウンロード
メモ lineageos 22 版 GSI はすでにルート済み?
DSU Sideloader で起動
LineageOS の設定
メモ adb shell su で superuser になれない
データをパソコンに逃がす
イメージをバックアップする
パソコンに転送
Root を取るために必要なファイルを見つけておく
init_boot.img のみバックアップする場合
init_boot.img にパッチを当てる
メモ Magisk だと動かなかった
KernelSU を導入
おわりに
おわりに2
おわりに3
おわりに4
おわりに5
どうもこんにちわ、今週ようやく涼しくなってきたか・・・
先駆者さん以上のことは話してないのでそっち見てください!!
ブートローダーアンロックに関しては同じです!!
arrows Alpha のBootloader Unlock、rootを取る - ROM焼き試験場
※Motorolaと一緒です。
https://mitanyan98.hatenablog.com/entry/2025/09/08/070000
arrows Alpha
をドコモで購入しました。F-51F
。Fで始まってFで終わる型番再来。NMP
すると安いみたいですが、 ドコモ版が欲し買ったため定価で買いました。 えっ。ドコモ版が欲しかった理由はただ一つ、転用5G
に接続するため・・・
arrows Alpha
、なんかMediaTek
搭載らしいし、5G+
表記が気になるし、マイブーム?の10-bit HDR動画
も行ける、ブートローダーアンロック
ができる予感がする(できた)、、、、で買いました。
レノボのおかげで?モトローラ兄弟関係になったみたいで、よく見るとモトローラ譲りのUI
があったりします?。(まーモトローラのスマホは電気屋で触ったくらいしかないんですが)4636
したときに5G/LTE Debugging Information
のメニューがあったり。
なんとブートローダーアンロック
が出来ます。SIMフリー版
は先駆者さんが試してくれています。
買う前に調べたら(ドコモ版に感じては見つからなかった)、基底の部分からモトローラ譲りになったからなのか、ブートローダーアンロックができるっぽい。
あとはキャリア版でもMediaTek
のarrows
は何故かブートローダーアンロックできるみたいで、、、、
わたし、モトローラ譲り+MediaTek
の2つのソースからアンロックできる予感がします、。
そういえば、なんか似たような理由(ブートローダーアンロック
ができるから)で買ったMi 11 Lite 5G
は、今でもシーリングライトのリモコンとして活躍しています。
なお結局BLU
せずに使ってます。今回はするんかいって。
さよなら保証・・・・って思ったけど白ロム購入だから無いか。
ブートローダーアンロック可能
とか関係なく、
MediaTek SoC
なので楽しみATOK
そんなに悪くないと思ったLawnchair
を自前でビルドして使ってます、、もっとあると思います、ので、思い出したら別のところで書きます
この犬のキャラクター。壁紙だったり、マチキャラ(ひつじのしつじくん
とか豆腐みたいなあれ
)のキャラとして設定できたやつ。
Fのケータイと言えばモイモイ!!!! だと思っていますが、もう搭載されてないみたいです。がっくし。
中の人へ、どうか・・モイモイの復活を・・・
Software Fix
が対応していない(?)ので、Root 化
のためのinit_boot.img
取得のためにDSU Sideloader
を利用する
lineage-22.2-20250621-UNOFFICIAL-gsi_arm64_vN.img.gz
のROM
で起動できます!!キミにありがとう初期ROM (Fastboot ROM ?)
が欲しい場合はSIMフリー
を買うと良いかもMagisk
ですが記述時時点の最新版?はモトローラ譲りのせいかダメみたい、、なのでKernelSU
を使っていますMotorola Account
adb
コマンドが利用できるようにする必要があります
Android Studio
を入れてるので省略しますコマンドプロンプト
でもPowerShell
でもGitBash
でもAndroid
のイメージをバックアップするなら20GB
くらいほしいかもここは先駆者さんと全く同じです、ありがとうございます
arrows Alpha のBootloader Unlock、rootを取る - ROM焼き試験場
※Motorolaと一緒です。
https://mitanyan98.hatenablog.com/entry/2025/09/08/070000
から作ってください。名前とメアドとパスワードです。パスワードは大文字と特殊文字(記号?)が必要でした。reCAPTHA
と確認用にメールが来ます。リンクを押して承認しましょう。
端末の設定を開き、端末情報
→デバイス ID
→ビルド番号
を連打して開発者向けオプションを有効にします。
そしたらOEMロック解除
を有効にします。
ここから。手動でドライバを入れるとか数年ぶりじゃない。
ちなみに入れないとfastboot devices
コマンドが何も返ってこなかったです。
でも失敗してしまった。
まあなんかガチャガチャやってたら認識されるようになりました。(?!?!?)
一回消してみたり、別のボタンを押してみたりとか・・・
C:\Users\takusan23>fastboot devices
ZY22LQLH4D fastboot
まず端末をfastboot
モードで起動します。
電源を切った状態で、音量下げボタン
と電源ボタン
を長押しすると、ドロイド君が仰向けになっている画面になると思います。
この状態でUSB
で接続し、
コマンドプロンプトを開いて、以下の文字を入れて Enter します。(PowerShell でも好きなターミナルを開いてください)
fastboot devices
ここでシリアルナンバー
??が返ってくれば成功です。
何も返ってこない場合はドライバのインストールがミスってるとか、USB
を別のところに指すとか、再起動するとかしてみてください。
そしたら、以下の文字を入れてもう一度Enter
します
端末はそのままにしてください。
fastboot oem get_unlock_data
そしたら、なぞの文字が表示されると思います。以下は例です。
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
これを一旦メモ帳とかにコピーします。
コマンドプロンプトの場合は、テキストを選択して右クリックでコピーできます(Ctrl+C
はプロセスを56す操作のために予約されているため、コピーできません、いや出来るかも)
数字が書かれている行だけでいいです。(bootloader) Unlock data:
のところや、OKAY
は不要。
できたら、数字以外の文字を削除して、1行にします。メモ帳の設定によっては折り返し機能で複数行に見えてしまうかもしれません。(bootloader)
と改行と空白文字を消ししてつなげます。
以下例:
0A40040192024205#4C4D355631323030373731363031303332323239#BD008A672BA4746C2CE02328A2AC0C39F951A3E5#1F532800020000000000000000000000
貼り付けたらCan my device be unlocked?
ボタンを押します。
ブートローダーアンロック可能な場合
はその下に利用規約が表示されるようになります。
キャリア版(私が今やっている)も、SIMフリー版(オープンマーケット版)も解除できるので下に進めるはずです。
利用規約に同意するのでYes
のラジオボタンを選択して、Request Unlock Key
のボタンを押します、
最後に一度聞かれるので、OK
を選ぶ
アカウント登録時に使ったメールアドレスにUnlocking Your Device
ってメールが来ているはずです。
Unlock Code:
に表示されているコードをコピーします。
そしたらもう一度コマンドプロンプトを開き、以下のコマンドを入力してEnter
します。ここにメールできた解除コード
には実際のコードを入れてください。
もし画面が消えちゃってたら、もう一回音量下げ
+電源ボタン
を押して仰向けになっている画面を出せばいいです。
fastboot oem unlock ここにメールできた解除コード
そしたら端末を確認します。
本当にブートローダーアンロック
するか?的な画面になるので、音量ボタンを使ってUNLOCK THE BOOTLOADER
を選んで、電源ボタンを押します。
これで終わり。解除に伴って端末が初期化されます。
なぜか元の画面に戻ってきたので、START
を選んで起動します。
同様にSTART
じゃない場合は音量ボタンを使って選んで、電源ボタンで確定させます。
開発者向けオプション
を開くとブートローダーはすでにアンロックされています
になっています。
Magisk
でRoot
を得るためにはinit_boot.img
ってファイルをファクトリーイメージから取り出す必要があります。
モトローラやレノボのデバイスと同じ手順で取得することが出来る、、と思ってましたが、Software Fix
が認識しません、、ドコモ版だとダメなのか・・?
頼りにするはずでしたが、先述の通り対応していません。
これだと何が困るのかというと、init_boot.img
が取得できないのでRoot
が取れないのと、ぶっ壊したときに戻せない
というわけで、別の方法でinit_boot.img
とそれ以外も全部取り出し、Root
と万一に備えようと思います。
ちなみに利用できるならこれが一番早いと思います。
ちなみにブートローダーアンロックされていれば、KernelSU
を使ってRoot 化
する方法もあるみたいですが、
できる限りクリーンな状態のシステムのバックアップを取りたいので、王道?なDSU
の方法で行きます。
DSU sideloaderを使ってroot化に必要なboot.img/init_boot.imgを抜き出す方法・手順 - ROM焼き試験場
中級者~上級者向け
https://mitanyan98.hatenablog.com/entry/2024/05/06/040247
というわけで、DSU Sideloader
を使いAndroid Root 済み OS
を疑似デュアルブートします。root
が使えるとシステムのinit_boot.img
とかが入手できるので。
DSU Sideloader
とカスタムROM
を用意するinit_boot.img
を使うのでパソコンにコピ-(もしくは全部のイメージバックアップ)
ドコモ版 arrows Alpha
はSoftware Fix
が使えないっぽいので全部バックアップしてみます
SIMフリー版
はそもそもSoftware Fix
からinit_boot.img
が取り出せる(らしい)ので・・・パソコンが必要です。
イメージバックアップってなんだって感じだったけどこの辺です!
Fastboot ROMを手作りする方法|Re*Index. (ot_inc)
ヘッダーは全然関係ないです。 Nothing phone(1)やRedmi Note 10 JEのFastoot ROMを公開していますが、「そもそもどんな方法でやっているの?」と思う方がいそうだったので勝手に書き殴る事にします。この方法を行なえばStockのROMを公式で戻す手段がない機種(Nothing、Redmi Note 10 JE、Rakuten Mini、Android Oneなど)でも一応戻す事が可能になったり、boot.imgにパッチを当ててrootにするなど色々な事が行えます。 1.下準備 Fastboot ROMを作る前に以下の準備が必要です。 Bootl
https://note.com/reindex/n/n8d199ed8de88
DSU sideloaderを使ってroot化に必要なboot.img/init_boot.imgを抜き出す方法・手順 - ROM焼き試験場
中級者~上級者向け
https://mitanyan98.hatenablog.com/entry/2024/05/06/040247
Androidのイメージバックアップ (パスやファイル名は端末によって変わるため、適宜変更してください)
Androidのイメージバックアップ (パスやファイル名は端末によって変わるため、適宜変更してください) - userdata以外すべての場合
https://gist.github.com/AndroPlus-org/c057a96d0c474f799354b939068337d1
KernelSUを使って(ちょっとだけ)簡単にMagiskを導入する方法 - ROM焼き試験場
KernelSUを使って(ちょっとだけ)簡単にMagiskを導入する方法 - ROM焼き試験場
https://mitanyan98.hatenablog.com/entry/2023/05/03/143941
RakutenMini
戻すときにひたすらfastboot flash
していたけど、この元で使うファイルのこと・・?
(あんまりわかってない、なら辞めとけよ)
fastboot
モードで(ドロイド君が仰向けになっている画面)起動して、端末をパソコンに接続し、コマンドプロンプトでfastboot getvar current-slot
を入力しエンターします。
C:\Users\takusan23>fastboot getvar current-slot
current-slot: a
Finished. Total time: 0.003s
current-slot:
の後のアルファベットを確認します。この場合はa
ですね。
後で使うので覚えておいてください。
終わったらAndroid
を起動してください、
カスタムROM
ですが、私の手元(arrows Alpha ドコモ版)では、以下のlineage-22.2-20250621-UNOFFICIAL-gsi_arm64_vN.img.gz
が起動できました
LineageOS 22
を使わせていただきます、ビルドしてくれたキミにありがとう。
が、arm64_bvS
って感じに、最後にS
がついてないとroot
がないと思っていましたが、
以下の通りLineageOS
にははじめからルートがついている?っぽいのでN
の方で行けるっぽいです
両方ダウンロードできたら、DSU Sideloader
をインストールし起動します。
新しいフォルダを作るように言われるので、作ります。Android
はファイル読み書き API
が使いにくいのでこんなところにも影響が・・・
ブートローダーアンロック済みであることを確認しろよ的なメッセージが出ます。
これでボタンを押すとカスタムROM
とストレージの設定画面に入ります。
テキストボックスをおして、ダウンロードしたカスタムROM
を、容量の欄は32GB
にしました。←!?
後述しますが、全部バックアップする場合は20GB
超えのファイルになるので、多めに取っておく必要があります。
逆にinit_boot.img
だけ取る場合は8GB
くらいでいいっぽい?初期ROM
が欲しいかどうかで決めると良さそう。
出来たらインストール。
そしたら、ADB
コマンドを入力するように言われるので、パソコンと接続して、以下のコマンドをコマンドプロンプト等で入力してエンターします。
多分同じコマンドだと思います。
adb shell sh "/storage/emulated/0/Android/data/vegabobo.dsusideloader/files/install"
コマンドを入力したあとは、通知領域を見てしばらく待ちます。完了すると動的システムの~
って通知があるので、再起動
を押します。
再起動で成功するとLineageOS
の初期設定画面が出てるはずです。わーカスタムROMだ
初期設定は適当に進めます。インターネットや画面ロックはスキップしてください。
終わったら設定を開き、いつもの手順で開発者向けオプション
を有効にし、USB デバッグ
とルート状態のデバッグ
を有効にします。
そしたらパソコンと接続して次のステップへ
adb root
コマンドがadb shell
+su
相当になる。adb root
した後にadb shell
するとルートユーザーとしてターミナルに入れます。whoami
したらちゃんとルートユーザーですね。
C:\Users\takusan23>adb root
adbd is already running as root
C:\Users\takusan23>adb shell
lineage_gsi_arm64:/ #
lineage_gsi_arm64:/ # whoami
root
lineage_gsi_arm64:/ #
ここで、イメージをすべてバックアップ
するか、init_boot.img
だけ取得するかで変わってきます。
まじでそのままパクってるだけです、、
まず以下2つ
adb root
adb shell
次も2つ、cd /dev/block/by-name/
はMediaTek
のSoC
だけっぽいので、Snapdragon
の場合は別みたい。
cd /dev/block/by-name/
mkdir /sdcard/backup_img
次に以下をすべて選択した状態で(複数行でも構わずに)貼り付ける。
1行ずつ貼り付けてはいけません、3行まとめて貼り付けるんです、しばらく掛かると思います。Windows Terminal
だと複数行貼り付け時に警告が出るかもだけどとにかく実行。
for file in *; do
if [[ "${file}" = cache* || "${file}" = userdata* || "${file}" = sd[a-z] ]]; then continue ; else dd if="${file}" of=/sdcard/backup_img/"${file}".img ; fi
done
最後に成功しているかを確認します。これも複数行をまとめて貼り付けます。
echo "" > /sdcard/backup_img/md5.txt
for file in *; do
if [[ "${file}" = cache* || "${file}" = userdata* || "${file}" = sda || "${file}" = sdb || "${file}" = sdc ]]; then continue ; else
if cmp -s "${file}" /sdcard/backup_img/"${file}".img; then
echo "${file} - OK" >> /sdcard/backup_img/md5.txt
else
echo "${file} - NG, you have to backup again!" >> /sdcard/backup_img/md5.txt
fi
fi
done
しばらくまちます。。。シェルスクリプト芸人って毎回すげーとおもうわ。GitHub Actions
とかもそれだけど。。/sdcard/backup_img/md5.txt
へ、成功しているかのログがテキストファイルになっているので、cat
コマンドで見ます。全部OK
になっていると成功。
cat /sdcard/backup_img/md5.txt
あとあんまり良くわかってないですが、もし起動しなくなったらこれを元ある場所に戻せば良いんですかね・・?
わかんないなら辞めとけよ(再掲)
母艦となるパソコンに転送します。USB 接続設定
からファイル転送
を選べばWindows
のエクスプローラーから見れるのでこれで良いでしょう。backup_img
フォルダです。ちなみに容量は21GB!!??
最初にA/B
のどっちを使っているかを知っているので、↑のフォルダからa
ならinit_boot_a.img
を、b
の場合はinit_boot_b.img
を探しておきましょう。
これをMagisk
やKernelSU
でパッチします。
DSU sideloaderを使ってroot化に必要なboot.img/init_boot.imgを抜き出す方法・手順 - ROM焼き試験場
中級者~上級者向け
https://mitanyan98.hatenablog.com/entry/2024/05/06/040247
同様にA/B
のどっちかを復習しておく必要があります。今回はa
ですね。
次に以下のコマンドを叩きます。途中までは同じなので。同様にSnapdragon
の場合は/dev/block/by-name/
が違うはず
adb root
adb shell
cd /dev/block/by-name/
mkdir /sdcard/backup_img
そしたら分岐です。aだった場合は
dd if=init_boot_a of=/sdcard/backup_img/init_boot_a.img
bだった場合は
dd if=init_boot_b of=/sdcard/backup_img/init_boot_b.img
あとは同様にUSB 接続設定
をデータ転送にすれば、Windows
のエクスプローラーから見ることが出来ます。同様にパソコンにバックアップしておいてください。
もうLineageOS
は不要なので、再起動します。普通に再起動すると元々のOS
が起動します。
起動したら、パソコンにあるinit_boot.img
をスマホに戻します。A/B
は先述の手順で選別したはずですから。
モトローラだからなのかよくわかりませんが、どうやってもエラーになってしまいました。
もしかするとバージョンを下げると導入できるみたいなのですが、KernelSU
の方は使ったことないな・・・と思ったので今回はそっちにします。
PS C:\Users\takusan23\Downloads> fastboot flash init_boot_a C:\Users\takusan23\Downloads\magisk_patched-30200_TMHEq.img
Sending 'init_boot_a' (8192 KB) OKAY [ 0.181s]
Writing 'init_boot_a' (bootloader) Preflash validation failed
FAILED (remote: '')
fastboot: error: Command failed
release.apk
となっているものを探してください。他のgz
とかは、KernelSU
経由でRoot (Magisk)
を入れるためのものっぽい?Releases · tiann/KernelSU
A Kernel based root solution for Android. Contribute to tiann/KernelSU development by creating an account on GitHub.
https://github.com/tiann/KernelSU/releases
できたら、起動して、スクショを 取り忘れて事後報告になるのですが 、 未インストール と書かれている箇所を押します。
以下のスクショではもう導入済みなので 動作中<LKM> と表示されてますが、インストールしていない場合はここが未インストールになります。
そしたら、ファイルを選択してください
を押します。スクショでは相変わらず事後報告なので他のメニューが見えているのですが、インストールしてない場合は一つだけなのでそれを押します。
おすとinit_boot.img
ファイルを選択する画面に移動するので、パソコンから転送しておいたinit_boot_a.img
もしくはinit_boot_b.img
を選びます。どっちを利用するかは前述しましたよ!!!
できたら次に
を押します。あとはMagisk
みたいにinit_boot.img
へパッチされてますよ~画面に遷移するので、終わるのを見届けて、
終わったら、ダウンロードフォルダにkernelsu_patched_
から始まるファイルが出来ているので、これをパソコンに転送します。
あとはパソコンと接続し、まずはドロイド君が仰向けになっている画面を出します。シャットダウンして、電源ボタンと音量下げボタンのやつ。
そしたら、パソコンに転送したファイルを使ってコマンドを叩きます。
fastboot flash init_boot {ここにパソコンに転送した kernelsu_patched_ のファイルパス}
以下は例です。
PS C:\Users\takusan23\Downloads> fastboot flash init_boot C:\Users\takusan23\Downloads\kernelsu_patched_20250919_144334.img
Sending 'init_boot_a' (8192 KB) OKAY [ 0.182s]
Writing 'init_boot_a' OKAY [ 0.029s]
Finished. Total time: 0.223s
完了したら、ドロイド君が仰向けになっている画面で、すでにSTART
が選ばれていればそのまま電源ボタンを押して確定。
それ以外になっていれば音量ボタンをSTART
が出るまで押して、でたら電源ボタンを押します。
これでKernelSU
導入済みのarrows Alpha ドコモ版
が完成。おつかれさまでした。
ドコモのキャリア絵文字ですが、今年の夏発売した機種を皮切りに廃止されたそうです。Xperia 1 VII
が最後の可能性がある。
まあダークモード環境で最悪だったし、Slackも端末に入っている絵文字を使っているので意図がうまく汲み取れないしだったのでようやくですね。。
なぜかn1
表示になります。私のプログラムの考慮ミスのようです。。。MediaTekでは動いてなかった可能性があります。
arrows Alpha
を買った理由はMediaTek
だからってのもあって、このSoC
の電波API
を拝見したかったってのもあります。手持ちでないので。
うーーーん、どのベンダーもやっぱり謎の挙動がありますね(n1
・・?)
ちなみにQualcomm
の場合はCellInfo#getCellConnectionStatus
を実装してない、5G
のときのServiceState#getBandwidths
も実装していない、4636
の物理チャンネル構成で使われているPhysicalChannelConfig
も5Gのキャリアアグリゲーション
は実装してない。Google Tensor
は電波の掴みがいまいちで・・(API
関係ないわ)
冒頭の通り、ドコモ版を買った理由は、転用 5G
に接続したかったからです。ドコモの転用5G
はIMEI
でドコモ端末かチェックを入れているみたいなので。
Root
があるとShizuku
のセットアップが超簡単。ワイヤレスデバッグ出来ない環境
でもroot
を使ってセットアップできるので、今でもroot
を取る価値はあるんだなって思った。
Lawnchair
はAPK
あるのに何故自分でビルドしてるんですかって話ですが、開発者としての境地・・・とかの思いは特に無く、(向上心のない者はなんとか・・・)Google Discover (Google Feed)
が動かないので調べてたら、ナイトリービルド
もしくはデバッグビルド
であれば、追加でインストール必要なく動くって書いたあったからです。
まあ、ナイトリービルドを入れればいいので、自分でビルドする必要なんて無いんですが・・・
[BUG] Google Feed Not Working · Issue #4201 · LawnchairLauncher/lawnchair
Describe the bug I upgraded from Lawnchair 2 and uninstalled the old Lawnchair as well as Lawnfeed. I've installed Lawnfeed 3 and Lawnchair 14 and enabled Google feed. However when I scroll on the ...
https://github.com/LawnchairLauncher/lawnchair/issues/4201
assembleDebug
でAPK
を作っているので、デバッグビルド相当になり何もしなくても動くハズ