adb(=Android Debug Bridge)コマンドを使えば、通常の設定画面からは行えない高度なカスタマイズ指示をAndroidへ与えることが可能です。
本記事では、当ブログで紹介したことのある「adbでAndroidを強化できること」をまとめて紹介します。
adbの基本やメリットを知りたい方は、ぜひどうぞ。
adbコマンドを使う前提条件
adbコマンドはAndroid向け開発環境「Android Studio」の機能の1つ「Android SDKツール」を使用します。
「何だか難しそう&面倒くさそう」ですが、基本的に次の3点を準備すればOKです。
- パソコンでadbコマンドを使えること
- USBケーブルを持っていること
- Androidで「USBデバッグ」を有効にすること
それぞれカンタンに解説します。
パソコンでadbコマンドを使えること
お使いのパソコンでadbコマンドを使用できる環境を用意して下さい。
Windows・Macそれぞれにおける手順は関連記事で解説しています。


USBケーブルを持っていること
パソコンとAndroidを接続するケーブルも必要です。
AndroidのUSB端子の形状(micro USB / Type C)に合わせ、ご準備下さい。
AndroidでUSBデバッグを有効にすること
Androidの設定で ビルド番号 を連続タップして 開発者向けオプション を有効にした後、USBデバッグ を有効にして下さい。
USBデバッグを有効にする詳細な手順は、関連記事【AndroidでUSBデバッグを有効にする方法! 設定を解除する手順やリスクを解説】で解説しています。

adbコマンドを使用する事前準備は以上です。
adbコマンドできることまとめ
adbコマンドでAndroidをカスタマイズできること一覧です。
- その①SDカードを内部ストレージ化する
- その②OSバージョンをダウングレードする
- その③デバイスをroot化する
- その④デバイスからapkファイルをダウンロードする
- その⑤PC操作でデバイスへアプリを追加する
- その⑥PC操作でデバイスからアプリを削除する
- その⑦ナビゲーションバーにボタンを追加する
- その⑧全機種でシステムUI調整ツールを解放する
- その⑨アプリ機能を独自にカスタマイズする
①:AndroidのSDカードを内部ストレージ化する
Android 6.0より実装された機能「Adoptable Storage」を使えば、SDカードを本体の内部ストレージとして利用(=SDカードの内部ストレージ化)できるようになりました。
この機能は通常、一部機種に限定されますが、adbコマンドを操作できれば、無理やりこの機能を開放して、基本的に全機種でSDカードを内部ストレージ化できます。

内部ストレージ化したSDカードはアプリも移動できる。
具体的には、次のadbコマンドを入力します。
adb shell
sm list-disks
sm partition disk:179,64 private
より詳細な情報は、関連記事【AndroidでSDカードを内部ストレージ化してアプリを移動する方法! スマホの外部ストレージをフォーマットしよう】で解説しています。

②:AndroidのOSバージョンをダウングレードする
adb環境を用意したパソコンがあれば、Google純正端末(Pixel / Nexusシリーズ)を好きなOSバージョンへ戻せます。
ただし次の2点が前提条件です。
- ブートローダーをアンロックできること
- ファクトリーイメージを用意できること
手順が複雑なので、詳細は関連記事【PixelやNexusのOSをダウングレードする方法! Googleファクトリーイメージでソフトウェアバージョンを下げよう】で解説しています。

③:Androidをroot化する
adb環境を用意したパソコンがあれば、Androidをroot化できます。
ただし次の2点が前提条件です。
- ブートローダーをアンロックできること
- カスタムリカバリ TWRPを用意すること
手順が複雑なので、詳細は関連記事【Nexus 6Pをroot化する方法! TWRPでAndroid 8.1にMagiskをインストールして改造しよう】で解説しています。

④:Androidからアプリのapkファイルをダウンロードする
adbコマンドを使えば、インストール中アプリのapkファイルを抽出できます。
具体的には、次のコマンドでAndroid内でアプリが保存される場所(=「パス」)を調べ、
adb shell pm list packages -f | grep <アプリのパッケージ名>
次のコマンドを実行すれば、パソコン上にapkファイルを保存できます。
adb pull <アプリのパス>
詳細は関連記事【Androidでapkファイルの場所を調べダウンロードする方法! 抽出したアプリを再インストールしよう】で解説しています。

⑤:パソコンからAndroidへアプリをインストールする
adbコマンドを使えば、USB接続したAndroidへアプリを追加できます。
通常のインストールをするコマンド
通常のサードパーティ製アプリのインストールであれば、次のadbコマンドを入力します。
adb install <apkファイルのパス>
例えばデスクトップ上に保存している「LINE」アプリのapkファイルなら、下記のようになります。
adb install /Users/ユーザー名/Desktop/jp.naver.line.android.apk
詳細は関連記事【パソコンからAndroidにアプリを直接インストールする方法! PCでダウンロードしたapkをadbを使って入れよう】で解説しています。

apkファイルを上書きインストールするコマンド
すでにAndroid上に存在するapkファイルを上書きインストールしたい場合、次のadbコマンドを入力します(アプリのデータも引き継がれます)。
adb install -r <apkファイルのパス>
詳細は関連記事【Androidでアプリを強制的に上書きインストールする方法! 新しい/古いapkバージョンを導入しよう】で解説しています。

