سلامتی

برنامه های کاربردی سلامتی را به روشی آگنوستیک ایجاد کنید.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
16 اکتبر 2024 - 1.0.0-rc02 - 1.1.0-alpha04

اعلام وابستگی ها

برای افزودن وابستگی به Health، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.

وابستگی‌های مصنوعات مورد نیاز خود را در فایل build.gradle برای برنامه یا ماژول خود اضافه کنید:

شیار

dependencies {
    implementation "androidx.health:health-services-client:1.1.0-alpha03"
}

کاتلین

dependencies {
    implementation("androidx.health:health-services-client:1.1.0-alpha03")
}

بازخورد

بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.

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

برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.

Health Connect Client نسخه 1.0

نسخه 1.0.0-alpha04

24 آگوست 2022

از تاریخ 1.0.0-alpha04، androidx.health:health-connect-client به androidx.health.connect:connect-client منتقل شد. برای نسخه‌های آینده لطفاً از androidx.health.connect:connect-client و یادداشت‌های انتشار مرتبط در صفحه Health Connect ما استفاده کنید.

برای مهاجرت، به سادگی وارد کردن وابستگی خود را از androidx.health:health-connect-client:1.0.0-alpha03 به androidx.health.connect:connect-client:1.0.0-alpha04 تغییر دهید.

نسخه 1.0.0-alpha03

27 جولای 2022

androidx.health:health-connect-client:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

ویژگی های جدید

  • خلاصه تغییرات API جدید: مجموعه‌ای از واحدها به APIهای خواندن، نوشتن، تجمیع اضافه شده‌اند. اکنون برنامه‌ها می‌توانند رکوردها را با واحد انتخابی خود بازیابی یا بنویسند، مانند گرم یا میلی‌گرم برای مواد مغذی NutritionRecord .

تغییرات API

  • List<DataOrigin> برای Set<DataOrigin> در اشیاء مختلف پاسخ درخواست رفع کنید. ( I42342 )
  • واحد کالری کل پایه را از Power->Energy ثابت کنید. ( I0b429 )
  • کلاس های نمونه سری منتقل شده در رکوردهای سری ( Ica9bb ):
    • CyclingPedalingCadence -> CyclingPedalingCadenceRecord.Sample
    • HeartRate -> HeartRateRecord.Sample
    • StepsCadence -> StepsCadenceRecord.Sample
  • منسوخ کردن کلاس HealthDataRequestPermission ، به نفع PermissionController.createRequestPermissionActivityContract . این قابلیت کشف بهتر و پارامترسازی یکپارچه را ترویج می کند. ( I81e7f )
  • اونس سیال ایالات متحده به حجم اضافه شد. ( I5f03d )
  • نوع واحد سرعت اضافه شده ( I1d574 )
  • نوع واحد درصد اضافه شده ( I08f23 )
  • نوع واحد فشار اضافه شده ( Ifb01f )
  • نوع واحد جرمی اضافه شده ( Ifd81a )
  • نوع واحد حجم اضافه شده ( I59ad1 )
  • اضافه شدن نوع واحد برق کلاس نمونه سری Power به داخل کلاس PowerRecord منتقل شد. ( I5b1e5 )
  • نوع واحد انرژی اضافه شده ( I983ae )
  • نوع واحد دما اضافه شده ( I4cdb5 )
  • نام مراجع Activity را برای خاص بودن Exercise تغییر دهید، از جمله ( I3f936 ):
    • تغییر نام ActivityLap -> ExerciseLapRecord
    • تغییر نام ActivityEvent -> ExerciseEventRecord
    • Repetitions تغییر نام داد -> ExerciseRepetitionsRecord
    • تغییر نام ActivitySession -> ExerciseSessionRecord
  • فراداده بسته منتقل شده در زیر رکوردها تودرتو شده است. ( Ie0835 )
  • واحد طول مورد استفاده در تمام رکوردهای باقی مانده ( Ib10dd ):
    • ActivityLapRecord
    • ElevationGainedRecord
    • HeightRecord
    • HipCircumferenceRecord
    • WaistCircumferenceRecord
  • نوع واحد طول اضافه شده ( Idae39 )
  • به روز رسانی اصطلاحات توضیحات CervicalMucus ( I25a2b ):
    • CervicalMucus.Amount -> CervicalMucusRecord.Texture
    • CervicalMucus.Appearance -> CervicalMucusRecord.Sensation
  • اضافه شدن پسوند «Record» به نام‌های کلاس رکورد ( I1ffc2 )

