我的应用(Android)需要从图片库中选择一张照片。选择后需要显示在屏幕上。如果我选择一个小图像(例如 1024x768)效果很好。如果我选择更大的图像(例如之前用相机拍摄的图像),应用程序将重新启动并返回到我的 index.html,logcat 上没有例外。
这是我的代码:
function getPhoto(source) {
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 100,
destinationType : navigator.camera.DestinationType.FILE_URI,
sourceType:source});
}
我确定这是内存不足错误。但是使用上面的代码就不需要将图像加载到内存中。不需要 phonegap 来调整它的大小(使用 targetHeight ...)或纠正方向。
我的解决方案快用完了...
如果您需要:这是 onPhotoURISuccess(imageURL)
function onPhotoURISuccess(imageURI) {
// Button Variablen zuweisen
var smallImage = document.getElementById('smallImage');
var button_capture = document.getElementById('button_capture');
var button_album = document.getElementById('button_album');
// Nicht gebrauchte Buttons verstecken
button_capture.style.display = 'none';
button_album.style.display = 'none';
// Ausgewähltes Foto anzeigen
smallImage.src = imageURI;
smallImage.style.display = 'block';
// Upload Button einblenden
var upload_button = document.getElementById('upload_button_album');
upload_button.style.display = 'block';
// Wert für Übergabe an Funktion in globale Variable speichern
myImage = imageURI;
}
编辑:
尝试使用此选项,也会导致应用程序重新启动:
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 40,
destinationType : navigator.camera.DestinationType.FILE_URI,
sourceType:source,
targetWidth:1024,
targetHeight:768});