我想在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();
答案 0 :(得分:1)
检查界面PlayerListener。
PlayerListener是用于接收异步事件的接口 由玩家生成。应用程序可以实现此接口和 使用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) {
}
}
}