رفع اشکال

  • وقتی lib با طعم انتشار و minifyEnabled true ساخته می شود، مشکلات proguard را برطرف کنید. ( I78933 )
  • اسنادی را که برای استفاده عمومی در نظر گرفته نشده اند پنهان می کند. ( I7a08f )
  • مشکل را در کلاینت هایی که ممکن است وابستگی های پروتوباف خود را داشته باشند، برطرف می کند.(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)

نسخه 1.0.0-alpha02

1 ژوئن 2022

androidx.health:health-connect-client:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

تغییرات API

  • hasMetric و getMetric منسوخ شده در AggregationResult ، حاوی و دریافت عملگرها اضافه شده است ( I7cc7c )
  • OvulationTest.Result.HIGH و OvulationTest.Result.INCONCLUSIVE را اضافه می کند. ( I9f9c4 )

رفع اشکال

  • نیازهای SDK را به 26 کاهش دهید. ( I6d201 )

نسخه 1.0.0-alpha01

11 مه 2022

androidx.health:health-connect-client:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • API برای خواندن سوابق تناسب اندام و سلامت به اشتراک گذاشته شده توسط سایر برنامه ها.
  • API برای نوشتن سوابق تناسب اندام و سلامتی برای به اشتراک گذاری با سایر برنامه ها.
  • API برای بازیابی معیارهای انبوه برای رکوردهای قابل دسترس.
  • API برای بازیابی تغییرات تدریجی (درج، به روز رسانی یا حذف) سوابق توسط برنامه های دیگر.
  • API برای درخواست مجوزهای سلامت از کاربران.
  • API برای بررسی مجوزها یا لغو مجوزهای بهداشتی اعطا شده.

نسخه 1.1 مشتری خدمات سلامت

نسخه 1.1.0-alpha04

16 اکتبر 2024

androidx.health:health-services-client:1.1.0-alpha04 ، androidx.health:health-services-client-external-protobuf:1.1.0-alpha04 و androidx.health:health-services-client-proto:1.1.0-alpha04 منتشر شد. نسخه 1.1.0-alpha04 حاوی این تعهدات است.

رفع امنیتی

  • با توجه به این تغییر ، androidx در برابر protobuf 4.28.2 به منظور آدرس دهی CVE-2024-7254 کامپایل می شود. وابستگی خود را به androidx.health:health-services-client به آخرین نسخه 1.1.0-alpha04 ارتقا دهید تا خطر آسیب پذیری را برطرف کنید.

نسخه 1.1.0-alpha02

13 دسامبر 2023

androidx.health:health-services-client:1.1.0-alpha02 منتشر شد. نسخه 1.1.0-alpha02 حاوی این commit ها است.

تغییرات API

  • برای ExerciseEvent های پشتیبانی شده از یک منبع حقیقت استفاده کنید. ( I03308 )

رفع اشکال

  • رفع اشکال جزئی و بهبود اسناد.

نسخه 1.1.0-alpha01

9 آگوست 2023

androidx.health:health-services-client:1.1.0-alpha01 منتشر شد. نسخه 1.1.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • API های ExerciseEvent در کنار اولین رویداد مشخص اضافه شده اند: GolfShotEvent . اصول اولیه ExerciseEvent به توسعه دهندگان این امکان را می دهد که از پشتیبانی درخواست کنند و زمانی که ساعت تشخیص می دهد اتفاقی رخ داده است، درخواست اطلاع رسانی کنند. GolfShotEvent به عنوان مثال به توسعه دهندگان این امکان را می دهد که علاوه بر دریافت نوع تاب شناسایی شده، هنگام گرفتن عکس گلف از کاربر مطلع شوند.

