我无法使用steroid.js访问文件系统。我在phonegap中使用了完全相同的代码并且没有问题。这是我的代码,我似乎没有在我的控制台中出现任何错误。
var captureSuccess = function(mediaFiles) {
mediaFiles[0].getFormatData(function(data) {
if(data.duration > 10) {
window.resolveLocalFileSystemURI(mediaFiles[0].fullPath, FileRemoveSuccess, function() {
navigator.notification.alert('Error: Unable to access file system')
});
}
else{
$('#video-content').append('<video width="320" height="240" controls><source src="' + mediaFiles[0].fullPath + '" type="video/mp4"></video><br><span>' + mediaFiles[0].fullPath + '</span>');
}
});
};
// capture error callback
var captureError = function(error) {
navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
};
// start video capture
function RecordVideo(){
navigator.device.capture.captureVideo(captureSuccess, captureError, {duration:10});
}
我还尝试通过手动放入路径或视频来访问图像,但我遇到了同样的问题。有什么我想念的吗?
答案 0 :(得分:1)
如果您通过localhost(例如steroids.config.location = http://localhost/index.html
)为您的应用提供服务,那么内置的WebKit安全性将阻止来自file:///
的资产,因为它位于不同的域中。是这样吗?我们'重新研究所有CORS问题的解决方案,但请参阅http://guides.appgyver.com/steroids/guides/steroids-js/app-structure-on-device/以获取有关如何在设备上构建Steroids应用程序的信息(以及如何通过localhost访问文件)。
答案 1 :(得分:0)
事实证明,不仅需要将index.html文件作为文件提供,而且使用new steroids.views.WebView
命令创建的任何其他Web视图也是如此。一旦我纠正了这个问题,问题就解决了