Izin Android

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.

Contoh layar persetujuan izin Android
Gambar 1.Layar izin izin Android.

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.

  1. Tambahkan izin ke file manifes.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. Periksa apakah izin diberikan:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. 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:

  1. Minta izin com.google.android.gms.permission.ACTIVITY_RECOGNITION.

  2. Tambahkan izin ke file manifes.

    <uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>