如何在我的应用程序中使用 ORKESerializer?
How to use ORKESerializer in my app?
我正在开发我的第一个 ResearchKit 应用程序。我一直在看this video。其中一项对我有帮助的技术是将调查结果序列化为 JSON。视频中使用的方法是ORKESerializer.JSONDataForObject(taskResult)
。他解释说这不是 researchKit 的标准部分,但它包含在 GitHub 上名为 ORKTest 的测试应用程序中。
我设置了我的 taskViewController 委托,就像他在视频中设置的那样:
extension ViewController : ORKTaskViewControllerDelegate {
func taskViewController(taskViewController: ORKTaskViewController, didFinishWithReason reason: ORKTaskViewControllerFinishReason, error: NSError?) {
switch reason {
case .Completed:
let taskResult = taskViewController.result
let jsonData = try! ORKESerializer.JSONDataForObject(taskResult)
if let jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding) {
print(jsonString)
}
break
case .Failed, .Discarded, .Saved:
break
}
//Handle results with taskViewController.result
// let taskResult = taskViewController.result
taskViewController.dismissViewControllerAnimated(true, completion: nil)
}
}
编译时出现此错误:use of unresolved identifier: ORKESerializer
所以在 ORKTest 应用程序中,在 GitHub 个文件中,我找到了 2 个文件。一个叫ORKESerialization.h
,一个叫ORKESerialization.m
。我尝试将它们拖到我的项目中,因为我在视频中看到了该人项目中的那些文件。然后这也促使我创建一个桥接头文件,我也在他的项目中看到了。
这样做之后,我仍然遇到同样的错误。事实上,我并不知道如何将这些序列化包包含在我的应用程序中。有谁知道如何包含正确的文件以便我可以实现这个 ORKEserialization 方法?
谢谢!
您需要在桥接中导入 ORKESerialization.h header:
#import "ORKESerialization.h"
我正在开发我的第一个 ResearchKit 应用程序。我一直在看this video。其中一项对我有帮助的技术是将调查结果序列化为 JSON。视频中使用的方法是ORKESerializer.JSONDataForObject(taskResult)
。他解释说这不是 researchKit 的标准部分,但它包含在 GitHub 上名为 ORKTest 的测试应用程序中。
我设置了我的 taskViewController 委托,就像他在视频中设置的那样:
extension ViewController : ORKTaskViewControllerDelegate {
func taskViewController(taskViewController: ORKTaskViewController, didFinishWithReason reason: ORKTaskViewControllerFinishReason, error: NSError?) {
switch reason {
case .Completed:
let taskResult = taskViewController.result
let jsonData = try! ORKESerializer.JSONDataForObject(taskResult)
if let jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding) {
print(jsonString)
}
break
case .Failed, .Discarded, .Saved:
break
}
//Handle results with taskViewController.result
// let taskResult = taskViewController.result
taskViewController.dismissViewControllerAnimated(true, completion: nil)
}
}
编译时出现此错误:use of unresolved identifier: ORKESerializer
所以在 ORKTest 应用程序中,在 GitHub 个文件中,我找到了 2 个文件。一个叫ORKESerialization.h
,一个叫ORKESerialization.m
。我尝试将它们拖到我的项目中,因为我在视频中看到了该人项目中的那些文件。然后这也促使我创建一个桥接头文件,我也在他的项目中看到了。
这样做之后,我仍然遇到同样的错误。事实上,我并不知道如何将这些序列化包包含在我的应用程序中。有谁知道如何包含正确的文件以便我可以实现这个 ORKEserialization 方法?
谢谢!
您需要在桥接中导入 ORKESerialization.h header:
#import "ORKESerialization.h"