我正在将ionicframework与ngCordova FileTransfer插件配合使用,以从android gallery复制图像。
我尝试以下
$scope.getImage = function()
{
var options = {
quality: 50,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
saveToPhotoAlbum: false
};
$cordovaCamera.getPicture(options).then(
function(fileUri)
{
console.log(fileUri);
$cordovaFileTransfer.download(fileUri, cordova.file.dataDirectory + 'my-image.jpg', {}, true).then(
function(fileEntry)
{
$scope.images.imageUri = fileEntry.nativeURL;
},
function (error)
{
console.log(error);
}
);
},
function(error)
{
console.log(error);
}
);
}
在上面的代码中,errocallback是call,控制台显示错误消息:
“权限被拒绝:从pid = 3933中读取com.android.providers.media.MediaDocumentsProvider uri内容://com.android.providers.media.documents/document/image%253A19753,uid=10194需要android.permission.MANAGE_DOCUMENTS,或者grantUriPermission()“
$cordovaFileTransfer
不适用于复制/移动文件。它用于下载和上传功能。
您必须使用$cordovaFile
with方法copyFile(path, file, newPath, newFile)
。
在使用之前,$cordovaFile
您必须使用以下命令安装其插件:cordova plugin add org.apache.cordova.file
希望能对您有所帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句