在我们启动应用程序时限制多次调用的方法

时间:2017-05-16 19:42:02

标签: ios swift

我必须在应用程序启动时调用Web服务并将数据预加载到核心数据中一次。我不希望每次应用程序启动时都更新我的数据库。任何人都可以指导这个用例吗?

2 个答案:

答案 0 :(得分:1)

你可以使用UserDefaults:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]? = nil) -> Bool {
       if UserDefaults.standard.object(forKey: "firstTime") == nil {
        request()
       UserDefaults.standard.set(true, forKey: "firstTime")
    }
        return true
    }

或者,如果没有提出请求,您可以检查您的coreData是否有任何项目。

答案 1 :(得分:0)

您可以在UserDefaults中存储远程内容版本或其哈希值,并在数据更改时安排更新。单独的内容版本检查(HEAD)和内容获取请求(GET)。如果远程内容大小很大,我强烈建议将其与应用捆绑在一起。