2017-07-06 110 views
0

如果我的Realm Object Server處於脫機狀態,我希望能夠在Mac/iOS應用程序中顯示指示器。檢查Swift中的Realm對象服務器狀態

據我所知,唯一可用的API是Sync Sessionstate

我成立了這樣的閱讀the available states後:

let session = SyncUser.current!.session(for: realmURL)! 

if session.state.hashValue != 0{ 
    print("Offline or invalid") 
}else{ 
    print("Online") 
} 

然後我關掉我的同步服務器,再次運行該代碼,它仍然說,這是在網上。 state似乎並不準確。

這是應該這樣工作嗎?我能否可靠地確定我的ROS的在線/離線狀態?

+1

不幸的是,目前還沒有辦法確定您的ROS是否在Realm內在線或離線。我們在待辦事項中有一項功能請求來支持這樣的事情。 – AustinZ

+1

謝謝。如果您想將其作爲答案張貼,我可以接受。 –

回答

1

不幸的是,目前還沒有辦法通過使用Realm的API來確定您的Realm對象服務器是聯機還是脫機。

您看到狀態報告爲Active的原因是因爲從Realm的角度來看,會話仍然有效並且連接。底層的同步引擎負責處理網絡連接失敗,並且當前不會將這些信息暴露給綁定層(這是該狀態變量所在的位置)。

我們知道這是一個經常要求的功能,並計劃在將來構建類似的功能。