2

Amazon Fire TV および TV Stick 用のメディア アプリケーションがあります。ボタンを正常にキャプチャし、それに応じてイベントをカスタマイズしました。パンドラなどの他のメディア アプリがバックグラウンドで実行されている場合に問題が発生します。アプリで早送り、巻き戻しなどを行うと、その過程でパンドラでさえ変更されます.Amazonは同じ理由でアプリを拒否しました.現在のアプリでのみリモートのフォーカスを設定するにはどうすればよいですか. 以下は、リモート用の私のコードです

 @Override
public boolean onKeyDown(int keyCode, KeyEvent event){

    boolean handled = false;
    switch (keyCode){
        case KeyEvent.KEYCODE_DPAD_CENTER:
        case KeyEvent.KEYCODE_DPAD_LEFT:
            mPlayerView.seek((int)mPlayerView.getPosition()-3000);
            handled = true;
            break;
        case KeyEvent.KEYCODE_DPAD_RIGHT:
            Log.e("right","pressed");
            mPlayerView.seek((int)mPlayerView.getPosition()+3000);
            handled = true;
            break;
        case KeyEvent.KEYCODE_MEDIA_FAST_FORWARD:
            mPlayerView.seek((int)mPlayerView.getPosition()+60000);
            handled=true;
            break;
        case KeyEvent.KEYCODE_MEDIA_REWIND:
            mPlayerView.seek((int)mPlayerView.getPosition()-60000);
            handled=true;
            break;
        case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE:
            mPlayerView.play();
            handled=true;
            break;
        case KeyEvent.KEYCODE_MENU:
            subtitle=!subtitle;
            if(subsexists){
            if(subtitle) {
                mPlayerView.setCurrentCaptions(1);
                Toast.makeText(this,"Subtitles ON",Toast.LENGTH_LONG).show();
            }
            else {
                mPlayerView.setCurrentCaptions(0);
                Toast.makeText(this,"Subtitles OFF",Toast.LENGTH_LONG).show();
            }
            }
            handled=true;
            break;
    }
    return handled || super.onKeyDown(keyCode, event);
}
4

1 に答える 1

2

FireTV 開発者向け FAQ のこのセクションを参照してください。具体的には、次のコードを実装する必要があります。

また、別のメディア プレーヤー アプリがユーザーの注意を引いている場合は、適切に制御を放棄することも確認する必要があります。

于 2015-12-29T17:05:22.477 に答える