有熟悉VLC播放器的吗?通过Intent传递url总是失败

danscort2000 2017-08-03 03:08:13
VLC播放器, android平台
4.1
按照官网的示范代码,[但是它的示范代码是本地文件]
int vlcRequestCode = 42;
Uri uri = Uri.parse("file:///storage/emulated/0/Movies/KUNG FURY Official Movie.mp4");
Intent vlcIntent = new Intent(Intent.ACTION_VIEW);
vlcIntent.setPackage("org.videolan.vlc");
vlcIntent.setDataAndTypeAndNormalize(uri, "video/*");
vlcIntent.putExtra("title", "Kung Fury");
vlcIntent.putExtra("from_start", false);
vlcIntent.putExtra("position", 90000l);
vlcIntent.putExtra("subtitles_location", "/sdcard/Movies/Fifty-Fifty.srt");
startActivityForResult(vlcIntent, vlcRequestCode);
///////////////////////
我不需要那么复杂,就想传递个http连接的网络资源文件过去,然后进行播放
改写为
intent.setPackage("org.videolan.vlc");
intent.setDataAndType(uri, "video/*");
startActivity(intent);
////////////////////
但是VLC播放总是失败
检查服务器端日志
发现VLC的http请求头部分,是个/ 没有我们给出的目录文件,那当然无法打开

但是如果同样的连接,我直接打开VLC播放器, 选择打开流方式
VLC播放器是可以正确响应并播放的

也就是,问题处在了这个intent, 这个url的参数部分没有被VLC正确识别或者获取
同样的问题发生在ftp连接上
有大神知道如何解决吗?

备注,不是代码问题,因为同样的intent,通过调用系统播放器或者QQ播霸,是可以正确播放http连接的
因此问题处在调用上,不知道如何正确的给VLC传递url连接 [非本地文件]

另外,windows平台的VLC播放器调用是没有任何问题的,同样的流程,可以完美支持,问题在android端,谢谢
...全文
352 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
danscort2000 2017-08-04
  • 打赏
  • 举报
回复
https://trac.videolan.org/vlc/ticket/15741 确定是VLC播放器本身的bug,2年时间,居然这么明显的一个问题都不能修复,真是服了

80,359

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