手机静置一段时间后iPhone手机屏幕图像消失了

时间:2013-05-19 14:10:02

标签: iphone ios image cordova uiwebview

我在iOS上使用phonegap 2.0.0并且基本上使用股票图像捕获代码。捕获图像后,它将保存到手机中,URI将与其他项目信息一起保存到数据库中,图像将显示在页面上。

这一切都适用于iOS和Android。问题是当iOS手机关闭并允许静置一段时间(一夜之间)时,图像不再显示。其余数据从数据库中检索并显示,但图像只显示图像所在的黑色方块(表示信息仍在数据库中)

iOS是否在关闭后重命名图像并允许其静置一段时间?有什么建议?如果手机关闭并重新打开,则不会发生这种情况..只有在手机待机一段时间之后......

这似乎非常相关...... Capturing and storing a picture taken with the Camera into a local database / PhoneGap / Cordova / iOS

1 个答案:

答案 0 :(得分:0)

对于遇到此问题的其他人,以下代码对我有用...

    function capturePhoto() {
navigator.camera.getPicture(movePic, onFail,{ quality : 70 });
}

function movePic(file){ 
window.resolveLocalFileSystemURI(file, resolveOnSuccess, resOnError); 
} 

function resolveOnSuccess(entry){ 
var d = new Date();
var n = d.getTime();
var newFileName = n + ".jpg";
var myFolderApp = "myPhotos";
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSys) {      
fileSys.root.getDirectory( myFolderApp,
                {create:true, exclusive: false},
                function(directory) {
                    entry.moveTo(directory, newFileName,  successMove, resOnError);
                },
                resOnError);
                },
resOnError);
}
function successMove(imageUri) {
    document.getElementById('smallImage').src = imageUri.fullPath;
    //hidden input used to save the file path to the database
    document.getElementById('site_front_pic').value = "file://"+imageUri.fullPath;
    smallImage.style.display = 'block';
}

function onFail(message) {
alert('Failed to load picture because: ' + message);
}

function resOnError(error) {
alert(error.code);
}