【问题标题】:Android play video in raw folder (launching gallery from intent)Android 在原始文件夹中播放视频(从意图启动画廊)
【发布时间】:2017-07-31 03:24:55
【问题描述】:

所以我知道对此有很多问题,但似乎都有相同的答案,这不是我想要的。

我的项目的raw 文件夹中有一个视频,我可以使用VideoView 在我的应用程序中播放它。但是,我想利用所有手机附带的图库视频播放器,以便用户可以暂停或滚动视频。

当我尝试使用 ACTION_VIEW 意图打开我的视频时,似乎没有可以处理该意图的应用程序。我的手机文件夹中有相同的视频,图库播放器可以正常播放。我还下载了 VLC,但列表中仍然没有显示任何应用程序。这是不可能的,还是我错过了什么?

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("android.resource://" + ActivityMain.PACKAGE_NAME + "/" + R.raw.test));
intent.setDataAndType(Uri.parse("android.resource://" + ActivityMain.PACKAGE_NAME + "/" + R.raw.test), "video/*");
startActivity(Intent.createChooser(intent, "Complete action using"));

【问题讨论】:

    标签: android video android-intent gallery


    【解决方案1】:

    很少有应用支持android.resource 方案。将视频复制到文件并播放,或嵌入您自己的视频播放器。

    【讨论】:

    • 但是我可以用手机自带的图库播放它。它也不支持吗?每部手机都配备一个强大的视频播放器但无法使用它有什么意义?
    • 所以你是说将视频从 raw 复制到手机上的某个位置,然后通过画廊打开它会起作用吗?
    • @aspirino67:“每部手机都配备一个强大的视频播放器但无法使用它有什么意义?” -- 大约有 20 亿台 Android 设备,分布在数千种设备型号中。这些将预装数百个不同的视频播放器应用程序。并不是所有的都是“健壮的”。此外,将嵌入在其他应用中的视频作为原始资源播放并不是特别常见的情况。
    • @aspirino67:“所以你是说将视频从 raw 复制到手机上的某个位置,然后通过画廊打开它会起作用吗?” -- 假设它是一个有效的视频文件,当然。您复制的视频与从网站下载的视频没有区别。
    【解决方案2】:

    我认为它应该可以帮助你,使用video/mp4...

    Uri uri = Uri.parse("android.resource://" + getPackageName() + "/"+R.raw. test);
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);intent.setDataAndType(uri, "video/mp4");
    startActivity(intent);
    

    【讨论】:

    • 还是不行,没有应用可以处理这个意图。
    • 并非所有设备都设置了活动以支持流式传输的视频/mp4 文件的 ACTION_VIEW。
    猜你喜欢
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 2014-03-04
    • 2012-06-26
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多