Apple ResearchKit: A Health App Framework to Advance Medical Research
By developing an iOS app using ResearchKit, for the first time, researchers can efficiently recruit a large number of geographically different study participants to carry out clinical studies. Developers within CDC’s Informatics Innovation Unit (IIU) created a prototype ResearchKit app to examine its capabilities and potential application to public health.
What is Research Kit?
ResearchKit, one of Apple’s three open source software frameworks for apps (HealthKit and CareKit are the other two), helps medical researchers gather data and recruit participants for research studies via iOS devices (i.e., iPhone and iPad). By simplifying survey development, sharing study information and obtaining a participant’s consent and structuring the collection of patient data, ResearchKit brings iOS devices into the domain of medical research. The ResearchKit framework includes three built-in modules commonly used in clinical research: surveys, consent and “active tasks.” Researchers can use these active tasks with minimal coding to instruct participants to perform specific activities. The active tasks are organized into six categories including motor activities (e.g., balance and touching), fitness (e.g., heart rate and walking speed), cognition (e.g., reaction time), voice (e.g., speech and phonation testing), audio (e.g., hearing testing) and hole peg (e.g., hand dexterity). The iPhone can collect relevant data while participants are performing tasks, with or without other connected devices (e.g., Apple Watch and heart rate monitor).
Pros | Cons | |
|
|
*Scale of 0 to 5 stars, with 5 as the best rating
IIU’s ResearchKit App
We developed IIU’s app using the Swift programming language. As part of our mock research study, we conducted a fitness walking task. The app takes the participant through the following:
- Describes the study
- Asks the participant to agree to the study and sign the consent (ResearchKit stores signatures)
- Provides instructions for the active task (fitness walk, in this case) and rest period
- Surveys participants
The iPhone collects data on active and rest tasks, using the heart rate monitor for rest data. ResearchKit then gives the data back as a JSON file. After researchers parse the data, they can use ResearchKit to display it in a dashboard.
Ease of use
Pros: Straightforward to use – the structure of ResearchKit is good, so the existing documentation is self-explanatory.
Cons: To date, the Apple Watch does not stream real time heart rate data. However, when Apple releases Watch OS 3, it may have that functionality. As ResearchKit is being used by a handful of institutions at this time, there is limited publicly available information.
Ease of Development
Pros: Out of the box, researchers can create surveys, collect signatures, select predefined tasks and display data and charts. You can easily create custom tasks (documentation available).
Cons: ResearchKit could be more integrated with other devices (i.e., Apple Watch). Also, ResearchKit doesn’t have a structured way to get data to a back-end server. Currently,, participant data (e.g., patient information, survey responses and task data) is kept in the iPhone’s memory and is only there as long as the app is running. To store data, it makes more sense to push participant data to a server. It would be nice to store ResearchKit’s data in iCloud and have an API to use for the back-end.
To realize ResearchKit’s full potential, it would take a developer about 1-2 weeks to understand and use the framework’s features.
Resources Available for Developers
There is good documentation, and external developers are creating open source resources. However, it’s still a new, niche market and not mainstream with typical developers.
ResearchKit Alternatives
ResearchStack has been developed to build research study apps on Android devices.
Resources
- Download IIU’s ResearchKit app from IIU’s App Lab (contact informaticslab@cdc.gov for access)
- IIU Health App Source Code on GitHub
- ResearchKit Source Code on GitHub
- ResearchKit Programming Guide
- ResearchKit Documentation
- ResearchKit Predefined tasks
- Examples of ResearchKit apps on Apple’s Website