從 MyFitnessPal 應用幫助您記錄一日三餐,再到 Withings 產(chǎn)品為您呈現(xiàn)自身健康水平的全面分析,應用和設備已然形成了聚合多種健康和健身信息的數(shù)據(jù)源。如果您是 Android 開發(fā)者,通過在應用間連接和共享這些數(shù)據(jù)能夠幫助您更深入了解用戶,并向他們提供更豐富的體驗。然而,這些健康數(shù)據(jù)大都散布在體驗各異的多種設備上,所以過去想要整合起來十分困難,此外,還沒有一種統(tǒng)一的隱私管理方案來保護 Android 用戶的數(shù)據(jù)。
了解 Health Connect
為了解決文章開頭提到的問題,我們推出了 Health Connect,它既是一個平臺,也是面向 Android 應用開發(fā)者的 API。在用戶允許的前提下,開發(fā)者們可以用這一組 API 實現(xiàn)跨 Android 設備訪問和共享用戶的健康及健身數(shù)據(jù)。
當前我們正與三星合作以簡化應用之間連接為目標來構建這個新的統(tǒng)一平臺。我們與三星共同推出了 Health Connect,旨在打造更豐富的應用體驗,并為用戶提供統(tǒng)一的隱私控制支持。
同時,我們一直在與 MyFitnessPal、Leap Fitness 和 Withings 的開發(fā)者開展早期體驗計劃。此外,Samsung Health、Google Fit 和 Fitbit 正在整合接入 Health Connect。所有開發(fā)者們都可以通過 Android Jetpack 獲得 Health Connect 提供的 Android API 集。
Health Connect 通過使用自身的平臺和技術來連接健康信息并為之賦能,這與 Google Health 的愿景 "幫助數(shù)十億人保持健康" (Helping billions of people be healthier) 所做出的廣泛努力相契合。
Health Connect 是如何運作的?
Health Connect 支持多種常見的健康和健身數(shù)據(jù)類型以及類別,其中包括: 活動情況、睡眠質(zhì)量、營養(yǎng)攝入、體測數(shù)據(jù)以及重要的體征信息 (比如心率和血壓)。
經(jīng)過用戶同意后,開發(fā)者們可以通過標準化的架構和 API 調(diào)用,安全地從 Health Connect 讀取或?qū)懭霐?shù)據(jù)。用戶對自己的隱私設置持有完全的控制權,Health Connect 為其提供了精細的粒度來查看哪些 App 在某個時刻請求了數(shù)據(jù)訪問。Health Connect 產(chǎn)生的所有數(shù)據(jù)都被加密存放在設備本地,用戶完全可以禁用對 Health Connect 數(shù)據(jù)的訪問,也可以刪除某些自己不想存放在設備里的數(shù)據(jù)。當用戶使用多個同類應用時,Health Connect 還為其提供了將某個數(shù)據(jù)源的優(yōu)先級提高的選項。
開始使用
讓您的應用接入 Health Connect 非常簡單。Health Connect 的這組 API 簡化了權限管理和數(shù)據(jù)讀寫。下面示例代碼為您展示了怎樣先請求權限,隨后寫入一些數(shù)據(jù)。
首先,構造一個您希望請求讀取或?qū)懭氲氖跈鄼嘞藜稀1纠校覀儠x寫行走步數(shù)和心率數(shù)據(jù)。
private val permissions =
setOf(
Permission.createReadPermission(Steps::class),
Permission.createWritePermission(Steps::class),
Permission.createReadPermission(HeartRate::class),
Permission.createWritePermission(HeartRate::class),
)
//隨后,為這組權限創(chuàng)建一個權限請求。您可以使用 ActivityCompat.requestPermissions()方法。
隨后,發(fā)起剛才創(chuàng)建的權限請求,用戶可以在 Health Connect 的授權界面上賦予有關權限。
當用戶授權后,您就可以讀寫數(shù)據(jù)了。下面的代碼片段展示了怎樣寫入一段時間內(nèi)的步數(shù)信息。首先,這組數(shù)據(jù)中包含了此段時間內(nèi)的總步數(shù)、開始和結束時間,以及時區(qū)信息。隨后,這組數(shù)據(jù)會被插入 Health Connect 里。
private suspend fun writeSomeData(client: HealthConnectClient) {
val records = mutableListOf()
records.add(
Steps(
count = 888,
startTime = START_TIME,
endTime = END_TIME,
startZoneOffset = null,
endZoneOffset = null,
)
)
// 如果有需要的話,可以增加額外的記錄項
}
原文標題:一起看 I/O | 用 Health Connect 連通應用間的健康數(shù)據(jù)
文章出處:【微信公眾號:谷歌開發(fā)者】歡迎添加關注!文章轉載請注明出處。
審核編輯:湯梓紅
-
Android
+關注
關注
12文章
3937瀏覽量
127484 -
數(shù)據(jù)
+關注
關注
8文章
7067瀏覽量
89108 -
API
+關注
關注
2文章
1502瀏覽量
62100
原文標題:一起看 I/O | 用 Health Connect 連通應用間的健康數(shù)據(jù)
文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發(fā)者】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論