2016-12-07 129 views
-3

我想在我的手機上將數據保存到本地數據庫(sqlite)時,與我的App-Server同步數據。我需要一種能夠自動檢測互聯網連接的機制,以便隨時將相關的保存數據發送到我的服務器。 這就是我想要實現離線模式的方式。如何使用Swift自動識別互聯網連接

您可以推薦我哪種方法?有沒有任何框架可以完成這項工作?在android中,我使用syncAdapter,Swift3提供了一個類似的框架,還是我需要創建一個自己的解決方案?

+1

'SCNetworkReachability'可以用來檢測網絡連接的狀態和變化tivity。 https://github.com/ashleymills/Reachability.swift是一個衆所周知的Swift包裝器。您還可以在SO上找到關於SCNetworkReachability的許多問答。 –

+0

[iOS上的同步適配器 - 我的應用程序與我的服務器同步聯繫人]的可能重複(http://stackoverflow.com/questions/22981812/sync-adapter-on-ios-my-app-sync-contact-with-my -server) – Fay007

+0

[在iOS上創建等價的Androids同步適配器]可能的重複(http://stackoverflow.com/questions/8406736/create-equivalent-of-androids-sync-adapter-on-ios) –

回答

1

步驟做它 -

  1. 使用吊艙在POD文件
  2. 在 'AppDelegate中' 進口 'ReachabilitySwift' ReachabilitySwift
  3. 寫下面的代碼中的AppDelegate

    var reachabilityManager:ReachabilityManager = ReachabilityManager.sharedInstance 
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
        NetworkActivityIndicatorManager.shared.isEnabled = true 
        reachabilityManager.initRechabilityMonitor() 
        return true 
    } 
    
    func reachabilityStatusChangeHandler(_ reachability: Reachability) { 
        if reachability.isReachable { 
         print("isReachable") 
        } else { 
         print("notReachable") 
        } 
    }