تغییرات API

  • مشتریان WHS SDK را برای استفاده از عملکردهای GolfShotEvent فعال کنید. ( I76b03 )

رفع اشکال

  • به جای اینکه به شدت استثناهایی را برای دیدن قابلیت های رویداد ورزشی ناشناخته ایجاد کنید، آن را از لیست حذف کنید. ( I06afc )

نسخه 1.0 مشتری خدمات سلامت

نسخه 1.1.0-alpha03

14 مه 2024

androidx.health:health-services-client:1.1.0-alpha03 منتشر شد. نسخه 1.1.0-alpha03 حاوی این تعهدات است.

ویژگی های جدید

  • APIهای DebouncedGoal معرفی شدند که امکان ردیابی یک هدف را برای نوع داده نمونه یا نوع داده نمونه آماری در طول تمرین با ویژگی‌های debouncing ( initialDelay و durationAtThreshold ) می‌دهد. ( I09be9 )
  • نمونه معیارهای در حال اجرا پیشرفته و DataTypes آماری زیر را اضافه کرد. ( I0b8b5 ):
    • Ground Contact Time
    • Vertical Oscillation
    • Vertical Ratio
    • Stride Length

تغییرات API

  • ELEVATION_GAIN_DAILY DataType اضافه شد. ( I059d1 )
  • SWIM_LAP_COUNT_TOTAL DataType به عنوان DataType انبوه برای SWIM_LAP_COUNT اضافه شد. ( I0beeb )

رفع اشکال

  • رفع مشکلات مختلف برای بهبود قابلیت اطمینان IPC.

نسخه 1.0.0-rc02

3 آوریل 2024

androidx.health:health-services-client:1.0.0-rc02 منتشر شد. نسخه 1.0.0-rc02 حاوی این commit ها است. این فقط یک نسخه رفع اشکال است و شامل تغییرات API نیست.

رفع اشکال

  • رفع مشکلات مختلف برای بهبود قابلیت اطمینان IPC
  • رفع مشکلی که در آن فراخوانی startExercise همزمان با prepareExercise می‌تواند منجر به ConcurrentModificationException شود ( 4e37773 )
  • اسناد بهبود یافته

نسخه 1.0.0-rc01

26 جولای 2023

androidx.health:health-services-client:1.0.0-rc01 منتشر شد. نسخه 1.0.0-rc01 حاوی این commit ها است.

ویژگی های جدید

  • پس از تثبیت در بتا، Health Services به 1.0.0-rc01 منتقل شده است.

تغییرات API

  • فایل های API عمومی و آزمایشی برای مسیرهای h-thru m ادغام شدند. ( Ic4630 , b/278769092 )
  • نه، تغییرات فایل API فقط روش‌های مرتب‌سازی مجدد هستند. ( I5fa95 )

نسخه 1.0.0-beta03

5 آوریل 2023

androidx.health:health-services-client:1.0.0-beta03 منتشر شد. نسخه 1.0.0-beta03 حاوی این تعهدات است.

ویژگی های جدید

اکنون می‌توان BatchingMode به گونه‌ای پیکربندی کرد که داده‌های تمرین دسته‌ای را در بازه زمانی پیکربندی‌شده به جای پیش‌فرض در طول یک تمرین فعال، یا در شروع تمرین از طریق ExerciseConfig یا در طول با یک روش لغو، ارائه دهد. پشتیبانی از این مورد با نسخه‌ای از سرویس‌های بهداشتی آتی در فروشگاه Google Play فعال می‌شود و از طریق قابلیت‌های ورزشی قابل بررسی است. توجه: حالت‌های دسته‌ای زمانی اعمال می‌شوند که دستگاه در حالت برق غیر تعاملی است و باعث افزایش مصرف انرژی می‌شود.

