知らなかった!ADB(Android Debug Bridge)でできる8つの便利技

ADB(Android Debug Bridge)は、Android開発者向けのデバッグツールです。アプリの動作確認やシステムの挙動チェックなど、プログラミングに関するさまざまな操作を行えます。しかし実は、一般ユーザーや非開発者でも活用できる便利なADBコマンドが数多く存在します。本記事では、知っておくと作業効率が上がり、時間の節約にもなるADBの便利な使い方を8つ紹介します。
1. スマホの完全バックアップを作成する
Androidのリカバリーモードを使えばスマホの初期化やバックアップが可能ですが、保存先は端末内ストレージかSDカードに限られます。ADBを使えば、スマホの完全なバックアップをPC上に作成できます。
以下のコマンドを入力して、スマホのフルバックアップを作成しましょう。
adb backup -all -f /backup/location/file.ab

このコマンドを実行すると、指定した場所にすべてのアプリとそのデータがバックアップされます。ファイル名には必ず「.ab」という拡張子を付けてください。
Enterキーを押すと、スマホのロック解除とデータバックアップの許可を求められます。パスワードを設定してデータを暗号化することも可能です。このパスワードは復元時に使用します。

追加できるオプション:
- -apk:.apkファイルをバックアップする
- -noapk:.apkファイルをバックアップしない
- -obb:.obbファイルをバックアップする
- -noobb:.obbファイルをバックアップしない
- -shared:SDカードのデータをバックアップする
- -noshared:SDカードのデータをバックアップしない
- -nosystem:「-all」指定時でもシステムアプリをバックアップしない
バックアップをスマホに復元するには、以下のコマンドを入力します。
adb restore <バックアップファイルの場所>

スマホのロックを解除し、パスワードを入力すればバックアップが復元されます。
2. 特定のアプリとそのデータだけをバックアップする
特定のアプリとそのデータのみをバックアップしたい場合も、ADBで対応できます。例えば、別のスマホで以前のセーブデータを使ってゲームを続けたいときなどに便利です。また、アプリのキャッシュも一緒に保存されるため、YouTubeのようにオフライン動画をキャッシュファイルとして扱うアプリにも有効です。
アプリをバックアップするには、まずそのアプリのパッケージ名を調べる必要があります。以下のコマンドでパッケージ名を確認できます。
adb shell pm list packages
このコマンドで、スマホにインストールされているすべてのパッケージ名が一覧表示されます。バックアップしたいアプリのパッケージ名を見つけてコピーしてください。
次のコマンドでアプリとそのデータをバックアップします。
adb backup -f <バックアップファイルの保存場所> -apk <パッケージ名>

<パッケージ名>を先ほどコピーした名前に置き換え、保存先も前項と同様に指定してください。Enterキーを押すと、前項と同じようにスマホ側でバックアップ実行の許可を求められます。
アプリを復元するには、以下のコマンドを使用します。
adb restore <バックアップファイルの場所>
3. 複数のアプリを一括インストールする
フォルダ内に複数のアプリ(apkファイル)がある場合、ADBを使えば簡単に一括インストールできます。ただし、スマホ側に確認画面が表示されない点に注意が必要です。インストールするアプリにマルウェアが含まれていないか、事前に必ず確認しておきましょう。
フォルダから複数のアプリをインストールするには、以下のコマンドを入力します。
for %f in (<フォルダパス>\*.apk) do adb install "%f"

各アプリのインストールが完了するたびに「Success」メッセージが表示されます。
4. スマホからAPKを抽出する
何らかの理由でスマホに入っているアプリのapkファイルが必要になった場合も、ADBなら簡単に抽出できます。
まず、抽出したいアプリのパッケージ名を確認します。第2項で紹介した以下のコマンドを実行してパッケージ名を取得してください。
adb shell pm list packages
次に、そのパッケージのパス(ファイルの場所)を取得します。このパスを使ってスマホからAPKを取り出します。
adb shell pm path <パッケージ名>

表示されたパスをコピーし、以下のコマンドに貼り付けます。
adb pull <パッケージの場所> <PC側のAPK保存先パス>

これで「base.apk」(選択したアプリのAPKファイル)がPCに保存されます。ファイル名は後から自由に変更できます。
5. 画面を録画する
画面録画用のアプリはGoogle Playストアに多数ありますが、ADBで行うのも一興です。専用アプリをインストールする必要がないため、スマホのストレージ容量を節約できるのもメリットです。
以下のコマンドでスマホの画面録画を開始します。
adb shell screenrecord <フォルダパス/ファイル名.mp4>

