Periksa ketersediaan fitur

Saat fitur baru ditambahkan ke Health Connect, pengguna mungkin tidak selalu mengupdate versi Health Connect mereka. Feature Availability API adalah cara untuk memeriksa apakah fitur di Health Connect tersedia di perangkat pengguna dan memutuskan tindakan yang harus diambil.

Mulai

Feature Availability API memiliki dependensi yang sama dengan Health Connect SDK. Untuk memulai, pastikan setidaknya versi 1.1.0-alpha08 ada dalam file build.gradle Anda:

dependencies {
  implementation("androidx.health.connect:connect-client:1.2.0-alpha06")
}

Tanda fitur

Tombol fitur yang tersedia untuk Health Connect tercantum dalam tabel berikut. Fungsi di balik tombol fitur tidak akan tersedia untuk digunakan jika perangkat pengguna tidak mendukung fitur tersebut.

Tabel: Flag ketersediaan fitur Health Connect
Tombol fitur Jenis data Panduan terkait
FEATURE_ACTIVITY_INTENSITY Intensitas aktivitas Latihan fisik
FEATURE_EXTENDED_DEVICE_TYPES Jenis perangkat yang diperluas Persyaratan metadata
FEATURE_MATCHMAKING Pencarian lawan
FEATURE_PERSONAL_HEALTH_RECORD Rekam medis Format data Rekam Medis
Tulis data medis
Baca data medis
FEATURE_MINDFULNESS_SESSION Mindfulness Melacak mindfulness
FEATURE_PLANNED_EXERCISE Olahraga terencana Latihan fisik
Rencana latihan
FEATURE_READ_HEALTH_DATA_IN_BACKGROUND Membaca data di latar belakang Contoh pembacaan latar belakang
FEATURE_READ_HEALTH_DATA_HISTORY Membaca data historis Membaca data yang lebih lama dari 30 hari
FEATURE_SKIN_TEMPERATURE Suhu kulit Tanda-tanda vital
Mengukur suhu kulit

Melakukan pemeriksaan

Fungsi utama untuk memeriksa ketersediaan fitur adalah getFeatureStatus(). Tindakan ini akan menampilkan konstanta bilangan bulat FEATURE_STATUS_AVAILABLE atau FEATURE_STATUS_UNAVAILABLE:

Untuk menentukan apakah perangkat pengguna mendukung Baca Data Kesehatan di Latar Belakang di Health Connect, periksa ketersediaan FEATURE_READ_HEALTH_DATA_IN_BACKGROUND di klien:

if (healthConnectClient
     .features
     .getFeatureStatus(
       HealthConnectFeatures.FEATURE_READ_HEALTH_DATA_IN_BACKGROUND
     ) == HealthConnectFeatures.FEATURE_STATUS_AVAILABLE) {

  // Feature is available
} else {
  // Feature isn't available
}

Untuk mengetahui daftar semua tombol fitur yang tersedia, lihat halaman referensi HealthConnectFeatures.

Menangani ketidaktersediaan fitur

Jika fitur tidak tersedia di perangkat pengguna, update mungkin akan mengaktifkannya. Anda dapat mempertimbangkan untuk mengarahkan pengguna agar mengupdate Health Connect jika mereka tidak memiliki versi terbaru yang didukung di perangkat mereka. Namun, pengguna yang menggunakan APK (di Android 13 dan yang lebih rendah) tidak dapat menggunakan fitur modul sistem yang hanya tersedia di perangkat yang menjalankan Android 14 atau yang lebih tinggi.

Untuk jenis perangkat yang diperluas, jika FEATURE_EXTENDED_DEVICE_TYPES tidak tersedia di perangkat pengguna, nilai tersebut akan diperlakukan sebagai Device.TYPE_UNKNOWN. Sediakan penggantian yang sesuai dalam logika penulisan dan UI Anda.