2013-04-10 11 views
7

Internet bağlantısı olmadığında yüklemek için localstorage öğesinde JSON verilerini önbelleğe almaya çalışıyorum. Bu iyi çalışıyor ama uygulamayı yeniden başlatın zaman localStorage İşteLocalstorage, uygulamayı, telefon gap IOS'da yeniden başlattıktan sonra temizlendi mi?

temizlenir düşünüyorum benim kodudur:

document.addEventListener("deviceready", onDeviceReady, false); 
function onDeviceReady() { 

    document.addEventListener("offline", function() { 
    alert("No internet connection"); 


    $.each(JSON.parse(localStorage.getItem('foo')), function(key, val) { 
    if(!(val.php)){val.php=0;} 
$('ul.get-mertchant').append('<li> <a href="azkadenya.html?id=' + val.nid + '&nop='+ val.php +'" class="li-link"><div class="circle-img"><img src="'+ val.logo + '" /></div><div class="merchant-info"><h1>'+ val.node_title +'</h1><p>You Have '+ val.php +' Binggz</p></div><div class="more-icon"></div></a> </li>'); 
}); 

}, false); 
    $.getJSON('mywebsite/views/services_merchant_mobile', function(data) { 
     localStorage.setItem('foo', JSON.stringify(data)); 

var items = []; 
$.each(JSON.parse(localStorage.getItem('foo')), function(key, val) { 
    if(!(val.php)){val.php=0;} 
$('ul.get-mertchant').append('<li> <a href="azkadenya.html?id=' + val.nid + '&nop='+ val.php +'" class="li-link"><div class="circle-img"><img src="'+ val.logo + '" /></div><div class="merchant-info"><h1>'+ val.node_title +'</h1><p>You Have '+ val.php +' Binggz</p></div><div class="more-icon"></div></a> </li>'); 
}); 

}) 
} 

sorunun ne ??

cevap

15

IOS 5.1'den başlayarak Apple yerel depolama alanını geçici bir alan yapmaya karar verdi. IOS 5.1'de kalıcı belleğe ihtiyacınız varsa, PhoneGap'ın Dosya API'sini kullanın. Sorun hakkında bilgi edinmek için birkaç bağlantı var.

http://community.phonegap.com/nitobi/topics/phonegapbuild_localstorage_on_ios_5_1

http://docs.phonegap.com/en/2.6.0/cordova_storage_storage.md.html#Storage

Elma yanı yerel depolama kullanmanızı discurages. iOS PhoneGap app rejected because of the use of localStorage

+3

Bu ilk bağlantıdaki (localstorage_on_ios_5_1 üzerindeki topluluk yayını) takibi, sorunun PhoneGap 1.6'da çözüldüğünü söylüyor. Bağlı cordova_storage belgeleri, localStorage'ın kalıcı olmadığına dair hiçbir belirti sağlamaz. "Uygulama reddedildi" bağlantısı, uygulamanın yeniden başlatılmasında kalıcı olmayla ilgili olmayan, iCloud'a yedeklenen uygulama verileriyle ilgili (yanlış yerleştirilmiş) endişelerdir. "Bir" önbellek "konumunda veya" veri "konumunda" localStorage kaydedildi "ve" iOS önbellekten nesneyi ne zaman kaldırıyor "ile ilgili bazı sorularım var, ancak localStorage uygulamasının genellikle uygulamada kaybolduğuna dair bir kanıt göremiyorum tekrar başlat. – keturn

+0

Aynı sorun Cordova 6.1.1 kullanırken Android ile olur. – andreszs

+0

https://cordova.apache.org/docs/en/latest/cordova/storage/storage.html 'localStorage' kalıcı verileri saklamak için bir seçenek olarak listelenir. Kaynaklarınız güncel/ölü. LocalStorage'ın silinebileceği bir site var mı? –

İlgili konular