我使用Cordova相机插件时遇到了问题。
使用时:
sourceType: Camera.PictureSourceType.PHOTOLIBRARY
我收到了这个网址:content://media/external/images/media/1517
在<img ng-src="{{image}}" alt="Description"/>
上使用此网址时
一切都很好
但是当删除sourceType
并使用手机拍照时,返回的URI是这样的:
file:///storage/emulated/0/Android/data/com.ionicframework.myapp/cache/1454450218633.jpg
当此URI返回时,不显示图像。 有任何想法吗?它在离子框架和Android设备上。
一些代码这是为了拍照:
function takePhoto() {
var defer = $q.defer();
navigator.camera.getPicture(function(imageData) {
defer.resolve(imageData);
}, function(err) {
defer.reject(err)
});
return defer.promise;
}
从以下方法调用此方法:
$scope.getImage = function() {
cameraService.takePhoto().then(function(imageData){
console.log(imageData);
$scope.image = imageData;
}).catch(function(err){
console.log(err);
})
}
和提供商白名单:
$compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|file|blob|cdvfile|content):|data:image\//);
更新:
我可以使用Camera.DestinationType.DATA_URL
完成任务
但是,是否只能获取文件URL并显示图像?
从图书馆选择照片时再次使用它,但在拍摄新照片时却没有。
答案 0 :(得分:0)
问题在于livereload
功能。
在没有livereload的情况下运行应用程序,然后你可以从该路径加载picuters