我正在Cordova中构建一个应用程序,其中应用程序的第一页包含设置为自动播放的视频标记.我没有加载文件的任何404错误…文件只是不会播放.视频只是黑色,0:00时间长度不会改变. 奇怪的
奇怪的是,我在视频文件的Chrome远程开发工具中收到两个网络请求:第一个显示(成功)状态,第二个状态为(已取消).我尝试过为文件使用两个不同的URL:
file:///android_asset/www/video/nameofmyvideo.mp4,视频文件实际位于/www/video/nameofmyvideo.mp4.
和
android.resource:// mypackagename / raw / nameofmyvideo,视频文件实际位于/ www / res / raw / nameofmyvideo和/ platforms / android / res / raw / nameofmyvideo
我正在运行最新的cordova(3.4.1-0.1.0)并在运行CM-11(4.4.2)的点火器上进行测试.
这是我正在使用的标记:
<video width="400px" height="300px" autoplay controls> <source src="file:///android_asset/www/video/video-test.mp4" type="video/mp4"> </video>
要么
<video width="400px" height="300px" autoplay controls> <source src="android.resource://my.package.name/raw/videotest" type="video/mp4"> </video>
这是一个Android路径问题吗?该应用程序在iOS中运行良好.我也尝试过使用webm,但没有成功.
编辑:
此外,无论文件是否可以实际加载,似乎都会发生双网络加载问题(一次成功,一次取消).我在我网站上托管的http上加载了相同的mp4文件,视频播放得很好(但仍然显示了两个请求).
它不可能从android上的内部资源文件夹中读取视频,你需要将它放在app,sdcard或远程之外的某个地方. 这是因为APK基本上是压缩JAR而资产中的文件需要解压缩才能工作,Android无法解压缩来自APK的视频文件.