در دسترس بودن ویژگی را بررسی کنید

وقتی ویژگی‌های جدیدی به Health Connect اضافه می‌شود، کاربران ممکن است همیشه نسخه Health Connect خود را به‌روزرسانی نکنند. Feature Availability API راهی است برای بررسی اینکه آیا یک ویژگی در Health Connect در دستگاه کاربر شما موجود است یا خیر و تصمیم می‌گیرید که چه اقدامی انجام دهید.

شروع کنید

Feature Availability API وابستگی مشابهی با Health Connect SDK دارد. برای شروع، بررسی کنید که حداقل نسخه 1.1.0-alpha08 در فایل build.gradle شما موجود باشد:

dependencies {
  implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}

چک را انجام دهید

تابع اصلی برای بررسی در دسترس بودن ویژگی getFeatureStatus() است. این ثابت های عدد صحیح FEATURE_STATUS_AVAILABLE یا FEATURE_STATUS_UNAVAILABLE را برمی گرداند:

برای تعیین اینکه آیا دستگاه کاربر از Read Health Data in Background on Health Connect پشتیبانی می‌کند یا خیر، در دسترس بودن FEATURE_READ_HEALTH_DATA_IN_BACKGROUND را در مشتری بررسی کنید:

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

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

برای لیستی از همه پرچم‌های ویژگی موجود، به صفحه مرجع HealthConnectFeatures مراجعه کنید.

عدم دسترسی به ویژگی را مدیریت کنید

اگر یک ویژگی در دستگاه کاربر در دسترس نباشد، ممکن است به‌روزرسانی آن را فعال کند. اگر کاربر آخرین نسخه پشتیبانی شده را در دستگاه خود ندارد، می‌توانید به کاربر دستور دهید Health Connect را به‌روزرسانی کند. با این حال، کاربرانی که از APK (در اندروید 13 و پایین‌تر) استفاده می‌کنند، نمی‌توانند از ویژگی‌های ماژول سیستمی که فقط در دستگاه‌های دارای Android نسخه 14 یا بالاتر در دسترس هستند استفاده کنند.

برای انواع دستگاه‌های توسعه‌یافته، اگر FEATURE_EXTENDED_DEVICE_TYPES در دستگاه کاربر در دسترس نباشد، آن مقادیر به‌عنوان Device.TYPE_UNKNOWN تلقی می‌شوند.TYPE_UNKNOWN. یک بازگشت معقول در منطق نوشتن و رابط کاربری خود ارائه دهید.