2014-12-03 19 views
1

Cordova localStorage是否得到本地iTunes電話備份備份?Cordova localStorage電話備份

這意味着,如果我從iTunes中備份恢復手機,localStorage是否也會恢復以及該應用程序?

我想問的原因是當我在應用程序中註冊推送通知時,我想提出一個對話框,並保存在localStorage中,我確實顯示了此對話框,它解釋了用戶可能期望的推送通知類型我的應用程序,而不是盲目註冊應用程序推。通過這種方式,用戶可以看到在設備上啓用推送的一些好處,或者選擇不推送推送通知。

預先感謝您。

回答

0

是的它會。

讓我們先嚐試一個簡單的應用程序,並在localstorage中保存一些值,然後與iTunes同步,然後重新存儲。

通常當使用localstorage時,它會將數據保存在NSLibraryDirectory or NSDocumentDirectory中,這些數據在還原或升級後應該可用。

Plus如下所述iTunes確實還原Web應用程序緩存/數據庫即本地存儲。

什麼的iTunes備份

  • 自動填充的網頁。
  • 離線網頁應用程序緩存/數據庫。

全面上市http://support.apple.com/en-us/ht4946

+0

聽起來不錯,所以我不應該依賴localStorage的不斷推進有關對話或諸如此類的東西的信息,因爲這些信息會堅持,即使經過備份恢復到設備。當在iTunes中將備份恢復到設備上時,如果您打開應用程序,則必須重新授權該應用程序以進行推送通知,因此,通過該方式存儲我已註冊的信息並不正確。必須有一種方法可以查詢推送註冊以確定應用是否嘗試註冊推送。我正在使用庫進行推送註冊,我可能需要擴展它。謝謝。 – ScottN 2014-12-03 15:52:07

+0

我的理解;一個建議。如果你在服務器端有東西,那麼你可以在服務器端和應用端都存儲特定的令牌/值。根據令牌,您可以驗證哪個應用和用戶已訂閱推送以及他有興趣接收哪些推送消息。所以無論何時用戶選擇推送訂閱,只需重新生成一個包含相關信息的新標記並保存在雙方。希望它會給你一些想法或幫助。謝謝 – AAhad 2014-12-04 10:14:05

0

取決於

一般來說iOS不會備份緩存。

However, iCloud and iTunes do not back up the contents of the following directories: 

<Application_Home>/AppName.app 
<Application_Data>/Library/Caches 
<Application_Data>/tmp 

From Apple documentation

但由於科爾多瓦3.0。科爾多瓦有鑰匙BackupWebStorage

設置爲cloud以允許通過iCloud備份網絡存儲數據。設置爲 local僅允許通過iTunes同步進行本地備份。設置爲none阻止 網絡存儲備份。

From Cordova 4.0 iOS Configuration