我正在尝试使用window.resolveLocalFileSystemURL但由于某种原因我的故障回调总是被触发。永远不会触发成功回调。这是我的代码:
// Take a picture using the camera
$scope.takePicture = function () {
var options = {
quality: 100,
targetWidth: 500,
targetHeight: 500,
destinationType: Camera.DestinationType.FILE_URI,
encodingType: Camera.EncodingType.JPEG,
saveToPhotoAlbum: true,
correctOrientation: true,
sourceType: Camera.PictureSourceType.CAMERA,
allowEdit: true
};
navigator.camera.getPicture(
cameraSuccess,
cameraFailure,
options
);
return false;
};
// what to do when the camera has successfully yielded a good image
function cameraSuccess(imageURI){
alert('this is imageURI: ' + imageURI);
window.resolveLocalFileSystemURL(imageURI, resolvePhotoPath, fail);
};
当我提醒imageURI时,我会得到这样的结果:
文件:///storage/sdcard0/DCIM/Camera/1395126124474.jpg
我可以确认当我使用android上的Files应用程序查看该路径时,该文件确实存在。但是当代码运行并执行window.resolveLocalFileSystemURL时,始终会触发失败回调,并显示错误 { “代码”:5}。
我已经看到这意味着有一个ENCODING_ERR,但有点令人困惑的是导致这种情况的原因。该文件确实正确保存到该位置,因此我不知道为什么代码会失败。
这里有任何帮助吗?
答案 0 :(得分:0)
它似乎是相机插件中的一个错误(我不认为它应该存储图像)。
话虽如此,有一种解决方法。
<preference name="AndroidExtraFilesystems" value="files,files-external,documents,sdcard,cache,cache-external,root" />
添加到您的config.xml