⑥:パソコン操作でAndroidからアプリをアンインストールする
adbコマンドを使えば、USB接続したAndroidに入っているアプリを削除できます。
通常のアンインストールをするコマンド
通常のサードパーティ製アプリのアンインストールであれば、次のadbコマンドを入力します。
adb uninstall <アプリのパッケージ名>
例えば「LINE」アプリなら下記通りです。
adb uninstall jp.naver.line.android
詳細は関連記事【パソコンからAndroidアプリを直接アンインストールする方法! adbのuninstallコマンドでPCから削除しよう】で解説しています。

アプリ内のデータを残したままアンインストールをするコマンド
アプリ内のデータは保持したまま、アプリのプログラム部分のみ削除したい場合、次のadbコマンドを入力します。
adb shell pm uninstall -k <アプリのパッケージ名>
データは残っているので、後々アプリを再インストールするとデータを復元できます。
詳細は関連記事【Androidでアプリデータを残してアンインストールする方法! 削除後に再インストールして復元しよう】で解説しています。

プリインストールアプリを強制的に削除するコマンド
Androidにプリインストールされるアプリの中には、アンインストールや無効化ができないケースがあります。
ただ次のadbコマンドを入力すれば、強制的にアンインストール可能です。
adb shell pm uninstall -k --user 0 <アプリのパッケージ名>
この方法で削除した場合、アプリの再インストールが少し面倒な点に注意して下さい。
詳細は関連記事【Androidでプリインストールアプリを強制的に削除する方法! 消せない標準ソフトもアンインストール/無効化できる】で解説しています。

⑦:ナビゲーションバーにボタンを追加する
「Custom Navigation Bar」というアプリとadbコマンドを使えば、ナビゲーションバーのボタン配置を変更したり、新しいボタンを追加できるようになります。

ナビゲーションバーの左端に「Notifications」機能を、右端に「設定」アプリを配置した例。
具体的には、アプリを起動した後、次のadbコマンドを入力します。
adb shell
pm grant xyz.paphonb.systemuituner android.permission.WRITE_SECURE_SETTINGS
Android機種によっては、うまくいかないケースもあります。
詳細は関連記事【Androidのナビゲーションバーにボタンを追加する方法! アイコン配置変更や機能カスタマイズしよう】で解説しています。

⑧:すべての機種でシステムUI調整ツールを解放する
ステータスバーをカスタマイズできる「システムUI調整ツール」は、一部機種に限定される機能です。
ただ、SystemUI Tunerというアプリとadbコマンドを使えば、すべての機種で使えるようになります。
具体的には、下記3つのadbコマンドを実行します。
adb shell pm grant com.zacharee1.systemuituner android.permission.WRITE_SECURE_SETTINGS
adb shell pm grant com.zacharee1.systemuituner android.permission.PACKAGE_USAGE_STATS
adb shell pm grant com.zacharee1.systemuituner android.permission.DUMP
SystemUI Tunerは非常に多機能かつ、機種によって使用可能・不可能な設定があるので、実際に試しながら便利な機能を探してみて下さい。

例えばクイック設定パネルのタイル数をカスタマイズできる。
詳細な使い方は、関連記事【AndroidにシステムUI調整ツールを追加/削除する方法! SystemUI Tunerでスマホの設定をカスタマイズしよう】で解説しています。

⑨:アプリ機能を独自にカスタマイズする
adbコマンドを使えば、アプリの隠れ機能を開放することができます。
以降よりその具体例を紹介します。
Chromeを常にPC版で表示する
Chromeでは、サイト表示をパソコンと同じPC版へ切り替え可能です。
が、これは”そのタブを開いている最中”のみ適用となり、新しいタブを開くと再びスマホ向けの表示へ戻ってしまいます。
ここでadbコマンドがあれば、Chromeの内部システムファイルを書き換えることで、常時デスクトップモードで表示可能となります。

(左)デスクトップモードで表示された当サイト (右)PC版サイトにチェックを入れる必要なし
手順が複雑なため、詳細は関連記事【AndroidのChromeを常にPC版で表示する方法! スマホのブラウザをデスクトップモードに固定しよう】で解説しています。

MacroDroidの高度設定を解放する
Android向けアプリMacroDroidを使えば、様々なルーティン操作を自動化できて大変便利です。

一部のAndroidシステム中枢に関わる高度なマクロ設定にはroot化が必要となりますが、adbで指定コマンドを実行することで、root不要で使用できるようになります。

アクションで表示される「rootまたはADB hack済み」機能が解放される。
具体的にはアプリをインストールした後、次のadbコマンドを入力します。
adb shell pm grant com.arlosoft.macrodroid android.permission.WRITE_SECURE_SETTINGS
adb shell pm grant com.arlosoft.macrodroid android.permission.CHANGE_CONFIGURATION
詳細は関連記事【MacroDroidの高度設定をroot不要で解放する方法! ADB hackでAndroidの自動化を強化しよう】で解説しています。

〆:adbでAndroidをもっと便利にカスタマイズしよう!
以上、Androidをadbでカスタマイズできることまとめ! コマンドでスマートフォンを強化する方法の一覧 の説明でした。
標準の設定では満足できない場合、adbを使えばさらに高度なカスタマイズが可能となります。
パソコンさえあれば決してハードルは高くないので、ぜひ挑戦してみて下さい。
コメント
OppoA3sでアンドロイド8.1ですが
sdカードの内部ストレージ化を試みましたが、全コマンド入力後内部ストレージ化されずSDカードが認証されなくなりました。
手順は間違っていません。
対処方の享受願います。
こちらの記事に関するコメントかと思いますが、Oppo A3sに対応していないかもしれません。
※Oppo A3sを持っていないため検証できず、お力になれずすみません。。。