ADB.exeを使ってAndroidにファイルを転送する方法

ADBインターフェースのエラー モバイル
ADB Interfaceエラー

Android 6.0 Marshmallowを入れてみたら、USBケーブルで接続してもアンドロイド端末内のファイルにアクセスできなくなりました。既知のバグのようです。

あとで探したら回避方法がありましたが、そのときには気づかず、Google AppsをADB.exeを使ってアンドロイド端末に送信しました。

そのときのADB.exeのコマンド使用例です。

ADB.exe

ADB.exeはアンドロイドの開発キット、Android SDKに含まれているプログラムです。DLLと一緒に置いておけばSDK本体がなくても動作します。

が、ドライバをパソコンにインストールする必要があるので、通常Android SDKのインストールが必要です。

Android SDKのインストール

WindowsにAndroid SDKのADB/Fastbootをインストールする方法
Androidスマートフォンをリカバリーしたりするのに、ADB/Fastbootプログラムが必要になるときがあります。 新しいパソコンに導入したので、方法を残しておきます。 (備考:Windows 7までは簡単にADBを使用でき...

ADBドライバのインストール

WindowsにAndroid端末固有のUSB接続ドライバを設定する方法
Android SDKをインストールし、Platform-toolsとGoogle USB DriverをAndroid SDKにインストールしたらもう少しです。 次に、Windowsにドライバをインストールする必要があります。先の作...

Windows 8、Windows 10では、未署名ドライバのインストール設定が必要になる場合があります。

Windows10で署名のないドライバをインストールする(ハッシュがない)
久しぶりにAndroidのADBドライバーをインストールしようとしたら躓きました。メインノートパソコンとしてつかっているThinkpad X1 CarbonがWindows 10になっているため、ドライバーのインストールポリシーが厳しくなっ...

ADBなどの機能

ADB/Fastbootを使ってアンドロイドのシステム復旧
Android端末がいかれてしまいました。電源は入るので、Android SDKを使ってドライバを入れたり、ROMファイル+Google Appsを入手したりと復活させるための準備をしました。Android復活までの手順についてはこちらの記...

ADBモードで接続する

ADBを使うためにはまず、アンドロイド端末の開発者オプションを有効化する必要があります。設定中の端末情報からビルド番号を7回タップすると有効化します。

開発者オプションの中にある、USBデバッグを有効化した状態でUSB接続すれば、ADBモードでパソコンに接続できます。

つなげただけでは”unauthorize”という状態で端末の操作ができませんので、アンドロイド端末上に出てくる認証画面で操作の許可を出す必要があります。間違って消してしまった場合、一度ケーブルを抜いて再接続したり、USBデバッグを一旦無効化して再度有効化するなどの操作をすればまた出てきます。

ADB.exeで接続開始

ADB.exeはAndroid SDKのplatform-toolsフォルダ内に入っています。

コマンドプロンプトを開き(スタートメニューでcmd.exeを起動する)、該当ディレクトリまで移動します。

adb devices

と入力すれば、ADBサービスが自動的に起動して接続してくれます。デバイスIDと接続状態をリストアップしますが、接続状態がunauthorizedになっていたり、接続できていない場合があります。

その場合、上記の方法を試したり、

adb kill-server
adb devices

で接続できるようになることがあります。

ファイル送信コマンド

ADBを使ったファイル送信コマンドはパソコンからアンドロイドへの送信(PUSH)とアンドロイドからパソコンへの送信(PULL)があります。

いずれも、<送信側><受信側ディレクトリ>をコマンドラインで指定します。

例えば”c:\android\test-files.zip”をsdcardディレクトリへ送信したい時には

adb push C:\android\test-files.zip /sdcard/

のように指定します。(カレントディレクトリの場合、フルパスは不要)

受信側ディレクトリはROOTから指定する必要があり、アンドロイドのファイルブラウザでは見えないかもしれません。

シェル機能

ADB.exeにはAndroidのシェルを利用する機能も備わっています。

adb shell

で起動でき、

cd ..
cd ..
ls

などのコマンドを送信するとルートからのディレクトリ構造がわかります。 私のアンドロイド端末では、内部ストレージは/sdcard/に割り当てられていましたので、内部ストレージにファイルを送信するには、送信先ディレクトリに/sdcard/を指定すれば内部ストレージに保存できます。

送信スピード、エラー

ADBコマンドを使用する場合、USB 2.0接続でつなげたほうがエラーが起こりにくいと言われています。先ほど試したときには3.5MB/秒程度の転送速度でした。

ファームウェアやGoogle Appsなどアンドロイド端末の復旧に必要なファイルは500MB以上あったりしますから、転送に1分以上かかることがあります。

転送している間、グラフィカルな進捗バーが表示されることはなく、画面は全く動きませんがしばらく待っていれば終わります。低品質なケーブルでは転送速度が遅い上に転送エラーが出るため、失敗した場合別のケーブルを使うと上手く行きます。

再起動

必要なファイルが転送できたら、

adb reboot recovery
adb reboot bootloader

などのコマンドを送信してリカバリーを起動させるか、アンドロイド端末上の操作でリカバリーを起動します。

コメント

タイトルとURLをコピーしました