私は、RemoteControlClientクラスを使用して、アプリケーションでロックスクリーンプレーヤーをサポートしようとしています。 1つの問題は、トランスポート制御フラグが正しく動作しないように設定されていることです。Android 4.x RemoteControlClient.setTransportControlFlags()が機能していませんか?
mRemoteControlClient.setTransportControlFlags(
RemoteControlClient.FLAG_KEY_MEDIA_PLAY_PAUSE |
RemoteControlClient.FLAG_KEY_MEDIA_STOP);
これは、以前のアイコンを表示し、アイコンを一時停止します。たとえば
は、私はちょうどノー前/次の再生/停止アイコンを表示しようとしています!どうして?
停止/再生ボタンを押したときに状態がさらに悪化する場合は、KEYCODE_MEDIA_STOP
またはKEYCODE_MEDIA_PLAY
になるはずです。KEYCODE_MEDIA_PLAY_PAUSE
と表示されます。
これを正しく実行していることが判明した場合、これはAndroid側での不満足な開発です。
私は、以前のボタンと同じ問題に気づいた、そしてそれを回避する方法があるようには思えません。 FLAG_KEY_MEDIA_PLAY_PAUSE、FLAG_KEY_MEDIA_STOP、KEYCODE_MEDIA_PLAYの場合は、FLAG_KEY_MEDIA_PLAY_PAUSEは指定した内容に関係なく常に使用されているようです。ただし、FLAG_KEY_MEDIA_PLAY_PAUSEからKEYCODE_MEDIA_PLAY_PAUSEを受け取る必要があります。それがうまくいけば、FLAG_KEY_MEDIA_PLAYを指定してKEYCODE_MEDIA_PLAYを受け取ることができます。 –
不適切なメディアボタンについては、http://code.google.com/p/android/issues/detail?id=29920を参照してください。 – svenmeier
バグURLをありがとう。 – Jona