2011-07-08 34 views
2

几个星期前,我决定制作一个应用程序,这个应用程序只包含视频链接,允许用户每当点击任何按钮链接时观看剪辑。如何在Android中使用Intent播放视频?

我使用此代码播放视频:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri.parse("http://www.yourvideo.mp4"), "video/mp4"); 
view.getContext().startActivity(intent); 

然而,在某些情况下,这种代码不会在多个设备上工作,我的应用程序的一些用户表示,强制关闭时,他们按整个应用程序任何链接。我实际上在我的G1和Droid X中尝试过,它工作得很好。

有什么我做错了吗?请帮助我,我会非常感激。

+1

如果他们开始纵向模式,然后切换到横向模式,你会有问题吗? –

+0

只要你按下链接按钮,整个应用程序将处于横向模式,它从不切换到纵向模式。 – user739375

回答

6

首先,视频可能有问题,因为并非所有的视频都是safe for streaming。其次,并非所有设备都可以设置支持ACTION_VIEWvideo/mp4流式传输文件的活动。您应该使用PackageManagerqueryIntentActivities()来确认startActivity()呼叫是否会找到匹配项,或者处理您获得的ActivityNotFoundException

+0

你能为此提供代码吗? @commonsware – TapanHP

3

我写了这个:

Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri.parse("http://www.yourvideo.mp4"), "video/mp4"); 

然后我添加的权限:android.permission.WRITE_EXTERNAL_STORAG E,我的清单。