从adb给手机发送广播:
adb shell am broadcast -a com.android.test --es test_string "this is test string" --ei test_int 100 --ez test_boolean true
后面的e代表参数extra,--es代表extra是string类型,--ei代表int类型,--ez代表boolean类型。
让手机播放和停止音乐就是借助于广播来实现的:
让手机播放音乐:adb shell am broadcast -a com.android.music.musicservicecommand --es command "play"
让手机暂停音乐:adb shell am broadcast -a com.android.music.musicservicecommand -es command "pause"
对应的java代码实现:Intent i = new Intent("com.android.music.musicservicecommand"); i.putExtra("command", "pause"); sendBroadcast(i);
通过adb查询手机是否在播放音乐:
adb shell dumpsys media.player
由于我们只需要返回结果的一部分,所以可以改成:adb shell dumpsys media.player | grep ‘AudioTrack::dump‘ -A 4 | grep ‘state‘
返回的结果会类似下面这段:AudioTrack::dump stream type(3), left - right volume(1.000000, 1.000000) format(16777216), channel count(2), frame count(262144) sample rate(44100), speed(1.000000), status(0) state(0), latency (6040)
其中:
state(0) - playing
state(1) - interrupted by popup
state(2) - paused / stopped
参考链接: