やりたい事
- Androidアプリのファイルアップロードの検証をする際に、アップロード用のダミーデータを端末に送る
- 別途、ファイラなどのアプリをダウンロードはできればしたくない
環境
- Mac : MacBook Pro (Retina, 15-inch, Mid 2015)
- adb : 1.0.39
adbとは
Android Debug Bridge(adb)は、
エミュレータ、インスタンスや接続されたAndroid端末と通信できる用途の広いコマンドラインツールです。
参考: https://developer.android.com/studio/command-line/adb.html?hl=ja
adbのインストール
Android StudoをインストールするとGUI(SDK Manager)からAndroid SDKをインストールする事ができます。
SDKがどこにインストールされたかは、設定の「Appearance & Behaivior」->「System Settings」->「Android SDK」で確認する事ができます。
今回使用するadbは、android_sdk/platform-tools/ にあります。
次に上記のpathを通します。ご自分のシェルの環境にあった方法でPathを通してください。こんな感じですかね。
export PATH=$PATH:/Users/<user name>/Library/Android/sdk/platform-tools
は適宜置き換えてください。
完了したら adb
とターミナルに入力して、
$ adb
Android Debug Bridge version 1.0.39
...
みたいに応答があればOKです。
「command not found」が表示されてします時は、ターミナルの再起動または、リソースファイル .bashrc
などの再読み込みをお試しください。
adbコマンドを使う
このようにadbには沢山の機能があります。また、端末でのデバッグはUSB経由とWifi経由とありますが、今回はUSB経由で行います。
・端末の照会
端末を確認するには、 adb devices
コマンドを使用します。
$ adb devices
List of devices attached
* daemon not running. starting it now at tcp:5037 *
* daemon started successfully *
<serial_number> device
・端末のディレクトリ構成を確認する
adb shell
コマンドを実行すると(USBで繋いでいる端末が1つでemulatorが立ち上がっていない)端末にアタッチする事ができます。なので、そこで ls -la
などを実行する事で構成を確認する事ができます。
今回は /sdcard/Download/
にファイルを転送したいと思います。
・端末にファイルを転送する
開発PCから端末へファイルを転送する場合は adb Push
コマンドを使用します。
$ adb push /path/to/local_file /path/to/device
例えば
$ adb push ~/temp.png /sdcard/Download/
こんな感じです。
終わりに
いかがだったでしょうか。まだまだ使いこなせているというレベルにはほど遠いですが、少しずつ試していきたいと思います。他に何ができるか知りたい方はドキュメントに記載されていますので、確認してみてください。
最後までお読みいただきありがとうございました。