Izin Android bertujuan untuk melindungi privasi pengguna Android. Mereka meminta izin pengguna saat aplikasi ingin mengakses jenis data untuk data sensitif seperti kontak atau foto, dan fitur sistem seperti deteksi lokasi atau langkah. Pengguna memberikan izin ini saat pertama kali mengunduh aplikasi Anda.
Jika aplikasi Anda memerlukan akses ke salah satu jenis data ini (subset jenis data Google Fit), mintalah Android sebelum meminta izin OAuth. Lihat di bawah.
Jenis data yang memerlukan izin Android
Untuk mengakses jenis data aktivitas fisik ini, Anda harus meminta izin Android ACTIVITY_RECOGNITION
:
Untuk merekam jenis data ini:
com.google.step_count.delta
com.google.step_count.cumulative
com.google.step_count.cadence
com.google.activity.segment
com.google.calories.expended
Untuk membaca jenis data ini:
com.google.step_count.delta
com.google.step_count.cumulative
com.google.step_count.cadence
com.google.activity.segment
com.google.activity.exercise
Untuk mengakses jenis data ini, Anda harus meminta izin Android ACCESS_FINE_LOCATION
:
- Untuk membaca jenis data ini:
com.google.distance.delta
com.google.location.sample
com.google.location.bounding_box
com.google.speed
Untuk merekam jenis data ini, Anda harus meminta izin Android BODY_SENSORS
:
com.google.heart_rate.bpm
Meminta izin Android
Pelajari cara meminta izin Android, izin pengenalan aktivitas fisik, izin akses lokasi terperinci, dan izin sensor tubuh.
Untuk mengakses jenis data di atas dengan Google Fit API, Anda perlu
mengimplementasikan logika untuk menangani permintaan izin Android untuk Android 10 dan
Android versi sebelumnya. Contoh ini menggunakan izin ACTIVITY_RECOGNITION
.
Android 10
Agar aplikasi Anda dapat menargetkan API level 29 atau yang lebih tinggi, mintalah izin dari pengguna, dan mendaftarkan izin dalam file manifes aplikasi.
Tambahkan izin ke file manifes.
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
Periksa apakah izin diberikan:
if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION) != PackageManager.PERMISSION_GRANTED) { // Permission is not granted }
Jika izin belum diberikan, minta izin:
ActivityCompat.requestPermissions(thisActivity, arrayOf(Manifest.permission.ACTIVITY_RECOGNITION), MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
Android 9 dan yang lebih lama
Jadi aplikasi Anda dapat menargetkan API level 28 atau yang lebih rendah:
Minta izin
com.google.android.gms.permission.ACTIVITY_RECOGNITION
.Tambahkan izin ke file manifes.
<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>