以下是使用视频播放网址的代码
String urlVideo = "http://www.youtube.com/cp/vjVQa1PpcFPLrLo9hkR90zKx_XHP5kMNaNb-_bE3v0s=";
VideoView video = (VideoView) findViewById(R.id.videoView1);
Log.d("You", urlVideo);
video.setVideoURI(Uri.parse(urlVideo));
MediaController mc = new MediaController(this);
video.setMediaController(mc);
video.requestFocus();
video.start();
mc.show();
它抛出错误,无法启动视频
这是logcat消息
ERROR/MediaPlayer(1765): error (1, -2147483648)
错误/ MediaPlayer(1765):错误(1,-2147483648) DEBUG / VideoView(1765):错误:1,-2147483648
此代码可以在设备上正常运行吗? 你能解释错误代码和错误背后的原因吗?
修改:非常感谢您的建议。实际上我的应用程序需要在自己的设计中播放视频,并根据你的建议和我在网上看到的其他一些帖子可以得出结论,它不能以我想要的方式播放,我必须在网络上打开它视图。感谢...
答案 0 :(得分:5)
确切的错误代码是MEDIA_ERROR_UNKNOWN(未知错误......非常有用)。
失败的原因是您使用的链接直接转到Flash视频。 VideoView不支持Flash,因为Dianne如此简洁地加入了这个post ......
展示该视频的最佳方式可能是将其打包在Intent中,让浏览器或YouTube应用播放它。如果用户拥有其他一些支持Flash的应用,例如Skyfire,它也会显示在选项中。但是,这通常仅适用于视频的观看链接,因此在您的情况下为http://www.youtube.com/watch?v=fX_wt7cPCU4。
String videoUrl = "http://www.youtube.com/watch?v=fX_wt7cPCU4";
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(videoUrl));
startActivity(Intent.createChooser(intent, "Play Video Using");
在安装了YouTube应用的设备上,这将作为一个选项出现,但并非所有YouTube视频都可以出于某种原因在移动应用中播放。
希望有所帮助!