تغییرات API

  • پرتاب HealthServicesException هنگامی که عملکرد تعلیق overrideBatchingModesForActiveExercise با شکست مواجه می شود ( Ifd387 )
  • توابع تعلیق معرفی شده برای override overrideBatchingModesForActiveExercise API که آنها را دوستدار کاتلین می کند ( I7dd15 )
  • BatchingMode در ExerciseConfig اختیاری است ( Id22e9 )

رفع اشکال

  • اصلاحات کوچک DataType و ExerciseUpdate ( 5e185f )

نسخه 1.0.0-beta02

11 ژانویه 2023

androidx.health:health-services-client:1.0.0-beta02 منتشر شد. نسخه 1.0.0-beta02 حاوی این تعهدات است.

ویژگی های جدید

  • توابع پسوند suspend برای APIهای ناهمزمان ListenableFuture موجود در ExerciseClient ، PassiveMonitoringClient و MeasureClient برای پشتیبانی بهتر از Kotlin اضافه شده است. ( Iadea4 )
  • API ExerciseTypeConfig اضافه شد که به روز رسانی را در طول یک تمرین مداوم فعال می کند. GolfExerciseTypeConfig برای پشتیبانی از به روز رسانی ExerciseTypeConfig در طول تمرینات گلف اضافه شده است. ( I4c539 )

تغییرات API

  • پرتاب HealthServicesException در توابع تعلیق ( I5e509 )
  • یک سازنده دیگر برای سازگاری به عقب اضافه کنید ( Iddeda )
  • پرتاب RuntimeException روی توابع تعلیق ( I53bca )
  • حذف اجرای پیش فرض پرتاب Exception ( Id947f )
  • افزودن حاشیه نویسی @JvmDefaultWithCompatibility ( I8f206 )

رفع اشکال

  • برای وضوح به kdoc اضافه کنید ( Ide285 )
  • ردیابی نظارت غیرفعال برای اهداف فقط در صورتی مجاز باشد که همان نوع داده‌ها نیز ردیابی شوند ( Ibed8d )

نسخه 1.0.0-beta01

24 اکتبر 2022

androidx.health:health-services-client:1.0.0-beta01 منتشر شد. نسخه 1.0.0-beta01 حاوی این تعهدات است.

ویژگی های جدید

  • قابلیت گوش دادن به رویدادهای بهداشتی از طریق PassiveMonitoringClient اضافه شد که اولین رویداد این بود: HealthEvent.FALL_DETECTED .

  • انواع تمرینات جدید:

    • ALPINE_SKIING
    • BACKPACKING
    • CROSS_COUNTRY_SKIING
    • HORSE_RIDING
    • INLINE_SKATING
    • MOUNTAIN_BIKING
    • ORIENTEERING
    • ROLLER_SKATING
    • YACHTING
  • انواع داده های جدید:

    • ELEVATION_LOSS
    • GOLF_SHOT_COUNT

