日々の雑記

自分がやったことを記録するの。

Android SDKに触ってみる。その2

 

 

<前回の記事>

端末はデレステ推奨端末(らしい)Xperiaを使っています。

 

 

 

"adb version"を使うとadbのバージョンがわかるらしい。

 私の環境はこちら。

$ adb version

Android Debug Bridge version 1.0.32

Revision 09a0d98bebce-android

 

前回で一通り設定終わったし、あとは接続するだけ!

……だといいな! 

 

まずは

Android ADB Shell を使うためには(USB接続含む) | IT Memo

をみて、Android端末の「設定」から「システム」>「開発者向けオプション」> 「デバッグ」>「USBデバッグ」にチェックを入れる。

 

 

開発者向けオプションがわからないときはここを見る。

juggly.cn

 

f:id:nezumitori:20160307212933p:plain

こんな感じの画面になった。

 

 

 

そしてUSBケーブルでパソコンに接続!

$ adb devices 

を入力してデバイスの確認!

 

動かない!

 

挿し直す!再起動する!

 

動かない!

  

……でもAndroid側の充電はできてるから、ケーブルは大丈夫だと思うの。

 

 

こんな記事を見つけた。

Macにgalaxy S2をつなげたのに認識してくれなかった - ななしのブログ

 

 

どうやら使っていたmicroUSB-USBのケーブルが充電専用でデータやり取りできないみたいだった。

 

ケーブルを変えて再び確認。

 

$ adb devices

List of devices attached

 

 

と表示されるようになった。

 

 

Android側で接続の確認みたいな画面が出てきていたのでOKすると、

$ adb devices

List of devices attached

 

CB5A1W8ZV2 unauthorized

 

と認識されるようになりました。

 

ケーブルが原因でした。

 

 

 

ちなみに

$ system_profiler SPUSBDataType

 

Macに接続されているデバイスが確認できるみたい。

 

 

コマンド確認

 

$ adb kill-server

でadbの停止。

 

$ adb start-server

で起動。

 

ここら辺は動作が不安定な時に使えばいい。

 

 

次に

$ adb -s CB5A1W8ZV2 shell

 でShellを起動。 (端末にアクセス?)

 

"CB5A1W8ZV2"の部分は $adb devicesで出てくるやつ。

 

Shell上では

$ am start -a android.intent.action.VIEW -d URL

を入力するとandroid上でブラウザが起動するし、

 

$ pm list packages

を入力すると入っているパッケージ一覧が確認できる。

 

 

 

文字入力には

$ adb shell input text hogehoge

と入力する。

 

$ adb shell input keyevent 67 

と入力すると一文字消える。(Backspace)

 

 

 

このkeyeventはなかなかに種類が豊富。

KeyEvent | Android Developers

を確認すると使いこなせるようになるかも。

 

 

 

ちなみにshell上では

$ input text hogehoge 

と入力すると、

$ adb shell input text hogehoge

のように文字を入力できる。

 

 

つまりshellでは"adb shell"が省略できるということかも。

詳しくは知らない。

というか普通の状態とshellの状態が面倒なので片方だけ覚えれば良いと思う。

 

なんとなくここまで使えるようになったので、本編に移るの。

 

本編

 

デレステでスクショが撮りたいがためにここまできました。

 

Random Stuff: Grab Android screenshot to computer via ADB

から、

 

  1. $adb shell screencap -p /sdcard/screen.png
  2. $adb pull /sdcard/screen.png
  3. $adb shell rm /sdcard/screen.png

の順に実行するとadbでスクリーンショットができるそうです。

 

sdcardとか書いてあるけど別にsdささなくてもいいみたい。

あと、削除用なので3はいらないかも。

 

 

キャプチャのscreencapと

画像を持ってくるpullだけ覚えれば良いや。

 

 

続く