我与Ionic 3有关(似乎很难,我进行了很多搜索,没有找到任何可行的解决方案)。
'Not allowed to load local resource: file:///data/user/0/br.com.myapp/files/916354762.mp4'
我的应用程序(Android和ios)可用于离线视频。首先,我已经使用File native插件将视频下载到设备上了,这一步很好,我可以编写和恢复文件,一切都成功。但是,当我需要在HTML5视频播放器或videogular2(http://videogular.github.io/videogular2)上加载和播放视频时,视频没有加载... videogular2返回错误'Not allowed to load local resource: file:///data/user/0/br.com.myapp/files/916354762.mp4'
,而HTML5播放器没有返回任何错误。
base64 string
的格式读取视频文件(效果很好,我可以正确获取base64),但是它很大(> 20MB),并且该应用程序消失了。allow-origin file://*/
文件上设置config.xml
。html
<video #video controls autoplay></video>
ts
@ViewChild('video') videoPlayer: ElementRef;
...
let video = this.videoPlayer.nativeElement;
video.src = 'file:///data/user/0/br.com.myapp/files/916354762.mp4';
or
video.src = '/data/user/0/br.com.myapp/files/916354762.mp4'; // i've tried also without file://, also not works, i also tried with DomSanitizer
video.play();
html
<vg-player (onPlayerReady)="onPlayerReady($event)">
...
<video #media
[vgMedia]="media"
[src]="src"
id="singleVideo"
preload="auto"
crossorigin>
</video>
</vg-player>
ts
video.src = 'file:///data/user/0/br.com.myapp/files/916354762.mp4';
or
video.src = '/data/user/0/br.com.myapp/files/916354762.mp4';
请,有人可以帮助我吗?
答案 0 :(得分:0)
我遇到了同样的问题,并使用此本地插件解决了该问题:
这是我的简短工作功能示例:
playFile() {
this.fileOpener.open("file:///storage/emulated/0/DCIM/Camera/VID_20190103_143837.mp4", "video/mp4")
.then(() => console.log("File is opened"))
.catch(e => console.log("Error opening file", e));
}