gpt4 book ai didi

android - Cordova 3.4 Android 本地视频文件无法播放

转载 作者:搜寻专家 更新时间:2023-11-01 08:00:15 25 4
gpt4 key购买 nike

几天来,我一直在尝试通过 cordova 3.4 应用程序在我的 galaxy tab 4.2 上播放本地视频文件。

当我使用绝对 http url 时,视频播放效果很好。

这是我尝试过的:

  1. 我按照此处的建议将视频文件放在 assets/res/raw 文件夹中:Loading video failed on html5 phonegap

结果:我点击播放后 -> 旋转加载图标没有视频

  1. www 文件夹中的视频:

结果:与#1 相同

<video id="myvideo" controls="controls" width="400">
<source src="file:///android_asset/www/gruppenruf.mp4" />
</video>

结果:与#1 相同

我把文件夹的权限全部设置为777

然后我尝试使用 https://github.com/jaeger25/Html5Video插件

安装插件后我得到的是: 03-06 18:27:06.953: E/Web 控制台 (22530): 未捕获类型错误: 无法读取未定义的属性 'html5Video':37

我想做的就是在 android 上播放本地视频文件。这真的那么复杂吗?

如有任何帮助,我们将不胜感激。

最佳答案

看看this邮政。文件插件(至少 <=v1.3.1)有一个针对安卓设备的错误。另外,我不确定 jaeger25/Html5Video 插件是否仍在使用 cordova 3.6.x。

一种可行的方法是以编程方式将您的视频文件从 www/gruppenruf.mp4 复制到应用程序可在运行时播放的位置。您可以为此使用 file:///data/data/com.example.MyPackage/files/gruppenruf.mp4FileTransfer cordova 插件会处理这个。

var myFilename = "gruppenruf.mp4";
var myUrl = cordova.file.applicationDirectory + "www/" + myFilename;
var fileTransfer = new FileTransfer();
var filePath = cordova.file.dataDirectory + myFilename;

fileTransfer.download(encodeURI(myUrl), filePath, (function(entry) {
/*
res = "download complete:\n"
res += "fullPath: " + entry.fullPath + "\n"
res += "localURL: " + entry.localURL + "\n"
alert(res += "nativeURL: " + entry.nativeURL + "\n")
*/
var vid = document.getElementById("myvideo");
vid.src = entry.nativeURL;
//vid.loop = true;
}), (function(error) {
alert("Video download error: source " + error.source);
alert("Video download error: target " + error.target);
}), true, {
headers: {
Authorization: "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
}
});

如果它不播放,您可能需要将点击事件监听器链接到它或使用 vid.play(); 启动视频。

关于android - Cordova 3.4 Android 本地视频文件无法播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22230783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com