出于某种原因,每当我尝试在Android设备上拍摄或选择照片时,Ionic 2和"cordova-plugin-camera"都会崩溃。我已经读到这可能是由于内存不足,但我的设备有 7gbs 可用。我还读到它可能是我设置为 DATA_URL 并更改为 FILE_URI 的"destinationType",但仍然发现相同的错误。
我将不胜感激解决此错误的任何帮助,因为它在iOS上可以完美运行。
这是我的代码:
openCamera() {
Camera.getPicture({
destinationType: Camera.DestinationType.FILE_URI,
encodingType: Camera.EncodingType.JPEG,
saveToPhotoAlbum: true,
quality: 50,
correctOrientation: true
}).then((imageData) => {
// imageData is either a base64 encoded string or a file URI
// If it's base64:
this.issue.image = 'data:image/jpeg;base64,' + imageData;
}, (err) => {
console.log(err);
});
}
openGallery() {
let cameraOptions = {
sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
destinationType: 1,
quality: 50,
encodingType: Camera.EncodingType.JPEG,
correctOrientation: true
};
Camera.getPicture(cameraOptions)
.then((file_uri) => {
this.issue.image = 'data:image/jpeg;base64,' + file_uri;
}, (err) => {
console.log(err)
});
}
我认为这不应该Camera.DestinationType.FILE_URI
,因为当您将其分配给图像元素时,您正在使用data:image/jpeg;base64