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 bu izinleri verir inceleyebilirsiniz.

Uygulamanızın bu veri türlerinden herhangi birine erişmesi gerekiyorsa (Google Fit veri türlerinin bir alt kümesi) kullanıyorsanız ilgili Android iznini vermeniz gerekir. 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 verisi türlerine erişmek için ACTIVITY_RECOGNITION Android izni 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 izni 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 izni istemeniz gerekir:

  • com.google.heart_rate.bpm

Android izinleri isteme

Android izinleri isteme, fiziksel aktivite tanıma izni, hassas konum izni ve vücut sensörleri izni.

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

Uygulamanızın API düzeyi 29 veya üstünü hedefleyebilmesi için kullanın ve izni uygulama manifest dosyasına kaydedin.

  1. İzni manifest dosyasına ekleyin.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. İznin 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

Dolayısıyla 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"/>
    
ziyaret edin.