1

現在のメディア再生を制御するために Intent.ACTION_MEDIA_BUTTON を使用してアプリを作成しましたが、お客様から、Samsung ミュージック プレーヤーで動作しないという報告がありました。Samsung のメディア プレーヤーがメディア ボタンをサポートしていないかどうかを知っている人はいますか? もしそうなら、それを修正する方法はありますか?

4

1 に答える 1

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 プレーヤーでは機能しませんでしたが、誰かの役に立つかもしれません...

于 2012-05-15T07:44:30.527 に答える