Apple ResearchKit:如何从 ORKResult 中提取信息?第一次程序员
Apple ResearchKit: how to extract information from ORKResult? First time programmer
我正在开发一个简单的 ResearchKit 应用程序,它有 20 个调查问题或 ORKSteps。我如何从将调查提交到数据库的参与者那里得到答案?
我的研究发现 ORKESerializer 和 SQLite 作为解决方案的潜在部分。我缺少关于如何将这些东西集成到工作解决方案中的全局视图。
从不了解数据库或从 Swift 传输数据,因此任何基本信息都会非常有帮助。
- 如何使用 Swift 从 ORKResult 中提取数据?
- 我要将数据提取到哪里?或者,小型调查的标准数据库类型是什么?
我没有使用 Research Kit 的经验,但作为数据库,您可以使用 sqlite。 stephencelis 为 swift 制作了一个很棒的包装器,您可以使用它。
ResearchKit 没有任何 out-of-the-box 存储结果的解决方案。通常,开发人员的任务是遍历 ORKResult
层次结构,并保存处理后的结果供以后访问或将它们发送到远程服务器。
这里有几个选项:
使用NSCoding来储存香草ORKTaskResult
(和他们的ORKResult
children)。这样您就可以在以后重新创建整个 ORKTaskResult
层次结构以检查或处理它。
使用ORKESerializer
(如你所料)将ORKResult
序列化为JSON格式。 ORKESerializer
目前包含在 ORKTest
的单元测试中,但没有很好的记录。将来有可能将其移至 ResearchKit 中,但现在完全可用。如果您想将结果发送到您自己的任何远程服务器,JSON 格式特别有用。
可以手动遍历ORKResult
,转换成适合存储的objects,或者存入数据库记录。正如您所说,您可以使用 SQLite 来保存它们;或您选择的其他数据库;或 Core Data.
总而言之,没有推荐或标准的方法来持久化结果,这取决于您的需要。
你也可以看看官方open sourced RK apps。我认为他们利用 AppCore 库(位于 ResearchKit 之上)来存储任务结果(并且还使用 Sage Bridge 将结果发送到 Sage 的服务器)。但如果您的需求更简单,那可能就太过分了。
我建议您 运行 示例 ORKCatalog
应用程序,然后检查 ORKTaskResult
层次结构(您可以在应用程序本身内执行此操作)。您将了解结果层次结构的外观。
我正在开发一个简单的 ResearchKit 应用程序,它有 20 个调查问题或 ORKSteps。我如何从将调查提交到数据库的参与者那里得到答案?
我的研究发现 ORKESerializer 和 SQLite 作为解决方案的潜在部分。我缺少关于如何将这些东西集成到工作解决方案中的全局视图。
从不了解数据库或从 Swift 传输数据,因此任何基本信息都会非常有帮助。
- 如何使用 Swift 从 ORKResult 中提取数据?
- 我要将数据提取到哪里?或者,小型调查的标准数据库类型是什么?
我没有使用 Research Kit 的经验,但作为数据库,您可以使用 sqlite。 stephencelis 为 swift 制作了一个很棒的包装器,您可以使用它。
ResearchKit 没有任何 out-of-the-box 存储结果的解决方案。通常,开发人员的任务是遍历 ORKResult
层次结构,并保存处理后的结果供以后访问或将它们发送到远程服务器。
这里有几个选项:
使用NSCoding来储存香草
ORKTaskResult
(和他们的ORKResult
children)。这样您就可以在以后重新创建整个ORKTaskResult
层次结构以检查或处理它。使用
ORKESerializer
(如你所料)将ORKResult
序列化为JSON格式。ORKESerializer
目前包含在ORKTest
的单元测试中,但没有很好的记录。将来有可能将其移至 ResearchKit 中,但现在完全可用。如果您想将结果发送到您自己的任何远程服务器,JSON 格式特别有用。可以手动遍历
ORKResult
,转换成适合存储的objects,或者存入数据库记录。正如您所说,您可以使用 SQLite 来保存它们;或您选择的其他数据库;或 Core Data.
总而言之,没有推荐或标准的方法来持久化结果,这取决于您的需要。
你也可以看看官方open sourced RK apps。我认为他们利用 AppCore 库(位于 ResearchKit 之上)来存储任务结果(并且还使用 Sage Bridge 将结果发送到 Sage 的服务器)。但如果您的需求更简单,那可能就太过分了。
我建议您 运行 示例 ORKCatalog
应用程序,然后检查 ORKTaskResult
层次结构(您可以在应用程序本身内执行此操作)。您将了解结果层次结构的外观。