0

BlackBerryで10秒の長さのビデオを再生したい。ビデオの再生が完了したら、別の画面に移動します。このために、プレーヤーの現在のステータス(たとえば、再生、停止、一時停止など)を知りたいです。

これが私が今使っているコードです。この問題についてサポートが必要です。

InputStream is = getClass().getResourceAsStream("/video/battery_tip.mp4");
player = Manager.createPlayer(is, "video/mp4");
player.prefetch();
player.realize(); 
VideoControl vc = (VideoControl) player.getControl("VideoControl");
Field fld = (Field) vc.initDisplayMode(VideoControl.USE_GUI_PRIMITIVE, "net.rim.device.api.ui.Field");
vc.setDisplayFullScreen(true);
vc.setVisible(true);
add(fld);
player.start();
4

1 に答える 1

1

インターフェイスPlayerListenerを確認してください。

PlayerListenerは、Playerによって生成された非同期イベントを受信するためのインターフェイスです。アプリケーションはこのインターフェースを実装し、その実装をPlayerのaddPlayerListenerメソッドに登録できます。

プレーヤーの現在のステータスを取得するには、そのインスタンスをプレーヤーに追加しますPlayerListener

player.addPlayerListener(new MyPlayerListener());


のデモ実装PlayerListener

class MyPlayerListener implements PlayerListener {
    public void playerUpdate(Player player, String eventType, Object eventData) {
        try {
            if (eventType == PlayerListener.END_OF_MEDIA) {
                // go to next screen
            } else if (eventType == PlayerListener.CLOSED) {
                // go to next screen
            } else if (eventType == PlayerListener.ERROR) {
                // go to next screen
            } else if (eventType == PlayerListener.STOPPED) {
                // go to next screen
            }
        } catch (Exception e) {
        }
    }
}
于 2012-06-11T13:16:06.160 に答える