【问题标题】:How to create persistent storage on iPhone?如何在 iPhone 上创建持久存储?
【发布时间】:2011-04-06 02:25:11
【问题描述】:

我想知道哪种类型的持久存储可以安全地用于 iPhone 中的存档文件?我的存档文件需要每 30 分钟到 1 小时更新一次,我需要持久化将近 500 到 600 个存档文件。

如何在设备上保存这么多存档文件?哪种持久存储机制更好用?

谢谢。

【问题讨论】:

  • 只是想知道使用 Core Data 还是 SQlite DB 更好?

标签: iphone persistent-storage


【解决方案1】:

NSUserDefaults 是一种为您的应用存储少量数据的快速简便的方法。我们在 iphone 中使用 NSUserDefaults 进行持久存储,就像 Android 中的 Shared Preference 一样。

存储数据:

// create a standardUserDefaults variable
NSUserDefaults * standardUserDefaults = [NSUserDefaults standardUserDefaults];

// saving an NSString
[standardUserDefaults setObject:@"mystring" forKey:@"string"];

// synchronize the settings
[standardUserDefaults synchronize];

接收数据:

// create a standardUserDefaults variable
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];

// getting an NSString object
NSString *myString = [standardUserDefaults stringForKey:@"keyToLookupString"];

【讨论】:

    【解决方案2】:

    如果您真的想选择数据库解决方案,那么我建议您坚持使用 Apple 推荐的 - CoreData。有一个学习曲线,但开发人员门户上有一些很棒的文档,可以让你快速上手。 CoreData 对 DB 进行了抽象,允许您保存和检索对象,而不是编写一堆 SQL。

    您可能希望查看在应用程序主目录中读取/写入文件。有关更多信息,请查看“iOS 应用程序编程指南”,其中包含“文件和文件系统”部分。然后,您可以将 500 个文件直接保存到闪存中,而不是使用 DB/CoreData 解决方案。

    文件和文件系统

    每个应用程序都有一个保护区 它可以在其中创建和修改 文件。此外,该系统允许 应用程序与每个共享文件 其他(和用户)通过 定义明确且安全的方法。 然而,支持这些手段 需要你的工作。这 以下部分描述了这些类型 您可以进行的与文件相关的操作 在您的应用程序中执行。

    编程指南链接:

    http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/StandardBehaviors/StandardBehaviors.html

    【讨论】:

      猜你喜欢
      • 2011-08-26
      • 1970-01-01
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-09
      • 1970-01-01
      相关资源
      最近更新 更多