Android 權限旨在保護 Android 使用者的隱私權。如果應用程式要存取聯絡人或相片等機密資料的資料類型,以及位置或步驟偵測等系統功能,應用程式會提示使用者。使用者首次下載應用程式時,會授予這些權限。
如果您的應用程式需要存取這些資料類型 (Google Fit 資料類型的一部分),請先要求相關的 Android 權限再提出 OAuth 權限要求。詳情請見下文。

需要 Android 權限的資料類型
如要存取這些體能活動資料類型,您必須要求 ACTIVITY_RECOGNITION
Android 權限:
如何記錄這些資料類型:
com.google.step_count.delta
com.google.step_count.cumulative
com.google.step_count.cadence
com.google.activity.segment
com.google.calories.expended
如何讀取這些資料類型:
com.google.step_count.delta
com.google.step_count.cumulative
com.google.step_count.cadence
com.google.activity.segment
com.google.activity.exercise
如要存取這些資料類型,您必須要求 ACCESS_FINE_LOCATION
的 Android 權限:
- 如何讀取這些資料類型:
com.google.distance.delta
com.google.location.sample
com.google.location.bounding_box
com.google.speed
如要記錄這些資料類型,您必須要求 BODY_SENSORS
Android 權限:
com.google.heart_rate.bpm
要求 Android 權限
瞭解如何要求 Android 權限、體能活動辨識權限、精確位置存取權和人體感應器權限。
如要透過 Google Fit API 存取上述資料類型,您必須實作邏輯,以處理 Android 10 和舊版 Android 要求的 Android 權限。這些範例使用 ACTIVITY_RECOGNITION
權限。
Android 10
因此,您的應用程式可以指定 API 級別 29 以上版本、要求使用者授予權限,並在應用程式資訊清單檔案中註冊權限。
-
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
-
if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION) != PackageManager.PERMISSION_GRANTED) { // Permission is not granted }
如果尚未授予權限,請要求權限:
ActivityCompat.requestPermissions(thisActivity, arrayOf(Manifest.permission.ACTIVITY_RECOGNITION), MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
Android 9 以下版本
因此,您的應用程式可以指定 28 以下的 API 級別:
要求
com.google.android.gms.permission.ACTIVITY_RECOGNITION
權限。-
<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>