2015-10-14 63 views
2

我們嘗試使用Azure移動服務對iPhone和iPad上運行的iOS應用執行脫機同步。Azure移動服務脫機同步的文檔

到目前爲止,我們只有一個非常簡單的應用程序,它試圖對單個表進行同步。有時候它可以正常工作,有時候它會很慢,有時甚至會超時,有時會因爲內部「找不到表格」錯誤而立即失敗。

我們一直無法找到關於此框架的任何實際文檔。有許多在線教程,但沒有深入的文檔。

有沒有人知道我們可以在哪裏找到更好的文檔如何使用,以及如何解決這個API的問題?

當我們的客戶端調用錯誤出現時,有什麼地方可以查找有關實際出錯的更多細節?

回答

2

的小二文檔是在這裏:

授予那些都還是相當高的水平,但最後一個應該是在排除故障多一點幫助。

此外,該項目的開源代碼位於:https://github.com/Azure/azure-mobile-services/tree/master/sdk/iOS,如果您想進入內部,您可以使用它創建工作區。

可以同步的操作(插入/更新/刪除)錯誤通常只會是CoreData的一個問題,它們只是表面出現了內部錯誤。

對於推/拉,它們可以將錯誤包裝在一個數組中,因爲可以同步1個物品,但是同樣可以得到底層錯誤。

內部表未找到錯誤是由於CoreData中未定義表。它發生時的代碼是無法爲給定的表的實體(參見:https://github.com/Azure/azure-mobile-services/blob/master/sdk/iOS/src/MSCoreDataStore.m#L51)我會檢查你是如何初始化你的管理對象方面,如果你的模型是正確的。

對於緩慢的問題,我的猜測是,你正在運行一個免費的移動服務,如果不使用一段可繞下來,需要啓動的第一個API平。 (此過程不會在基本/標準層發生)

而且iOS的默認網絡超時時間爲30秒,這樣一個合法的網絡問題也可能會感到速度緩慢。

最後,它也可能是數據量,默認情況下在拉動過程中每次有50個記錄下來(所以如果你最初同步5k行,這將需要500次旅行才能完成,但在此之後它只會。拉拉的改變,這將是1-2人次

+1

我們已經看到了這兩個環節,也不是我所說的實際文檔他們的教程 - 如何讓一個簡單的應用程序工作的例子,不所有的可用功能的文件,而且該表的定義,並同步反對它的作品,有時,而且失敗了,在其他時間,沒有我們作出在Azure中或在客戶端上的任何變化。 –

+1

我同意,需要更詳細的文檔在這個主題上,並且正在開發中,我相信新的主頁將會在這裏:https://azure.microsoft。com/en-us/documentation/articles/app-service-mobile-offline-data-sync-preview /並且最終會有更詳細的文檔,而不僅僅是教程。 – phillipv

+0

對於核心數據實體創建錯誤,我的猜測是您提供的託管對象上下文不是使用NSPrivateQueueConcurrency類型創建的,如果它在有時不會出現該錯誤時有效。 – phillipv

相關問題