Book Image

Getting Started with ResearchKit

By : Dhanush Balachandran, Edward Cessna
Book Image

Getting Started with ResearchKit

By: Dhanush Balachandran, Edward Cessna

Overview of this book

ResearchKit is an open source software development framework from Apple that lets you easily create mobile applications for clinical research studies. ResearchKit provides you the ability to orchestrate the administration of tasks and recording of the results. ResearchKit provides tasks in order to perform informed consent, active tasks, and surveys. Starting with the basics of the ResearchKit framework, this books walks you through the steps of creating iOS applications that could serve as the basis of a clinical research mobile app. This book will introduce readers to ResearchKit and how to turn your iPhone into into a clinical research tool. The book will start off by installing and building the research framework in line with the researcher's needs; during this, the reader will learn to embed ResearchKit in the application and create a small task. After this, the book will go a little deeper into creating modules for surveys, consents, and so on. The book will also cover the various aspects of privacy and security with regard to participant data, and how to build dashboards for visualizing medical data and results in line with the researcher's requirements: data backends, JSON serialization and deserialization, and so on. Readers will be able to fully utilize ResearchKit for medical research, will be able to get more and more patients to participate in their surveys, and will gain insights from the surveys using the dashboards created.
Table of Contents (15 chapters)

Obtaining results

The visual consent review, consent review, and data-sharing steps are ResearchKit steps that execute under a ResearchKit task. As such, these steps produce the result objects that the application may use as required. In setting up the task view controller, application specific a delegate for the view controller, as follows:

let task = ORKOrderedTask(identifier: "ConsentTask", steps: [sharingConsentStep])
let taskViewController = ORKTaskViewController(task: task, taskRunUUID: nil)
taskViewController.delegate = selfpresentViewController(taskViewController, animated: true, completion: nil)

The delegate for the task view controller must comply with the ORKTaskViewControllerDelegate protocol; the view controller defines a taskViewController:didFinishWithReasonerror: method that is invoked when the task has results. For consent, the following method definition extracts the results for each individual step:

func taskViewController(taskViewController: ORKTaskViewController,