تغییرات API

  • نحوه مدل‌سازی داده‌ها به‌روزرسانی شد : مدل داده و نحوه نمایش DataTypeDataPoint و مقادیر زیربنایی آن‌ها بازنگری شده است. تاثیر سطح بالای آن این است که API ها اکنون بسیار واضح تر هستند و تایپ می کنند ایمن هستند.
  • مکان های DataPoint دیگر به عنوان DoubleArray نشان داده نمی شوند، بلکه به عنوان یک شی LocationData با تایپ قوی نمایش داده می شوند.
  • به مجموعه جدیدی از APIهای شنونده غیرفعال منتقل شد:
    • پخش با PassiveListenerService جایگزین شد.
    • شنوندگان موجود با یک شنونده جایگزین شدند: PassiveListenerCallback .
  • برچسب <queries> به مانیفست خدمات بهداشتی اضافه شد تا برنامه‌ها دیگر نیازی به مشخص کردن آن در مانیفست خود نداشته باشند (به شرطی که ادغام مانیفست در سیستم ساخت آنها روشن باشد.)
  • از بسیاری از ExerciseState ها برای نشان دادن تمرین در حال پایان / پایان یافتن است و حالت های تمرین جدید ENDING و ENDED اضافه شده است. اینها اکنون با ExerciseEndReason ترکیب شده اند تا طیف کامل حالت های قبلی را نشان دهند.
  • تغییر نام PassiveListenerConfig setPassiveGoals به setDailyGoals برای انعکاس بهتر ما فقط از اهداف غیرفعال روزانه پشتیبانی می کنیم.
  • PassiveGoal اکنون همیشه REPEATED ، TriggerFrequency غیرفعال حذف شده است.
  • تمام پارامترهای Long و Double با @FloatRange حاشیه نویسی شد.
  • ویژگی swimmingPoolLengthMeters به ExerciseConfig اضافه شد که ممکن است به صورت اختیاری برای بهبود محاسبات فاصله برای شنا در استخر مشخص شود.
  • ExerciseUpdate.activeDuration منسوخ شده است. به جای آن از ExerciseUpdate.activeDurationCheckpoint استفاده کنید.
  • API flushExerciseAsync() به flushAsync() در ExerciseClient تغییر نام داد.
  • Measure.registerCallback به Measure.registerMeasureCallback تغییر نام داد.
  • تغییر نام عمومی:
    • املاک فاصله اکنون پسوند meters دارند.
    • نام روش های برگشت به تماس اکنون زمان گذشته است.
    • اکثر اختصارات حذف شده اند ( HrAccuracy اکنون HeartRateAccuracy است.)
    • ویژگی هایی که از الگوی enableFoo پیروی می کنند اکنون isFooEnabled نامیده می شوند.
  • مهاجرت به دور از Enums.
  • زمان هایی که توسط Double نمایش داده می شوند اکنون با Duration نشان داده می شوند.
  • توابعی که یک ListenableFuture<Void?> را برمی گرداند اکنون ListenableFuture<Void> را برمی گرداند.
  • عملکردهایی که اکنون پاسخ تماس را می پذیرند، همیشه پاسخ تماس را به عنوان آخرین پارامتر نشان می دهند.
  • اکنون کلاس هایی با سازندگان همیشه سازنده عمومی نیز دارند.
  • توابع ثبت نام دیگر ListenableFuture برنمی گرداند و در عوض وضعیت ثبت نام را به تماس ارائه شده منتقل می کند.
  • اکنون KDocs بهبود یافته است.
  • کلاس های عمومی دیگر ProtoParcelable گسترش نمی دهند.

رفع اشکال

  • بهبودهای کلی در قابلیت اطمینان IPC ( I3b1e2 )

نسخه 1.0.0-alpha03

3 نوامبر 2021

androidx.health:health-services-client:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

ویژگی های جدید

  • در صورتی که اتصال IPC با APK خدمات بهداشتی قطع شود، SDK به‌طور خودکار درخواست‌های ثبت درخواست‌های ثبت درخواست‌های مربوط به اندازه‌گیری، شنونده تمرین و نظارت غیرفعال را دوباره ثبت می‌کند.

تغییرات API

  • minSdkVersion کتابخانه SDK به سطح API 30 رسیده است زیرا سرویس گیرنده Health Services در حال حاضر فقط در Wear3 پشتیبانی می شود.

نسخه 1.0.0-alpha02

29 سپتامبر 2021

androidx.health:health-services-client:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

