Android İzinleri

Android izinleri, Android kullanıcılarının gizliliğini korumayı amaçlar. İstemleri Uygulamalar kişiler veya fotoğraflar gibi hassas verilerle ilgili veri türlerine erişmek istediğinde kullanıcı ve konum veya adım algılama gibi sistem özellikleridir. Kullanıcılar, uygulamanızı ilk kez indirirken bu izinleri verir.

Uygulamanızın bu veri türlerinden herhangi birine (Google Fit veri türlerinin bir alt kümesi) erişmesi gerekiyorsa OAuth izinlerini istemeden önce ilgili Android iznini isteyin. Aşağıya bakın.

Android izinleri izin ekranı örneği
Şekil 1.Android izinleri izin ekranı.

Android izinleri gereken veri türleri

Bu fiziksel aktivite veri türlerine erişmek için ACTIVITY_RECOGNITION Android iznini istemeniz gerekir:

  • Bu veri türlerini kaydetmek için:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • Bu veri türlerini okumak için:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.activity.exercise

Bu veri türlerine erişmek için ACCESS_FINE_LOCATION Android iznini istemeniz gerekir:

  • Bu veri türlerini okumak için:
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

Bu veri türlerini kaydetmek için BODY_SENSORS Android iznini istemeniz gerekir:

  • com.google.heart_rate.bpm

Android izinleri isteme

Android izinleri isteme, fiziksel aktivite algılama izni, hassas konum izni ve vücut sensörleri izni hakkında bilgi edinin.

Google Fit API'leriyle yukarıdaki veri türlerine erişmek için: Hem Android 10 hem de Android 10 için Android izni isteme mantığını uygulayın. Android'in önceki sürümleri. Bu örneklerde ACTIVITY_RECOGNITION izni kullanılmaktadır.

Android 10

Böylece uygulamanız API düzeyi 29 veya sonraki sürümleri hedefleyebilir, kullanıcıdan izin isteyebilir ve izni uygulama manifest dosyasına kaydedebilir.

  1. İzni manifest dosyasına ekleyin.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. İzinin verilip verilmediğini kontrol edin:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. Henüz izin verilmediyse izni isteyin:

    ActivityCompat.requestPermissions(thisActivity,
                arrayOf(Manifest.permission.ACTIVITY_RECOGNITION),
                MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
    

Android 9 ve önceki sürümler

Bu nedenle, uygulamanız API düzeyi 28 veya altını hedefleyebilir:

  1. com.google.android.gms.permission.ACTIVITY_RECOGNITION izni isteyin.

  2. İzni manifest dosyasına ekleyin.

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