Total Pageviews

Monday, 12 June 2023

ResearchKit医疗软件基础架构

 


苹果宣布 ResearchKit 开源,面向研究者和开发者提供使用。这是一个专为医学和健康研究打造的软件基础框架,可协助医生、科学家和其他研究者,更频繁且更精准地收集医学研究参与者的 数据。

开源基础框架可让任何医学研究者充分利用 ResearchKit 的初始模块,研究健康与保健,更好地了解疾病。开发者也可以在开源代码的基础上,构建新的模块,加入到 ResearchKit 中。可定制的初始模块包含研究项目中的大多数常见元素,包括参与者同意、调查和活动任务等。

ResearchKit 将 iPhone 转变为医学研究的强大工具。在获得参与者授权许可后,ResearchKit app 便可获取加速感应器、陀螺仪、麦克风和 GPS 等 iPhone 先进传感器中的各项数据,用于深入了解参与者的活动量、运动损伤、记忆力等。ResearchKit 可与 HealthKit™ 无缝配合使用,HealthKit™ 是 Apple 随 iOS 8 推出的一个软件基础框架,让开发者能够打造出可实现相互沟通的健康和健身 app。经过参与者同意之后,ResearchKit app 还可访问并使用来自健康 app 的数据,如经由第三方设备和 app 测量的体重、血压、血糖水平和哮喘雾化吸入器使用情况等个人资料。

-------------

ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.

www.researchandcare.org

ResearchKit Framework

VCS Platform CocoaPods Carthage Compatible License

The ResearchKit™ framework is an open source software framework that makes it easy to create apps for medical research or for other research projects.

Getting More Information

  • Join the ResearchKit Forum for discussing uses of the ResearchKit framework and related projects.

Use Cases

A task in the ResearchKit framework contains a set of steps to present to a user. Everything, whether it’s a survey, the consent process, or active tasks, is represented as a task that can be presented with a task view controller.

Surveys

The ResearchKit framework provides a pre-built user interface for surveys, which can be presented modally on an iPhone, iPod Touch, or iPad. See Creating Surveys for more information.

Consent

The ResearchKit framework provides visual consent templates that you can customize to explain the details of your research study and obtain a signature if needed. See Obtaining Consent for more information.

Active Tasks

Some studies may need data beyond survey questions or the passive data collection capabilities available through use of the HealthKit and CoreMotion APIs if you are programming for iOS. ResearchKit's active tasks invite users to perform activities under semi-controlled conditions, while iPhone sensors actively collect data. See Active Tasks for more information. ResearchKit active tasks are not diagnostic tools nor medical devices of any kind and output from those active tasks may not be used for diagnosis. Developers and researchers are responsible for complying with all applicable laws and regulations with respect to further development and use of the active tasks.

Charts

ResearchKit includes a Charts module. It features three chart types: a pie chart (ORKPieChartView), a line graph chart (ORKLineGraphChartView), and a discrete graph chart (ORKDiscreteGraphChartView).

The views in the Charts module can be used independently of the rest of ResearchKit. They don't automatically connect with any other part of ResearchKit: the developer has to supply the data to be displayed through the views' dataSources, which allows for maximum flexibility.

Getting Started

Requirements

The primary ResearchKit framework codebase supports iOS and requires Xcode 8.0 or newer. The ResearchKit framework has a Base SDK version of 8.0, meaning that apps using the ResearchKit framework can run on devices with iOS 8.0 or newer.

Installation

The latest stable version of ResearchKit framework can be cloned with

git clone -b stable https://github.com/ResearchKit/ResearchKit.git

Or, for the latest changes, use the main branch:

git clone https://github.com/ResearchKit/ResearchKit.git

CocoaPods Installation

For latest stable release

pod 'ResearchKit'

For early development releases

  pod 'ResearchKit', :git => 'https://github.com/ResearchKit/ResearchKit.git', :branch => 'main'

Building

Build the ResearchKit framework by opening ResearchKit.xcodeproj and running the ResearchKit framework target. Optionally, run the unit tests too.

Adding the ResearchKit framework to your App

This walk-through shows how to embed the ResearchKit framework in your app as a dynamic framework, and present a simple task view controller.

1. Add the ResearchKit framework to Your Project

To get started, drag ResearchKit.xcodeproj from your checkout into your iOS app project in Xcode:

Adding the ResearchKit framework to your
   project

Then, embed the ResearchKit framework as a dynamic framework in your app, by adding it to the Embedded Binaries section of the General pane for your target as shown in the figure below.

Adding the ResearchKit framework to
   Embedded Binaries

Adding the ResearchKit framework to Embedded Binaries

Note: You can also import ResearchKit into your project using a dependency manager such as CocoaPods or Carthage.

from https://github.com/ResearchKit/ResearchKit

-------------------------------------------------------------

AppCore

AppCore is a layer built on top of ResearchKit which forms the core of the five initial ResearchKit apps.

It includes some of the key features of those initial ResearchKit apps, including:

  • Dashboard with progress graphs
  • Data storage back end
  • JSON serialization and deserialization
  • Integration with Sage Bionetworks' Bridge service

We are excited about how helpful AppCore has been in the development of several ResearchKit apps. In order to help the ResearchKit community derive the most utility from the individual components in AppCore, we’re working hard with many developers to transition components of AppCore into the main ResearchKit repo. As a result, we will only be accepting bug fixes to AppCore moving forward and hope you’ll continue giving feature and UI enhancements once the pieces are fully integrated into ResearchKit’s repo.

We posted AppCore at the time the ResearchKit was released as a way to provide functionality that the ResearchKit framework did not have at the time. Since then, there have been many improvements to ResearchKit which make it no longer necessary to use AppCore.

Before you decide to use AppCore, consider these ResearchKit alternatives for AppCore’s components:

Also take a look the ResearchKit sample app (ORKSample) to see how to use the latest ResearchKit capabilities. https://github.com/ResearchKit/ResearchKit/tree/master/samples/ORKSample/ORKSample

Building AppCore

AppCore does not build stand-alone, but rather is built as part of other projects. To build it, go to one of the projects that uses it, such as Share the Journey.

OpenSSL

This version of AppCore differs from the version in the shipping apps because it does not include OpenSSL, which is used in the shipping apps for Cryptographic Message Syntax (CMS) encryption support.

CMS is used by the apps in order to protect sensitive data stored temporarily on the phone, and while in transit. It helps reduce requirements on back-ends, so that HTTPS endpoints can safely be terminated earlier than the final hop, because data encryption and decryption occurs at the application layer.

To re-enable OpenSSL, build OpenSSL as an iOS static library, add it to the AppCore library target, and then switch the CMS code to use OpenSSL by removing APCCMS_NoEncryption_JustAStub.m from the target and adding APCCMS_UsingOpenSSL.m instead.

from https://github.com/ResearchKit/AppCore

 

 

 

No comments:

Post a Comment