【问题标题】:Can't play video from raw folder using dynamic path无法使用动态路径从原始文件夹播放视频
【发布时间】:2013-01-02 18:33:36
【问题描述】:

我在编写视频播放器时有一种奇怪的行为。我有一个针对 mp4 视频的 html5 菜单。当您单击视频时,将处理路径,并且本机视频播放器意图将开始播放视频。我的视频放在“原始”文件夹中。

当我使用静态路径时,视频播放效果非常好:

String uriPath = "android.resource://" + getPackageName() + "/" + R.raw.video1;

当我使用以下路径时,无法播放:

video_title = getIntent().getExtras().getString("video_title");

String uriPath = "android.resource://" + getPackageName() + "/" + "R.raw."+video_title;

请注意,我在主要意图中删除了文件的扩展名,因此变量“video_title”将保存没有扩展名的视频标题。

【问题讨论】:

  • 您是遇到错误还是视频无法播放?
  • 我收到“无法播放此视频”
  • 制作日志并检查两个 uriPath 字符串,然后您可以看到差异。也许您的 video_title-String 得到了错误的结果。
  • 我使用了日志,变量“video_title”很好。 android.resource://com.erc.swf_player/R.raw.video1
  • 很抱歉这些问题,但没有相关代码,我看不到任何错误。如果您的 video_title 返回此完整路径:android.resource://com.erc.swf_player/R.raw.video1,则您的路径加倍。如果这是错误,您的 uriPath 如下所示:android.resource://com.erc.swf_player/R.raw。 android.resource://com.erc.swf_player/R.raw.video1 。只需检查输出字符串 uriPath。

标签: android html android-videoview


【解决方案1】:

我通过更改 uriPath 变量解决了这个问题:

String uriPath = "android.resource://" + getPackageName() + "/" + "R.raw."+video_title; // BAD

String uriPath = "android.resource://" + getPackageName() + "/" + "raw/"+video_title; // GOOD

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 2017-07-31
    • 2014-03-04
    • 2018-04-27
    相关资源
    最近更新 更多