我必须重构一些旧代码,目前正碰壁。显然,这段代码用于加载不同类型的视频格式,但现在它引入了 .MP4,这意味着它曾经调用的 WebView 无法再播放视频。鉴于我的时间非常有限,我试图在 VideoView 中播放视频。视频加载并播放,但启动 VideoView 时活动堆栈丢失。
我已经覆盖了 MediaController 类,至少能够捕获返回键事件。我的问题是:如何加载此 VideoView 并保留活动堆栈?
感谢您的时间和耐心。
下面是调用 VideoView 的代码:
public void onListItemClick(ListView l, View v, int position, long id) {
Video video = (Video) this.getListAdapter().getItem(position);
track("Video", "VOD", video.title);
String url = video.link.substring(29);
if(DEBUG_MODE)
Log.d("TDF", url);
url = Kriptonic.getEncryptedURL(url);
videoView = new VideoView(_myActivity);
_myActivity.setContentView(videoView);
Uri uri = Uri.parse(url);
mc = new CustomMediaController(_myActivity);
videoView.setMediaController(mc);
videoView.setVideoURI(uri);
videoView.start();
}
编辑:
我通过不偷懒解决了这个问题。只是创建这样的视频而不将其附加到自己的活动中只是糟糕的编码。我创建了一个简单的活动,在上面的片段中启动了一个意图来调用该活动,一切都很好。
...对于除 ICS 之外的所有内容。它不会在 ICS 中运行。但这将是一个不同的问题。