برنامه تناسب اندام Wear OS خود را با آخرین نسخه خدمات بهداشتی تقویت کنید



ارسال شده توسط Breana Tate، مهندس روابط توسعه دهندگاناین API خدمات سلامت توسعه دهندگان را قادر می سازد از داده های حسگر روی دستگاه و الگوریتم های مرتبط استفاده کنند تا به برنامه های خود داده های باکیفیت مرتبط با فعالیت، ورزش و سلامتی ارائه دهند. علاوه بر این، لازم نیست بین حفظ عمر باتری و ارائه داده‌های فرکانس بالا یکی را انتخاب کنید – خدمات سلامت انجام هر دو را ممکن می‌سازد. از زمان اعلام خدمات Health Services Alpha در I/O ’21، ما تعدادی پیشرفت را برای این پلتفرم با هدف ساده‌سازی تجربه توسعه معرفی کرده‌ایم. برای آشنایی با ویژگی‌های هیجان‌انگیز سرویس‌های بهداشتی بتا در Android Jetpack که برنامه شما می‌تواند هنگام مهاجرت از آلفا از آنها استفاده کند، ادامه دهید.

با معیارهای جدید بیشتر ع، بگیرید

Health Services Jetpack Beta داده‌های جدید و انواع ورزش را معرفی می‌کند DataType.GOLF_SHOT_COUNT، ExerciseType.HORSE_RIDING، و ExerciseType.Backpacking. می‌تو،د فهرست کامل تمرین‌ها و انواع داده‌های جدید را مرور کنید اینجا. این مکمل کتابخانه بزرگ در حال حاضر داده ها و ورزش انواع در دسترس توسعه دهندگ، که برنامه های Wear OS را با خدمات بهداشتی می سازند. علاوه بر این، ما توانایی گوش دادن به رویدادهای سلامتی، مانند تشخیص سقوط، را اضافه کرده‌ایم P،iveMonitoringClient.

علاوه بر انواع داده های جدید، ما همچنین یک مدل سازم، جدید برای داده ها در خدمات بهداشتی معرفی کرده ایم. این مدل جدید با افزودن اطلاعات طبقه بندی اضافی به انواع داده ها و نقاط داده، API خدمات بهداشتی را از نظر نوع ایمن تر می کند و احتمال خطا در کد را کاهش می دهد. در بتا، همه دیتاپوینت انواع زیر ک، خود را دارند و از آن مشتق شده اند دیتاپوینت ک، شما می تو،د یکی را انتخاب کنید:

  • SampleDataPoints
  • IntervalDataPoints
  • StatisticalDataPoints
  • CumulativeDataPoints.

انواع داده ها به ،وان دسته بندی می شوند AggregateDataTypes یا DeltaDataTypes.

در نتیجه این تغییر، Health Services می تواند نوع صحیح را در زمان کامپایل به جای زمان اجرا تضمین کند و خطاها را کاهش دهد و تجربه توسعه دهنده را بهبود بخشد. برای مثال، نقاط داده مکان اکنون به‌،وان یک شی LocationData با تایپ قوی به جای DoubleArray نشان داده می‌شوند. به مثال زیر دقت کنید:

قبلا:

exerciseUpdate.latestMetrics[DataType.LOCATION]؟.برای هر {
val loc = it.value.a،eArray()

val لات = مکان[DataPoints.LOCATION_DATA_POINT_LATITUDE_INDEX]
val lon = محل[DataPoints.LOCATION_DATA_POINT_LONGITUDE_INDEX]
val دیگر = مکان[DataPoints.LOCATION_DATA_POINT_ALTITUDE_INDEX]

println(“(لات دلار،دلار،$alt) @ ${it.s،DurationFromBoot})
}

بتا خدمات سلامت:

به روز رس، ورزش.latestMetrics.getData(DataType.LOCATION).برای هر {
// it.value از نوع LocationData است
val loc = آن.ارزش
val زمان = آن.timeDurationFromBoot
println(“loc = [${loc.la،ude}, ${loc.lon،ude}, ${loc.al،ude}] @$time”)

}

همانطور که می بینید، با توجه به رویکرد جدید، خدمات سلامت این را می داند محل از نوع است فهرست> زیرا DataType.LOCATION به ،وان a تعریف می شود DeltaDataType>.

وضعیت پایان تمرین تلفیقی

