gpt4 book ai didi

ios - 在应用程序中存储静态数据的最佳方式

转载 作者:可可西里 更新时间:2023-11-01 00:23:56 24 4
gpt4 key购买 nike

我是应用开发的新手,正在学习如何为 iOS 创建应用。我对某些应用程序有一些想法,所有这些应用程序都将是几乎没有动态内容的信息应用程序。

我坚持的是存储静态数据的最佳方法。我不想为每个页面创建单独的场景,因为那样会弄乱我的 Storyboard并且难以维护。

我研究过创建一个 API 来为我的内容提供服务。但由于我的内容很少或从不更改,我不希望用户每次启动应用程序时都创建网络请求。然后我研究了使用核心数据或 Realm 数据库,但我发现很难找到任何关于用数据预填充数据库的文档,以便填充“as-we-go”。我也考虑过两者的结合,但我也希望我的应用程序可以 100% 离线使用。

我真的很难找到该做什么。理想情况下,我想使用核心数据并在预填充数据库的情况下发布应用程序。

我还应该提到我正在使用 Swift。我希望你们能帮助我。

最佳答案

在简单的情况下,CoreData 和 Realm 都有些矫枉过正。特别是如果您的数据是只读的并且可以毫无问题地放入内存中,我会考虑将它们存储为捆绑到您的应用程序中的 JSON 文件。

这可以通过 3 个步骤完成:

  1. data.json 添加到您的项目中:

    [
    {"name": "John Doe", "age": 31},
    {"name": "Jane Doe", "age": 25}
    ]
  2. 定义模型:

    struct Person {
    var name: String
    var age: Int
    }
  3. 加载数据:

    import SwiftyJSON


    func loadInitialData() -> [Person] {
    let path = NSBundle.mainBundle().pathForResource("data", ofType: "json")!
    let data = NSData(contentsOfFile: path)!
    let json = JSON(data: data)

    var persons = [Person]()
    for (_, item) in json {
    let name = item["name"].string!
    let age = item["age"].int!
    persons.append(Person(name: name, age: age))
    }

    return persons
    }

    备注:SwiftyJSON用于更好的 JSON 处理。

关于ios - 在应用程序中存储静态数据的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30264871/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com