コマンドに指定するパスは、スマホの内部ストレージまたはSDカード内である必要があります。また、ADBでの録画には最大3分という制限があります。途中で録画を止めたい場合は「Ctrl + C」を押してください。あらかじめ録画時間を設定したい場合は、-time-limit <秒数>パラメータを追加します。
6. 画面のDPIを変更する
DPI(Dots per Inch)は、Androidが画面に表示する画像やアプリアイコンの最適なサイズを決めるために使う値です。この値を変更することで、拡大表示や縮小表示など、自分好みの画面サイズに調整できます。下のスクリーンショットの左が通常の480dpi、右が180dpiに変更した例です。

現在のdpiを確認するには、以下のコマンドを入力します。
adb shell wm density
dpiを変更するには、値を続けて入力するだけです。
adb shell wm density <値>

変更は画面にリアルタイムで反映され、再起動は不要です。元のdpiに戻したい場合も、同じコマンドで元の値を指定すればOKです。
7. Wi-Fi経由でADBに接続する
あらゆるものがワイヤレス化している現代、ADB接続も無線で行ってみませんか? 実現はとても簡単です。ただし、最初に一度USBで接続して機能を有効にする必要があります。また、スマホとPCの両方でWi-Fiをオンにし、同じネットワークに接続しておいてください。
まず、以下のコマンドでADBをTCP/IPモードで実行します。
adb tcpip 5555
次に、「設定 → 端末情報 → 状態 → IPアドレス」からスマホのIPアドレスを確認し、以下のコマンドに入力します。
adb connect <IPアドレス>
これでUSBケーブルを抜いても大丈夫です。
無線接続できているか確認するには、以下のコマンドを実行します。
adb devices

8. システム情報や統計を取得する
dumpsysというシェルコマンドがあります。これは開発者がアプリ実行中のシステムの挙動を確認するために使うものです。このコマンドを利用すれば、スマホのシステムに関する詳細情報や、各種ハードウェアの状態を把握できます。
dumpsysで使えるすべてのサブコマンドを確認するには、以下のコマンドを入力します。
adb shell dumpsys | grep "DUMP OF SERVICE"
表示されたサブコマンドをdumpsysと組み合わせて使えば、スマホの各種ハードウェアについてより詳しい情報を取得できます。例えば、以下のコマンドではバッテリー情報が表示されます。
adb shell dumpsys battery

ほかのサブコマンドもいろいろ試して、スマホのハードウェアやその状態に関する情報を取得してみてください。
まとめ
ADBでできることは数多くあり、開発者でなくても気軽に試せます。その他のADBコマンドについては、公式ドキュメントなどを参照するとよいでしょう。また、スマホをroot化していれば、ADBでできることがさらに広がります。root権限があれば、より高度なカスタマイズや操作が可能になります。
ADBの使用中にエラーが出たり問題が発生したりした場合は、ぜひコメント欄でお知らせください。
-
Windows 10とスマートフォンを連携させてできる7つの便利なこと
MicrosoftはアップデートのたびにWindows 10を改良し続けており、より快適なユーザー体験を実現するための実用的かつ先進的な機能を次々と提供しています。今後のWindowsアップデートには、Windows 10をAndroidやiPhoneと同期させる新しい「Your Phone(スマートフォン)アプリ」機能が搭載されることが発表されました。この機能により、テキストメッセージの送受信はもちろん、スマートフォンの写真や通知をPC上で直接確認できるようになります。 Windows 10の「Your Phone」機能とは? Windows 10のYour Phone機能は、スマートフォン
-
SwiftKeyの便利機能を知らなかった?Androidユーザー必見の使い方ガイド
スマートフォンの普及により、メモの作成や重要なタスク処理など、日常的な作業はノートパソコンからスマホへと移り変わりました。 しかし、文章を書くあらゆる場面において、キーボードは重要な役割を果たします。Androidデバイスではキーボードの操作性を自由にカスタマイズでき、市場には数多くのキーボードアプリが存在します。その中でも「SwiftKey Keyboard」は、Android向けに提供されている最高クラスのキーボードアプリの一つです。直感的な操作、高精度な予測変換、多言語対応、マルチメディア対応を備えたタッチキーボードです。 この記事では、AndroidスマートフォンでSwiftKey K