Relationship with HealthKit
Apple promotes HealthKit as a technology that allows iOS applications providing health and fitness services to share data with each other. Effectively, HealthKit is a system-wide, health-specific database with developer services that allow the applications to read and write health data to HealthKit. Given the sensitivity of the data stored in the HealthKit repository, HealthKit will request permission from the user for each requested category of information and whether or not the application is allowed to read or write data of the requested category.
ResearchKit and HealthKit are separate but related technologies. ResearchKit utilizes HealthKit in a variety of ways. ResearchKit tasks may require access to information stored in HealthKit in order to present appropriate feedback to the participant or record such information for statistical analysis. A ResearchKit task may write information to HealthKit (for example, a participant's weight, blood pressure, and so on) after obtaining the participant's permission. Additionally, ResearchKit uses HealthKit to perform unit conversion on the data that is captured from various sensors or read from HealthKit.
Features not provided by ResearchKit
A ResearchKit-based application may need additional features beyond those provided by ResearchKit. The initial set of ResearchKit-based application provide the following capabilities:
- Backend services: In order to be of any use, the recorded data must be transmitted somewhere for analysis. The initial ResearchKit-based applications used a service from a non-profit organization, Sage Bionetworks.
- User feedback of completed tasks: Appropriate levels of feedback to the user create engaging applications that encourages the user to continue using the application. This increases the likelihood of continued data streams from the participants.
- Data security and privacy: Applications must safeguard a participant's personal information by applying the appropriate level data and communication security.
- Passive data collection: Depending on the nature of the research study, it may be beneficial for the application to collect data in the background without direct participant involvement. For example, using location tracking at a low frequency, an application can obtain relative displacements and use it as a measure of socialization.
- Task scheduling: A study may want tasks performed at different frequencies and quantities.