【问题标题】:How can I play MP4 video through a direct link in Android video player?如何通过 Android 视频播放器中的直接链接播放 MP4 视频?
【发布时间】:2014-10-01 14:01:34
【问题描述】:

我正在制作一个 Android 应用程序,我需要在其中通过直接下载链接在 android 默认本机视频播放器中播放 mp4 视频。

要打开 Android 视频播放器,我使用以下代码

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4?download=1"));

intent.setDataAndType(Uri.parse("http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4?download=1"), "video/*");

startActivity(intent);

这里的 URL 是 mp4 视频的直接下载链接。 此代码打开视频播放器,但视频未加载到视频播放器中

我也用过这个网址

http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4

此 URL 包含 html5 视频播放器,但视频未在 Android 视频播放器中加载

但是当我使用 3GP 视频的链接时

http://www.androidbegin.com/tutorial/AndroidCommercial.3gp

然后就可以了。

请帮忙。

【问题讨论】:

    标签: android android-intent video android-video-player


    【解决方案1】:

    试试我的方法

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

    然后将权限:android.permission.WRITE_EXTERNAL_STORAGE 添加到清单中。


    更新

    首先,视频可能有问题,因为并非所有视频都是safe for streaming

    其次,并非所有设备都设置了支持ACTION_VIEW 流式传输的video/mp4 文件的活动。您应该使用PackageManagerqueryIntentActivities() 来确认startActivity() 调用是否会找到匹配项,或者处理您得到的ActivityNotFoundException

    您需要检查 Android Video Encoding Recommandations 。确保您的视频使用支持的代码进行编码,并且您的视频符合分辨率。视频正确编码后,流式传输工作正常。

    另外,如果您还没有注意到,通常模拟器不会播放它们,您必须在真实设备上进行测试。

    【讨论】:

    • 我正在真实设备上测试它,但我认为问题出在视频流中
    • 视频流问题是发生在我这边还是服务器端??请告诉我
    • 谢谢,它适用于我(真实设备和模拟器)与“startActivity(intent);”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多