2014-07-20 64 views
0

我目前正在開發的應用程序需要離線功能。不幸的是,在過去的幾天裏,我們試圖在沒有連接的情況下使用該應用,並且發現了一些奇怪的事情 當我們試圖用saveEventually我們在日誌中看到以下調試跟蹤:保存最終離線狀態

2014-07-19 18:00:00.079 BallisticBall[2371:8837] Error: Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo=0x15dbc500 {NSErrorFailingURLStringKey=api.parse.com/2/create, NSErrorFailingURLKey=api.parse.com/2/create, NSLocalizedDescription=The Internet connection appears to be offline., NSUnderlyingError=0x1ba79d20 "The Internet connection appears to be offline."} (Code: 100, Version: 1.2.18) 2014-07-19 18:00:00.082 BallisticBall[2371:5907] Attempt at runEventually command timed out. Waiting 600.000000 seconds. 5 retries remaining.

我等了十分鐘,一個新的條目出現在日誌中:

Error: Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo=0x15dce680 {NSErrorFailingURLStringKey=api.parse.com/2/create, NSErrorFailingURLKey=api.parse.com/2/create, NSLocalizedDescription=The Internet connection appears to be offline., NSUnderlyingError=0x15ddfc50 "The Internet connection appears to be offline."} (Code: 100, Version: 1.2.18) 2014-07-19 18:10:00.103 BallisticBall[2371:5907] Attempt at runEventually command timed out. Waiting 600.000000 seconds. 4 retries remaining.

這是預期的行爲?如果用戶運行該應用的時間超過一個小時,那麼最後一次嘗試後會發生什麼?記錄是否會以不同的方式丟棄或保存?

回答

0

SaveEventually工作還您在離線時,也請參閱文件「Saving Objects Offline", 您還可以通過離線是和保存對象後,你可以找到他們的應用程序目錄結構 (Library/Private Documents/Parse/Command Cache), 你會發現每一個未保存的對象進行測試是否有作爲等待被髮送的文件,當您重新聯機時

+0

假設用戶沒有超過一個小時的連接,第5次嘗試後會發生什麼?在某個超時後停止嘗試解析重試嗎? – Keldon

+0

saveEventually將其存儲在脫機文件中,一旦連接備份後即可處理它,saveInBackground我不確定,保證離線保存文檔中的saveEventualy – PetrV

+0

當互聯網備份時它不會保存它,所以這是不正確的信息 - 它仍然等待四個過期的時間段,並將所有其他保存在其後面的隊列排隊,這是可怕的行爲。 – Rambatino