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 是接收 Players 产生的异步事件的接口。应用程序可以实现此接口并使用 Player 中的 addPlayerListener 方法注册其实现。

要获取Player的当前状态,请为其添加一个实例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 回答