現在のメディア再生を制御するために Intent.ACTION_MEDIA_BUTTON を使用してアプリを作成しましたが、お客様から、Samsung ミュージック プレーヤーで動作しないという報告がありました。Samsung のメディア プレーヤーがメディア ボタンをサポートしていないかどうかを知っている人はいますか? もしそうなら、それを修正する方法はありますか?
1 に答える
解決策はありませんが、Samsung Galaxy S / Android 2.1 テスト ユニットのストック メディア プレーヤーが「再生/一時停止の切り替え」(KEYCODE_MEDIA_PLAY_PAUSE) または「次のトラック」(KEYCODE_MEDIA_NEXT) に応答しないことを確認できます。 )なので、他の人にも応答しないのは当然です。
インラインスイッチ/マイクを使用してストックヘッドセットを使用して「再生/一時停止を切り替える」ときに何が起こるかをlogcatを使用して追跡すると、KEYCODE_HEADSETHOOKを送信していることがわかります。これはコードで送信でき、少なくとも「再生/一時停止を切り替えます」 ' ストック メディア プレーヤーで。
しかし、それだけです。ちょっとゴミです、本当に。頑張れ、サムスン!
EDIT:もう少し掘り下げた後、Samsung Media Playerで動作するように次のものを取得しました:
Intent musicIntent = new Intent();
musicIntent.setAction("com.sec.android.app.music.musicservicecommand.togglepause");
sendBroadcast(musicIntent);
と:
Intent musicIntent = new Intent();
musicIntent.setAction("com.sec.android.app.music.musicservicecommand.next");
sendBroadcast(musicIntent);
これがどれほど一般的に適用できるかを知りたいと思います-私には少し壊れやすいようです...
そして最後に、私が見つけたのと同じ行に沿って (musicIntent.setAction() 行を次のように置き換えます):
musicIntent.setAction("com.android.music.musicservicecommand.next");
musicIntent.putExtra("command", "next"); // or "next" or "previous"
これは、Samsung プレーヤーでは機能しませんでしたが、誰かの役に立つかもしれません...