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)

Active tasks

Abstractly, the built-in active tasks consist of an instruction step (ORKInstructionStep), a get ready countdown step (ORKCountdownStep), task-specific step or steps, followed by a conclusion step (ORKCompletionStep). These tasks are instantiated following the same generic creation pattern employed by ResearchKit:

//  1
let task = ORKOrderedTask.fitnessCheckTaskWithIdentifier("FitnessTask",
            intendedUseDescription: "Blah, blah",walkDuration: 30.0,restDuration: 15.0,options: .None)
//  2
let taskViewController = ORKTaskViewController(task: task, taskRunUUID: nil)
//  3
taskViewController.delegate = self
//  4
let defaultFileManager = NSFileManager.defaultManager()
let documentDirectoryURL = defaultFileManager.URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
taskViewController.outputDirectory = documentDirectoryURL.first!
//  5
presentViewController(taskViewController, animated: true, completion: nil)

The explanation of the above code is given below:

  1. Instantiate...