تغییرات API

  • ExerciseClient اکنون از آماده سازی یک تمرین پشتیبانی می کند. این به مشتریان این امکان را می دهد که سنسورها را گرم کنند و قبل از شروع ورزش منتظر مواردی مانند تعمیر GPS باشند.
  • کلاس‌های AggregateDataPoints CumulativeDataPoints و StatisticalDataPoints را برای مدل‌سازی بهتر معیارهای کل ردیابی شده در طول تمرین فعال معرفی می‌کند. CumulativeDataPoints مقادیر تجمعی انواع داده‌های بازه‌ای انباشته (مانند فاصله کل در طول تمرین) را در خود نگه می‌دارد در حالی که StatisticalDataPoints مجموعه‌ای از نقاط داده نمونه (مانند حداقل، حداکثر و میانگین ضربان قلب در دقیقه) را مدل می‌کند. این جایگزین AGGREGATE_* داده‌های قبلی می‌شود و می‌توان در ExerciseUpdate از طریق getLatestAggregateMetrics() به آن دسترسی داشت. AGGREGATE_* نوع داده دیگر پشتیبانی نمی شود.
  • رویدادهای PassiveMonitoring به PassiveGoals تغییر نام داده‌اند که از تعیین اهداف و دریافت اعلان‌ها در صورت تحقق آن اهداف برای انواع داده‌ها مانند معیارهای روزانه (یعنی DAILY_STEPS) پشتیبانی می‌کند.
  • مدل‌سازی بهبود یافته ضربان قلب و دقت موقعیت مکانی و در دسترس بودن از طریق معرفی کلاس‌های جدید HrAccuracy، LocationAccuracy، و LocationAvailability.
  • بهبود نامگذاری ExerciseConfig و PassiveMonitoringConfig جدید و معرفی ExerciseConfig.shouldEnableGps برای درخواست داده های پشتیبانی شده توسط GPS

رفع اشکال

  • برای پشتیبانی از سازگاری بهتر به عقب، به حمل و نقل IPC با پشتیبانی اولیه مهاجرت می کند

نسخه 1.0.0-alpha01

18 مه 2021

androidx.health:health-services-client:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های انتشار اولیه

کتابخانه خدمات سلامت مجموعه‌ای یکسان از APIها را برای توسعه‌دهندگان فراهم می‌کند تا با پیاده‌سازی حسگرهای خاص دستگاه یکپارچه شوند. با شبیه‌سازهای Wear OS 3 و دستگاه‌های آینده، با پلتفرم‌های اضافی در آینده پشتیبانی می‌شود. سه سطح API سطح بالا در این نسخه اولیه گنجانده شده است: ExerciseClient ، PassiveMonitoringClient و MeasureClient .

ExerciseClient

ExerciseClient برای برنامه هایی ساخته شده است که تمرینات فعال را ردیابی می کنند، با حداکثر 82 ExerciseType مختلف از راه رفتن و دویدن گرفته تا رقصیدن و واترپلو. در حین ردیابی این تمرین‌ها، بسته به نوع تمرین و سخت‌افزار موجود در دستگاه، مجموعه‌ای از 50 DataType مختلف موجود است. برای شروع، کافی است اطلاعات مربوطه را در ExerciseConfig خود مشخص کنید، با exerciseClient.startExercise تماس بگیرید و برای پیشرفت در شنونده به‌روزرسانی گوش دهید.

PassiveMonitoringClient

اگر برنامه شما فعالیت کاربر را در طول روز ردیابی کند، PassiveMonitoringClient یک انتخاب عالی است. می‌توانید یک PendingIntent با مجموعه‌ای از DataType ثبت کنید و برای مدیریت تغییرات دسته‌ای از خواب بیدار شوید. از طرف دیگر، می توانید یک Event مانند رسیدن به تعداد معینی از مراحل را مشخص کنید.

MeasureClient

گاهی اوقات کاربر باید ضربان قلب خود را در لحظه اندازه گیری کند، نه در حین ورزش و نه در طول روز. در آن لحظات MeasureClient بهترین انتخاب است. شما فقط تماس برگشتی خود را با DataType های پشتیبانی شده ثبت کنید تا جریانی از داده ها را دریافت کنید، و زمانی که دیگر به آن نیازی نیست، پاسخ تماس خود را لغو ثبت کنید.