错误侦听器中的启动意图



我想在onErrorListener中启动一个意图。默认情况下,如果视频无法启动,MediaPlayer 将停止,显示弹出窗口"无法播放视频"并返回到主要活动。我想做的是,在理想情况下,在MediaPlayer.ErrorListener中,显示我自己的弹出窗口,放置一个正按钮,当点击正按钮时,我自己启动一个新的意图,把我带回主要活动。

原因是处理连接错误或没有会更容易。实际上,我尝试连接RTSP流,如果我能检测到用户无法访问ipcam的原因,则无需使用RTSP客户端来处理连接状态等。

无论如何,这似乎是不可能的,因为您无法在返回某些内容的方法中启动另一个意图。 并且方法 onError 需要布尔返回,所以我什至无法正确启动新意图(也不显示弹出窗口)

videoView.setOnErrorListener(new OnErrorListener() {
    @Override
    public boolean onError(MediaPlayer mp, int what, int extra) {
        Intent intent = new Intent(PlayVideo.this, IPCamInformationsActivity.class);
        intent.putExtra("error", "true");
        startActivity(intent);
        return true;
    }
});

将代码更改为:

@Override
    public boolean onError(MediaPlayer mp, int what, int extra) {
        try{
        return true;
        }
        finally{
         Intent intent = new Intent(PlayVideo.this, IPCamInformationsActivity.class);
         intent.putExtra("error", "true");
         startActivity(intent);
        }
    }

最新更新