ExerciseState اکنون در داخل گنجانده شده است ExerciseUpdate’s ExerciseStateInfo ویژگی. برای اینکه کنترل بیشتری بر نحوه واکنش برنامه‌تان به تمرین پای، داشته باشید، موارد جدیدی را اضافه کرده‌ایم ExerciseStates نامیده می شود ExerciseState. پایان یافت و ExerciseState.ENDING برای جایگزینی آنچه که قبلاً چندین گونه از حالت های پای، و پای، بود. این ایالات جدید همچنین شامل یک endReason، مانند USER_END، AUTO_END_PREPARE_EXPIRED، و AUTO_END_PERMISSION_LOST.

مثال زیر نحوه بررسی پایان تمرین را نشان می دهد:

val پاسخ به تماس = هدف – شی : ExerciseUpdateCallback {
نادیده گرفتن سرگرم کننده onExerciseUpdateReceived(به روز رس،: Exercise Update) {
اگر (update.exerciseStateInfo.state.isEnded) {
// تمرین یا توسط کاربر به پایان رسیده است، یا در غیر این صورت پایان یافته است
val دلیل = update.exerciseStateInfo.endReason
}

}

}

بهبود نظارت غیرفعال

بتای خدمات سلامت نیز به مجموعه جدیدی از APIهای شنونده غیرفعال منتقل می شود. این تغییرات عمدتاً بر روی تایپ بهتر معیارهای روزانه و ادغام آسان‌تر تمرکز می‌کنند. به ،وان مثال، ما نام را تغییر دادیم P،iveListenerConfig عملکرد setP،iveGoals به setDailyGoals. این تغییر تقویت می‌کند که Health Services فقط از اه، غیرفعال روزانه پشتیب، می‌کند. ما همچنین چندین API را برای ثبت شنوندگان غیرفعال در یک تماس ثبت‌نام فشرده کرده‌ایم. کلاینت‌ها می‌توانند مستقیماً نادیده‌گیری‌های مورد نظر را فقط برای داده‌هایی که برنامه شما نیاز دارد پیاده‌سازی کنند.

علاوه بر این، شنونده منفعل گیرنده پخش جایگزین شد P،iveListenerService، که تایپ قوی تری را همراه با قابلیت اطمینان و عملکرد بهتر ارائه می دهد. مشتریان اکنون می‌توانند همزمان با درخواست‌های مختلف، هم یک سرویس و هم یک تماس برگشتی را ثبت کنند، و در عین حال ثبت درخواست پس‌زمینه را برای به‌روزرس،‌های پایگاه داده آسان‌تر می‌کند.

برای دستگاه‌های حتی بیشتر در Wear OS 3 بسازید

خدمات بهداشتی فقط برای Wear OS 3 در دسترس است. ا،یستم Wear OS 3 اکنون شامل دستگاه‌های بیشتری می‌شود، به این م،ی که برنامه‌های شما می‌توانند حتی کاربران بیشتری را در اختیار بگیرند. Montblanc، Samsung و Fossil تنها تعدادی از OEM هایی هستند که اخیراً دستگاه های جدیدی را با سیستم عامل Wear OS 3 منتشر کرده اند (که در اوا، امسال عرضه خواهد شد!). Pixel Watch جدید همچنین دارای ردیابی سلامت Fitbit است که توسط Health Services پشتیب، می‌شود.

اگر قبلاً از خدمات بهداشتی و درم، استفاده نکرده اید، اکنون زمان آن است که آن را امتحان کنید! و اگر برنامه شما هنوز از خدمات بهداشتی آلفا استفاده می کند، به این دلیل است که باید مهاجرت کنید:

  • توسعه مداوم خدمات بهداشتی: از آنجایی که خدمات بهداشتی بتا جدیدترین نسخه است، رفع اشکال و بهبود ویژگی‌ها احتمالاً نسبت به نسخه‌های قدیمی‌تر اولویت دارند.
  • زیرساخت برنامه شما را برای زم، که خدمات بهداشتی به انتشار پایدار می‌رود آماده می‌کند
  • بهبود در ایمنی تایپ – احتمال خطا کمتر در کد!
  • عملکردهای اضافی را اضافه می کند تا کار با داده های خدمات بهداشتی را آسان تر کند

می تو،د لیست کامل تغییرات و اسناد به روز شده را در اینجا مشاهده کنید developer.android.com.


منبع: http://android-developers.googleblog.com/2022/11/power-your-wear-os-fitness-app-with-health-services-latest-version.html