SwiftアプリケーションでFirebase接続ステータスを検出できません。私のView Controllerが起動すると直ちに表示され、alert状態が表示され、接続ステータスが表示されなくなります。これは、アプリの起動時に実際にステータスが何であるかにかかわらず毎回これを行います。アプリが起動されると、接続ステータスが確実に報告されます。別のビューコントローラーに切り替えて元のビューコントローラーに戻しても、接続が再びダウンしたとは報告されません。アプリが最初に起動したときにのみ発生します。ここでは、viewDidLoadメソッドで接続ステータスの検出を実装したコードを示します。誰にも何か提案はありますか?SwiftアプリケーションでのFirebase接続ステータスの検出に問題があります
override func viewDidLoad() {
//Do these things once when the app first starts up
super.viewDidLoad()
mapView.delegate = self
setMapInitialState()
let connectedRef = FIRDatabase.database().referenceWithPath(".info/connected")
connectedRef.observeEventType(.Value, withBlock: {snapshot in
let connected = snapshot.value as? Bool
if connected != nil && connected! {
self.showAlertView("Alert", message: "Connection to server restored - all pending catches will be updated")
self.refreshCatches()
} else {
self.showAlertView("Alert", message: "Connection to server lost - catches by others may not be up to date")
}
})
}
どのように条件付きで動作しますか? like hasConnected && isConnected { // connected } else { //接続されていない } ??? – zramled