エミュレータと実機を同時に接続した状態で、ADBで簡単に実機にソフトをイン ストールする方法

ソフトウェアを作成した後実機へUSBで転送するには、Eclipseからもできますが、adbコマンドをよく使います。

転送するには、”adb install hoge.apk”のように指定しますが、エミュレータを起動している状態で、USBで接続した実機に転送すると、「どちらにインストールしていいかわかりません」と言われます。

error: more than one device and emulator

このような時は、デバイス名を引数として指定してインストールを行うと記憶しており、打つのがめんどくさかったので、エミュレータを終了させて転送させていました。

いつのバージョンから出来るようになったのか、あるいはただ知らなかっただけなのかはわかりませんが、エミュレータを終了させなくても、実機へインストールする方法を見つけた?ので以下に記載します。

-d   - directs command to the only connected USB devicereturns an error if more than one USB device is present.-e   - directs command to the only running emulator.returns an error if more than one emulator is running.

実機へ送るには、-dを、エミュレータに送るには、-eを指定します。

また、ほとんどの場合実機には、既に同じプログラムが入ってますので、バージョンアップインストールである、-rオプションを付けるのが良いと思います。

adb -d install -r hoge.apkadb -e install -r hoge.apk

また、久しぶりにコマンドを調べてみたら、uninstall オプション-kなんてのを発見したり…

adb install [-l] [-r] <file> - push this package file to the device and install it('-l' means forward-lock the app)('-r' means reinstall the app, keeping its data)adb uninstall [-k] <package> - remove this app package from the device('-k' means keep the data and cache directories)

コマンド等、色々と復習しなおしたほうがよさそうです。

ブログ内の関連記事


コメント

このブログの人気の投稿

島へ移住の話【炊飯】

ドローンプログラミング体験教室を伊豆大島の小学校でしてきました

情報処理安全確保支援士登録証のカード型が届きました。