環境について
Windows 環境からの接続を試したが、他の環境でも同様の手順が使えるはず。
準備:adb の導入
準備:実機とUSBケーブル
当然ながら作業マシンと Android 実機を USB ケーブルで繋いでおく。
ドライバ周りはメーカーごとに設定が違ったりするのでググって設定。
端末に入っているパッケージ一覧を確認する
以下コマンドで、端末に入っている全パッケージ一覧を取得できる。
> adb shell pm list packages -f
以下は僕の端末で試してみた結果
> adb shell pm list packages -f package:/system/framework/framework-res.apk=android package:/vendor/overlay/android-res.apk=android.res.overlay package:/data/app/app.game.rentaapps-2.apk=app.game.rentaapps package:/data/app/com.DanielBach.FrequenSee-1.apk=com.DanielBach.FrequenSee package:/data/app/com.amazon.kindle-1.apk=com.amazon.kindle package:/system/app/Tag.apk=com.android.apps.tag package:/system/app/BackupRestoreConfirmation.apk=com.android.backupconfirm package:/system/app/Bluetooth.apk=com.android.bluetooth …
たとえば「package:/system/app/Tag.apk=com.android.apps.tag」の行は、パッケージファイル名が「/system/app/Tag.apk」でパッケージ名が「com.android.apps.tag」って感じ。
とにかくいっぱい出るので絞り込みたい。
apk のダウンロード(プル)
上記手順でパッケージのファイル名が分かったことと思う。
adb の pull コマンドに対してパッケージのファイル名を指定すれば、指定のパッケージ (apk) を手元にダウンロード(プル)することができる。
> adb pull /data/app/com.mysamp.reversi-1.apk 2188 KB/s (298120 bytes in 0.133s)
ファイルサイズが小さければほぼ一瞬で終わる。これで手元(カレントディレクトリ)にファイルが転送できたはずだ。
おしまい
後は好きに料理すれば良い。