بپوشید

برای ساعت‌های هوشمند Wear OS by Google اپلیکیشن بسازید.

این جدول تمام مصنوعات موجود در گروه androidx.wear را فهرست می‌کند.

مصنوع انتشار پایدار کاندیدای انتشار انتشار بتا انتشار آلفا
پوشیدن ۱.۳.۰ - ۱.۴.۰-بتا۰۱ -
ورودی سایش ۱.۲.۰ - - -
تست ورودی سایش ۱.۲.۰ - - -
سایش مداوم ۱.۱.۰ - - -
تعاملات با تلفن همراه ۱.۱.۰ - - -
تعاملات از راه دور با لباس ۱.۱.۰ - ۱.۲.۰-بتا۰۱ -
این کتابخانه آخرین بار در تاریخ ۱۷ دسامبر ۲۰۲۵ به‌روزرسانی شده است.

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

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

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

شیار

dependencies {
    implementation "androidx.wear:wear:1.3.0"

    // Add support for wearable specific inputs
    implementation "androidx.wear:wear-input:1.2.0"
    implementation "androidx.wear:wear-input-testing:1.2.0"

    // Use to implement wear ongoing activities
    implementation "androidx.wear:wear-ongoing:1.1.0"

    // Use to implement support for interactions from the Wearables to Phones
    implementation "androidx.wear:wear-phone-interactions:1.1.0"
    // Use to implement support for interactions between the Wearables and Phones
    implementation "androidx.wear:wear-remote-interactions:1.1.0"
}

کاتلین

dependencies {
    implementation("androidx.wear:wear:1.3.0")

    // Add support for wearable specific inputs
    implementation("androidx.wear:wear-input:1.2.0")
    implementation("androidx.wear:wear-input-testing:1.2.0")

    // Use to implement wear ongoing activities
    implementation("androidx.wear:wear-ongoing:1.1.0")

    // Use to implement support for interactions from the Wearables to Phones
    implementation("androidx.wear:wear-phone-interactions:1.1.0")
    // Use to implement support for interactions between the Wearables and Phones
    implementation("androidx.wear:wear-remote-interactions:1.1.0")
}

برای اطلاعات بیشتر در مورد وابستگی‌ها، به «افزودن وابستگی‌های ساخت» مراجعه کنید.

بازخورد

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

ایجاد یک مسئله جدید

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

نسخه ۱.۰ Wear Core

نسخه ۱.۰.۰

۱۷ دسامبر ۲۰۲۵

androidx.wear:wear-core:1.0.0 منتشر شد. نسخه ۱.۰.۰ شامل این کامیت‌ها است.

ویژگی‌های اصلی نسخه ۱.۰.۰:

  • WearApiVersionHelper برای کمک به بررسی سازگاری API در زمان اجرا روی Wear اضافه شد. کلاینت‌ها می‌توانند از این کلاس کمکی استاتیک و متد ارائه شده (#isApiVersionAtLeast(VERSION)) برای بررسی سازگاری استفاده کنند.

نسخه ۱.۰.۰-rc01

۸ اکتبر ۲۰۲۵

androidx.wear:wear-core:1.0.0-rc01 بدون هیچ تغییری منتشر شده است. نسخه 1.0.0-rc01 شامل این کامیت‌ها است.

نسخه ۱.۰.۰-بتا۰۲

۱۰ سپتامبر ۲۰۲۵

androidx.wear:wear-core:1.0.0-beta02 منتشر شد. نسخه 1.0.0-beta02 شامل این کامیت‌ها است.

رفع اشکالات

  • هنگام بررسی APIهای جدیدتر، از اجرای WearApiVersionHelper روی دستگاه‌های قدیمی‌تر جلوگیری کنید.

نسخه ۱.۰.۰-بتا۰۱

۳۰ ژوئیه ۲۰۲۵

androidx.wear:wear-core:1.0.0-beta01 بدون هیچ تغییر قابل توجهی از آخرین نسخه آلفا منتشر شده است. نسخه 1.0.0-beta01 شامل این کامیت‌ها است.

نسخه ۱.۰.۰-آلفا۰۲

۱۶ ژوئیه ۲۰۲۵

androidx.wear:wear-core:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 شامل این کامیت‌ها است.

تغییرات API

  • WearApiVersionHelper را به‌روزرسانی می‌کند تا VIC/Baklava ( I4676d ) را شامل شود.

رفع اشکالات

  • این کتابخانه اکنون از حاشیه‌نویسی‌های nullness از نوع JSpecify استفاده می‌کند که از نوع type-use هستند. توسعه‌دهندگان Kotlin باید از آرگومان‌های کامپایلر زیر برای اعمال استفاده صحیح استفاده کنند: -Xjspecify-annotations=strict , -Xtype-enhancement-improvements-strict-mode ( Icbfb9 , b/326456246 )

نسخه ۱.۰.۰-آلفا۰۱

۲۹ مه ۲۰۲۴

androidx.wear:wear-core:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 شامل این کامیت‌ها است.

تغییرات API

  • یک کلاس جدید WearApiVersionhelper برای کمک به بررسی سازگاری API در زمان اجرا روی Wear اضافه شده است. کلاینت‌ها می‌توانند از این کلاس کمکی استاتیک و متد ارائه شده ( #isApiVersionAtLeast(VERSION) ) برای بررسی سازگاری استفاده کنند.

پیش‌نمایش ابزار سایش نسخه ۱.۰

نسخه ۱.۰.۰

۲۹ نوامبر ۲۰۲۳

androidx.wear:wear-tooling-preview:1.0.0 منتشر شد. نسخه ۱.۰.۰ شامل این کامیت‌ها است.

ویژگی‌های نسخه ۱.۰.۰

  • WearDevices به لیست دستگاه‌های پوشیدنی معتبری که می‌توانند برای پیش‌نمایش‌های رابط کاربری استفاده شوند، اضافه کنید.

نسخه ۱.۰.۰-rc01

۱۵ نوامبر ۲۰۲۳

androidx.wear:wear-tooling-preview:1.0.0-rc01 بدون هیچ تغییری منتشر شده است. نسخه 1.0.0-rc01 شامل این کامیت‌ها است.

نسخه ۱.۰.۰-بتا۰۱

۱۸ اکتبر ۲۰۲۳

androidx.wear:wear-tooling-preview:1.0.0-beta01 بدون هیچ تغییری منتشر شد. نسخه 1.0.0-beta01 شامل این کامیت‌ها است.

نسخه ۱.۰.۰-آلفا۰۱

۲۳ آگوست ۲۰۲۳

androidx.wear:wear-tooling-preview:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 شامل این کامیت‌ها است.

تغییرات API

  • WearDevices به لیست دستگاه‌های پوشیدنی معتبر که می‌توانند برای پیش‌نمایش‌های رابط کاربری استفاده شوند، اضافه کنید ( Ib036e )

نسخه ۱.۴ را بپوشید

نسخه ۱.۴.۰-بتا۰۱

۱۷ دسامبر ۲۰۲۵

androidx.wear:wear:1.4.0-beta01 منتشر شد. نسخه 1.4.0-beta01 شامل این کامیت‌ها است.

  • از زمان انتشار نسخه آلفای قبلی، هیچ تغییر قابل توجه جدیدی وجود ندارد.

نسخه ۱.۴.۰-آلفا۰۲

۱۶ ژوئیه ۲۰۲۵

androidx.wear:wear:1.4.0-alpha02 منتشر شد. نسخه 1.4.0-alpha02 شامل این کامیت‌ها است.

رفع اشکالات

  • این کتابخانه اکنون از حاشیه‌نویسی‌های nullness از نوع JSpecify استفاده می‌کند که از نوع type-use هستند. توسعه‌دهندگان Kotlin باید از آرگومان‌های کامپایلر زیر برای اعمال استفاده صحیح استفاده کنند: -Xjspecify-annotations=strict ، -Xtype-enhancement-improvements-strict-mode ( If4b1a , b/326456246 )

نسخه ۱.۴.۰-آلفا۰۱

۱۵ نوامبر ۲۰۲۳

androidx.wear:wear:1.4.0-alpha01 منتشر شد. نسخه 1.4.0-alpha01 شامل این کامیت‌ها است.

رفع اشکالات

  • وقتی پیامی وجود ندارد، آیکون ConfirmationOverlay به صورت عمودی در وسط قرار دهید. ( I496d8 )

نسخه ۱.۳ را بپوشید

نسخه ۱.۳.۰

۹ آگوست ۲۰۲۳

androidx.wear:wear:1.3.0 بدون هیچ تغییری از زمان 1.3.0-rc01 منتشر شده است. نسخه 1.3.0 شامل این کامیت‌ها است.

تغییرات مهم از زمان ۱.۲.۰

  • AmbientModeSupport به استفاده از LifecycleObserver منتقل کنید. AmbientModeSupport را به نفع کلاس‌های جدید آگاه از چرخه حیات منسوخ کنید.
  • به‌روزرسانی ConfirmationOverlay با آیکون‌ها/طرح‌بندی، فونت‌ها و معیارهای فونت جدید
  • SwipeDismissTransitionHelper به‌روزرسانی شد تا به جای View دوم، از یک پس‌زمینه‌ی قابل ترسیم استفاده کند تا خطاها هنگام استفاده از FragmentContainerView اصلاح کند.
  • انیمیشن SwipeDismissFrameLayout به‌روزرسانی شد تا با پلتفرم Wear و پیاده‌سازی‌های Wear Compose سازگار باشد.
  • رفع اشکال SwipeDismissFrameLayout برای جلوگیری از حذف تصادفی قطعات با یک حرکت عمودی
  • ArcLayout اکنون از وزن‌های بسط‌یافته پشتیبانی می‌کند که به روشی مشابه وزن‌های طرح‌بندی معمولی عمل می‌کنند.
  • پشتیبانی از layoutDirection در ArcLayout

نسخه ۱.۳.۰-rc01

۲۱ ژوئن ۲۰۲۳

androidx.wear:wear:1.3.0-rc01 بدون هیچ تغییری از زمان انتشار 1.3.0-beta01 منتشر شده است. نسخه ۱.۳.۰-rc01 شامل این کامیت‌ها است.

نسخه ۱.۳.۰-بتا۰۱

۷ ژوئن ۲۰۲۳

androidx.wear:wear:1.3.0-beta01 منتشر شد. نسخه 1.3.0-beta01 شامل این کامیت‌ها است.

تغییرات API

  • AmbientLifecycleObserver پس از دریافت بازخورد به‌روزرسانی شد. AmbientLifecycleObserverInterface به AmbientLifecycleObserver تغییر نام داده است و می‌توان با فراخوانی AmbientLifecycleObserver(...) یک نمونه از آن را به دست آورد. isAmbient به جای یک متد، به یک فیلد تبدیل شده است. ( I84b4f )

رفع اشکالات

  • اضافه کردن بررسی‌های null برای مدیریت مواردی که نمای والد هنگام تنظیم مجدد آلفا و ترجمه در SwipeToDismiss ، null است. ( Ib0ec7 )

نسخه ۱.۳.۰-آلفا۰۵

۱۹ آوریل ۲۰۲۳

androidx.wear:wear:1.3.0-alpha05 منتشر شد. نسخه 1.3.0-alpha05 شامل این کامیت‌ها است.

تغییرات API

  • AmbientModeSupport به LifecycleObserver منتقل کنید. AmbientModeSupport به نفع کلاس‌های جدید lifecycle-aware منسوخ کنید. ( I1593b )

رفع اشکالات

  • به‌روزرسانی رویکرد اسکریم پس‌زمینه SwipeDismissTransitionHelper برای استفاده از drawables به جای افزودن view برای رفع خطاها هنگام استفاده از FragmentContainerView ( I851cd )

نسخه ۱.۳.۰-آلفا۰۴

۲۵ ژانویه ۲۰۲۳

androidx.wear:wear:1.3.0-alpha04 منتشر شد. نسخه 1.3.0-alpha04 شامل این کامیت‌ها است.

رفع اشکالات

  • ما انیمیشن موجود در SwipeDismissFrameLayout را به‌روزرسانی کرده‌ایم تا با پلتفرم Wear و پیاده‌سازی‌های Wear Compose سازگار باشد. ( I7261b )

نسخه ۱.۳.۰-آلفا۰۳

۲۴ آگوست ۲۰۲۲

androidx.wear:wear:1.3.0-alpha03 منتشر شد. نسخه 1.3.0-alpha03 شامل این کامیت‌ها است.

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

  • ArcLayout اکنون از وزن‌های بسطی پشتیبانی می‌کند که به روشی مشابه وزن‌های طرح‌بندی معمولی عمل می‌کنند. این بدان معناست که می‌توانید اندازه نسبی عناصر فرزند را بدون نیاز به محاسبه مستقیم زوایای آنها مشخص کنید. ما همچنین یک MaxAngleDegrees با بهترین تلاش اضافه کرده‌ایم که هنگام بسط عناصر فرزند با وزن رعایت می‌شود. به عنوان مثال، می‌توانید کمان را با چندین فرزند با وزن تا ۹۰ درجه نگه دارید، این کار همچنین فضای اشغال شده توسط هر عنصر غیر بسط داده شده را در نظر می‌گیرد.

تغییرات API

  • ما به ArcLayout.LayoutParams وزن اضافه کرده‌ایم که به یک ویجت اجازه می‌دهد تا فضای موجود را پر کند، اگر بیش از یک ویجت وجود داشته باشد، سهم آنها از فضای موجود متناسب با وزن آنها است. علاوه بر این ArcLayout.setMaxAngleDegrees اضافه کرده‌ایم تا بتوانید مثلاً میزان گسترش را روی ۹۰ درجه محدود کنید (توجه داشته باشید که این موضوع روی طرح‌بندی هیچ ویجت فرزند با اندازه ثابت تأثیر نمی‌گذارد). در نهایت، ArcLayout.Widget اکنون دارای setSweepAngleDegrees است که به ArcLayout اجازه می‌دهد تا یک ویجت را با وزنی غیر صفر از اندازه‌اش مطلع کند. ( I75f24 )
  • به‌روزرسانی قابلیت تهی‌سازی setColorFilter ( I99ddf ، b/236498063 )

نسخه ۱.۳.۰-آلفا۰۲

۲۳ فوریه ۲۰۲۲

androidx.wear:wear:1.3.0-alpha02 منتشر شد. نسخه 1.3.0-alpha02 شامل این کامیت‌ها است.

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

  • پشتیبانی از layoutDirection در ArcLayout ( I14d49 )
  • پیام توصیف محتوای بهبود یافته برای ConfirmationOverlay ( I0fdf8 )
  • به‌روزرسانی ConfirmationOverlay با آیکون‌ها/طرح‌بندی جدید. ( If5b54 )

رفع اشکالات

  • قوانین ProGuard برای اطمینان از حفظ کدهای مربوط به محیط اضافه شد ( Idaa10 )
  • با استفاده از یک تابع جابجایی عمودی ( idb6d8 ) از حذف تصادفی قطعات در SwipeDismissFrameLayout جلوگیری کنید.
  • رفع مشکل ConfirmationOverlay وقتی که هیچ پیامی ندارد ( I63e6f )

مشارکت خارجی

  • دائه گیو لی (سامسونگ) - با استفاده از یک حرکت عمودی، از حذف تصادفی قطعات در SwipeDismissFrameLayout جلوگیری کنید ( Idb6d8 )

نسخه ۱.۳.۰-آلفا۰۱

۲۹ سپتامبر ۲۰۲۱

androidx.wear:wear:1.3.0-alpha01 منتشر شد. نسخه 1.3.0-alpha01 شامل این کامیت‌ها است.

رفع اشکالات

  • اکنون ConfirmationOverlay آیکون را به سمت بالا هل می‌دهد تا پیام‌های طولانی‌تر را در خود جای دهد، بدون اینکه پیام وارد قاب دستگاه (یا خارج از صفحه) شود. ( I54bff )

نسخه ۱.۲.۰ تعاملات از راه دور با لباس

نسخه ۱.۲.۰-بتا۰۱

۱۷ دسامبر ۲۰۲۵

androidx.wear:wear-remote-interactions:1.2.0-beta01 منتشر شد. نسخه 1.2.0-beta01 شامل این کامیت‌ها است.

  • از زمان انتشار نسخه آلفای قبلی، هیچ تغییر قابل توجه جدیدی وجود ندارد.

نسخه ۱.۲.۰-آلفا۰۱

۲ ژوئیه ۲۰۲۵

androidx.wear:wear-remote-interactions:1.2.0-alpha01 منتشر شد. نسخه 1.2.0-alpha01 شامل این کامیت‌ها است.

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

  • فایل RemoteActivityHelper.startRemoteActivity به‌روزرسانی شد تا در صورت موجود بودن (از Wear 6 به بعد) از یک API عمومی Wear SDK جدید ( startRemoteActivity ) استفاده کند. ( Id1e77 )

نسخه ۱.۱.۰ از Wear Ongoing & Interactions

نسخه ۱.۱.۰

۲۶ فوریه ۲۰۲۵

androidx.wear:wear-phone-interactions:1.1.0 منتشر شد. نسخه ۱.۱.۰ شامل این کامیت‌ها است.

تغییرات مهم از زمان ۱.۰.۰

  • این نسخه شامل رفع اشکال اساسی برای برنامه‌هایی است که روی Wear OS 5 (سطح API 34) یا بالاتر اجرا می‌شوند و API سطح 35 یا بالاتر را هدف قرار می‌دهند.
  • برنامه‌ها باید قبل از به‌روزرسانی targetSdkVersion خود به ۳۵ یا بالاتر، به این نسخه از کتابخانه به‌روزرسانی شوند.
  • در غیر این صورت، استثنای زمان اجرا رخ خواهد داد.
  • تعریف جدیدی برای نوع دستگاه جفت‌شده - none ، زمانی که دستگاه با تلفن جفت نشده است، اضافه شده است.

نسخه ۱.۱.۰-rc01

۱۲ فوریه ۲۰۲۵

androidx.wear:wear-phone-interactions:1.1.0-rc01 بدون هیچ تغییر قابل توجهی از آخرین نسخه بتا منتشر شده است. نسخه 1.1.0-rc01 شامل این کامیت‌ها است.

نسخه ۱.۱.۰-بتا۰۱

۲۹ ژانویه ۲۰۲۵

androidx.wear:wear-phone-interactions:1.1.0-beta01 منتشر شد. نسخه 1.1.0-beta01 شامل این کامیت‌ها است.

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

نسخه ۱.۱.۰-بتا۰۱ از Wear Phone Interactions نشان می‌دهد که این نسخه از کتابخانه از نظر امکانات کامل شده و API آن قفل شده است (به جز مواردی که به عنوان آزمایشی علامت‌گذاری شده است). Wear Phone Interactions 1.1 شامل قابلیت‌ها و APIهای جدید زیر است:

  • ویژگی redirectUrl به OAuthRequest اضافه شد.
  • اصلاحات مستندات
  • به جای استفاده از نوع ناشناخته موجود، نوع داده اضافی در PhoneTypeHelper برای مشخص کردن زمانی که دستگاه با تلفن جفت نشده است.

تغییرات API

  • تعریف جدیدی برای نوع دستگاه جفت‌شده اضافه شد - هیچکدام، زمانی که دستگاه با تلفن جفت نشده است. ( I06cb8 )

نسخه ۱.۱.۰-آلفا۰۵

۱۱ دسامبر ۲۰۲۴

androidx.wear:wear-phone-interactions:1.1.0-alpha05 منتشر شد. نسخه 1.1.0-alpha05 شامل این کامیت‌ها است.

رفع اشکالات

  • رفع اشکال از کار افتادن برنامه هنگام اجرا روی Wear OS 5 (سطح API 34) یا بالاتر، در حالی که هدف API سطح 35 یا بالاتر است. برنامه‌ها باید قبل از به‌روزرسانی targetSdkVersion خود به 35 یا بالاتر، به این نسخه از کتابخانه به‌روزرسانی شوند.

نسخه ۱.۱.۰

۱۱ دسامبر ۲۰۲۴

androidx.wear:wear-remote-interactions:1.1.0 منتشر شد. نسخه ۱.۱.۰ شامل این کامیت‌ها است.

تغییرات مهم از زمان ۱.۰.۰

  • ما RemoteActivityHelper.isRemoteActivityHelperAvailable را اضافه کرده‌ایم که به بررسی اینکه آیا قابلیت راه‌اندازی یک فعالیت از راه دور در دسترس است یا خیر، کمک می‌کند. ( I107a9 )

نسخه ۱.۱.۰-rc01

۱۶ اکتبر ۲۰۲۴

androidx.wear:wear-remote-interactions:1.1.0-rc01 بدون هیچ تغییری از زمان انتشار 1.1.0-beta01 منتشر شده است. نسخه ۱.۱.۰-rc01 شامل این کامیت‌ها است.

نسخه ۱.۱.۰-بتا۰۱

۲۴ ژوئیه ۲۰۲۴

androidx.wear:wear-remote-interactions:1.1.0-beta01 منتشر شد. نسخه 1.1.0-beta01 شامل این کامیت‌ها است. انتشار 1.3.0-beta01 از Wear Remote Interactions نشان می‌دهد که این نسخه از کتابخانه از نظر امکانات کامل شده و API قفل شده است (به جز مواردی که به عنوان آزمایشی علامت‌گذاری شده است).

نسخه ۱.۱.۰-آلفا۰۴

۱۰ ژانویه ۲۰۲۴

androidx.wear:wear-phone-interactions:1.1.0-alpha04 منتشر شد. نسخه 1.1.0-alpha04 شامل این کامیت‌ها است.

تغییرات API

  • ما RemoteAuthClient.isRemoteAuthAvailable را اضافه کرده‌ایم که بررسی می‌کند آیا احراز هویت از راه دور در دسترس است یا خیر. ( Ibc10c )

نسخه ۱.۱.۰-آلفا۰۲

۱۰ ژانویه ۲۰۲۴

androidx.wear:wear-remote-interactions:1.1.0-alpha02 منتشر شد. نسخه 1.1.0-alpha02 شامل این کامیت‌ها است.

تغییرات API

  • ما RemoteActivityHelper.isRemoteActivityHelperAvailable را اضافه کرده‌ایم که به بررسی اینکه آیا قابلیت راه‌اندازی یک فعالیت از راه دور در دسترس است یا خیر، کمک می‌کند. ( I107a9 )
  • ما سازنده‌ی RemoteActivityHelper را به‌روزرسانی کرده‌ایم تا پارامترهای اختیاری سازگار با جاوا داشته باشد. ( I75554 )

نسخه ۱.۱.۰-آلفا۰۱

۲۱ ژوئن ۲۰۲۳

androidx.wear:wear-remote-interactions:1.1.0-alpha01 منتشر شد. نسخه 1.1.0-alpha01 شامل این کامیت‌ها است.

رفع اشکالات

  • نحوه‌ی تکمیل و مدیریت خطا در RemoteActivityHelper بهبود یافته است. ( I60d60 )

مشارکت خارجی

  • وابستگی Guava را از wear-remote-interactions حذف کنید و از جایگزین‌های کوچک‌تر استفاده کنید.

تعاملات Wear-Phone نسخه ۱.۱.۰-alpha03

۹ مارس ۲۰۲۲

androidx.wear:wear-phone-interactions:1.1.0-alpha03 منتشر شد. نسخه 1.1.0-alpha03 شامل این کامیت‌ها است.

رفع اشکالات

  • اگر آدرس تغییر مسیر در آدرس درخواست داده شده تنظیم نشده باشد، redirectUrl از OAuthRequest اکنون یک رشته خالی برمی‌گرداند. ( I44242 )

تعاملات Wear-Phone نسخه ۱.۱.۰-alpha02

۱۵ دسامبر ۲۰۲۱

androidx.wear:wear-phone-interactions:1.1.0-alpha02 منتشر شد. نسخه 1.1.0-alpha02 شامل این کامیت‌ها است.

رفع اشکالات

  • خطاهای موجود در مستندات RemoteAuthClient ، از جمله خطا در قطعه کد نمونه و لینک خراب به ErrorCode ( I260e8 ) را برطرف کنید.

تعاملات Wear-Phone نسخه ۱.۱.۰-alpha01

۱۵ سپتامبر ۲۰۲۱

androidx.wear:wear-phone-interactions:1.1.0-alpha01 منتشر شد. نسخه 1.1.0-alpha01 شامل این کامیت‌ها است.

تغییرات API

  • ویژگی redirectUrl به OAuthRequest اضافه شد. ( I98840 ، Ie684d )

نسخه ۱.۰.۰ از Wear Ongoing & Interactions

تعاملات Wear-Phone نسخه ۱.۰.۱

۱۵ دسامبر ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.1 منتشر شد. نسخه ۱.۰.۱ شامل این کامیت‌ها است.

رفع اشکالات

  • خطایی که هنگام تلاش برای غیرفعال کردن اعلان‌های پل‌سازی بدون excludedTags از BridgingManager رخ می‌داد، برطرف شد.

تعاملات با Wear-Phone تعاملات با Wear-Remote نسخه ۱.۰.۰

۱۵ سپتامبر ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0 و androidx.wear:wear-remote-interactions:1.0.0 منتشر شدند. نسخه ۱.۰.۰ شامل این کامیت‌ها است.

ویژگی‌های اصلی نسخه ۱.۰.۰

کتابخانه تعامل تلفنی شامل APIهایی برای تعاملات از دستگاه‌های پوشیدنی گرفته تا تلفن‌ها است. این کتابخانه شامل موارد زیر است:

  • PhoneDeviceType ، متدهای کمکی برای تعیین نوع تلفنی که ساعت فعلی به آن متصل است، ارائه می‌دهد که فقط برای استفاده در دستگاه‌های پوشیدنی است.
  • رابط‌های برنامه‌نویسی BridgingManager ، BridgingManagerService و BridgingConfig برای فعال/غیرفعال کردن اعلان‌ها در زمان اجرا و تنظیم اختیاری برچسب‌ها برای اعلان‌هایی که از حالت پل زدن معاف هستند.
  • RemoteAuthClient ، پشتیبانی از احراز هویت از راه دور در دستگاه‌های پوشیدنی را به همراه پشتیبانی از افزودن افزونه OAuth PKCE ارائه می‌دهد. کلاس‌های کنترل‌کننده و کمکی اضافی برای ارتباط ارائه شده است.

کتابخانه تعامل از راه دور شامل APIهایی برای تعامل بین دستگاه‌های پوشیدنی و تلفن‌ها است. این کتابخانه شامل موارد زیر است:

  • WatchFaceConfigIntentHelper ، توابع کمکی را برای مشخص کردن شناسه و نام مؤلفه در فعالیت‌های پیکربندی صفحه ساعت برای همراه روی تلفن ارائه می‌دهد.
  • کلاس RemoteActivityHelper که می‌تواند برای باز کردن intentها در دستگاه‌های دیگر (مثلاً از ساعت به تلفن) استفاده شود.

تعاملات با Wear-Phone تعاملات با Wear-Remote نسخه ۱.۰.۰-rc01

۱ سپتامبر ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-rc01 و androidx.wear:wear-remote-interactions:1.0.0-rc01 منتشر شدند. نسخه 1.0.0-rc01 شامل این کامیت‌ها است.

رفع اشکالات

  • رفع اشکالی که مانع از انتشار خطاهای ایجاد شده در سرویس‌های گوگل پلی به تماس‌گیرنده هنگام استفاده از RemoteActivityHelper ( I60d60 ) می‌شد
  • رفع اشکالی که باعث می‌شد RemoteActivityHelper در صورت عدم وجود گره‌های متصل یا عدم یافتن nodeId درخواستی ( I60d60 ) هرگز Future خود را انجام ندهد.

نسخه ۱.۱ از Wear-Ongoing

نسخه ۱.۱.۰

۱۰ سپتامبر ۲۰۲۵

androidx.wear:wear-ongoing:1.1.0 منتشر شد. نسخه ۱.۱.۰ شامل این کامیت‌ها است.

تغییرات مهم از زمان ۱.۰.۰:

  • یک فیلد توضیحات محتوا به فعالیت‌های جاری اضافه شد که توسط سرویس‌های دسترسی‌پذیری استفاده می‌شود.
  • حاشیه‌نویسی‌های RequiresPermission به APIهایی که در SDK 33 و بالاتر به مجوز POST_NOTIFICATIONS نیاز دارند، اضافه شد.

نسخه ۱.۱.۰-rc01

۲۷ آگوست ۲۰۲۵

androidx.wear:wear-ongoing:1.1.0-rc01 بدون هیچ تغییری از آخرین نسخه بتا منتشر شده است. نسخه 1.1.0-rc01 شامل این کامیت‌ها است.

نسخه ۱.۱.۰-بتا۰۱

۳۰ ژوئیه ۲۰۲۵

androidx.wear:wear-ongoing:1.1.0-beta01 بدون هیچ تغییر قابل توجهی از آخرین نسخه آلفا منتشر شده است. نسخه 1.1.0-beta01 شامل این کامیت‌ها است.

نسخه ۱.۱.۰-آلفا۰۱

۲۳ آگوست ۲۰۲۳

androidx.wear:wear-ongoing:1.1.0-alpha01 منتشر شد. نسخه 1.1.0-alpha01 شامل این کامیت‌ها است.

تغییرات API

  • یک فیلد توضیحات محتوا به فعالیت در حال انجام اضافه کنید. این فیلد توسط سرویس‌های دسترسی برای توصیف فعالیت در حال انجام استفاده خواهد شد. ( I79fc6 )

رفع اشکالات

  • @RequiresPermission به APIهایی که نیاز به اعطای مجوز POST_NOTIFICATIONS در SDK 33 و بالاتر دارند، اضافه شد. ( Ie542e ، b/238790278 )

نسخه ۱.۰.۰ - نسخه در حال استفاده - Wear-Ongoing

۱ سپتامبر ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0 منتشر شد. نسخه ۱.۰.۰ شامل این کامیت‌ها است.

ویژگی‌های اصلی نسخه ۱.۰.۰

  • API فعالیت‌های مداوم Wear، یک API برای توسعه‌دهندگان، از جمله توسعه‌دهندگان شخص ثالث است که برای علامت‌گذاری فعالیت آنها به عنوان «فعالیت مداوم» و ارائه اطلاعات مورد نیاز استفاده می‌شود.
  • فعالیت‌های در حال انجام به فعالیت‌هایی اشاره دارد که می‌توانند در پس‌زمینه ساعت در حال اجرا باشند (مثلاً تمرینات ورزشی، تماس‌ها و رسانه‌ها). در Wear 3، فعالیتی که به عنوان در حال انجام اعلام شود، از طریق یک آیکون روی صفحه ساعت و با رندر متفاوت در لانچر برنامه، برجسته‌تر خواهد شد.
  • برای اطلاعات بیشتر، به راهنمای فعالیت‌های مداوم پوشیدن مراجعه کنید.

تعاملات با Wear-Phone تعاملات با Wear-Remote نسخه ۱.۰.۰-بتا۰۱

۱۸ آگوست ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-beta01 و androidx.wear:wear-remote-interactions:1.0.0-beta01 منتشر شدند. نسخه 1.0.0-beta01 شامل این کامیت‌ها است.

تغییرات API

  • نام کلاس RemoteIntentHelper به RemoteActivityHelper تغییر یافت. نام توابع RemoteIntentHelper#getRemoteIntentExtraIntent و RemoteIntentHelper#getRemoteIntentNodeId به ترتیب به RemoteActivityHelper#getTargetIntent و RemoteActivityHelper#getTargetNodeId . ( Id2042 )

نسخه ۱.۰.۰-rc01 - در حال استفاده - Wear-Ongoing

۱۸ آگوست ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-rc01 بدون هیچ تغییری از زمان انتشار 1.0.0-beta01 منتشر شده است. نسخه 1.0.0-rc01 شامل این کامیت‌ها است.

نسخه ۱.۰.۰-بتا۰۱ - در حال استفاده - Wear-Ongoing

۴ آگوست ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-beta01 منتشر شد. نسخه 1.0.0-beta01 شامل این کامیت‌ها است.

تغییرات API

  • برخی از setterها در OngoingActivity.Builder اکنون یک آرگومان null را می‌پذیرند تا به setterها و getterها تقارن و سازگاری بدهند ( I17ee5 )

تعاملات Wear-Phone نسخه ۱.۰.۰-alpha07

۴ آگوست ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-alpha07 منتشر شد. نسخه 1.0.0-alpha07 شامل این کامیت‌ها است.

تغییرات API

  • نام فایل WearTypeHelper.isChinaDevice به WearTypeHelper.isChinaBuild ( I47302 ) تغییر یافت.
  • ما کتابخانه RemoteAuthClient را به‌روزرسانی کرده‌ایم تا به‌طور خودکار redirect_uri را بر اساس نوع دستگاه (RoW/China) انتخاب کند. ( I38866 )
  • اشکالی که باعث می‌شد تبدیل BridgingConfig به/از Bundle با خطای ClassCastException مواجه شود، برطرف شد. تست‌های واحد برای کلاس BridgingManagerService اضافه شد. ( I68ecb )

تعاملات از راه دور Wear نسخه ۱.۰.۰-alpha06

۴ آگوست ۲۰۲۱

androidx.wear:wear-remote-interactions:1.0.0-alpha06 منتشر شد. نسخه 1.0.0-alpha06 شامل این کامیت‌ها است.

تعاملات Wear-Phone نسخه ۱.۰.۰-alpha06

۲۱ ژوئیه ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-alpha06 منتشر شد. نسخه 1.0.0-alpha06 شامل این کامیت‌ها است.

تغییرات API

  • کلاس BridgingManagerSeviceBinder اکنون یک زیرکلاس از Service است و به BridgingManagerSevice تغییر نام داده است. ( I9fca2 )
  • متد RemoteAuthClient.Callback.onAuthorizationError تغییر یافته است تا شامل پارامتر OAuthRequest باشد. متدهایی که نیاز به فراخوانی مجدد دارند، اکنون به یک اجراکننده نیز برای اجرای فراخوانی مجدد نیاز دارند. ( I35e11 )

رفع اشکالات

  • ما API احراز هویت را با پارامترهای مستندتر و با استفاده از ویژگی‌ها در صورت امکان، واضح‌تر کرده‌ایم. ( I12287 )

تعاملات Wear-Phone نسخه ۱.۰.۰-alpha05

۳۰ ژوئن ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 شامل این کامیت‌ها است.

رفع اشکالات

  • پارامترهای مستند شده‌ای که باید در سازنده‌ی BridgingConfig.Builder ارسال شوند.

نسخه در حال توسعه Wear نسخه ۱.۰.۰-alpha06

۲ ژوئن ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha06 منتشر شد. نسخه 1.0.0-alpha06 شامل این کامیت‌ها است.

تغییرات API

  • فیلد عنوان را به فعالیت در حال انجام اضافه کنید. ( I7a405 )

رفع اشکالات

  • SerializationHelper.copy() اکنون یک کپی دفاعی از اطلاعات ( I8b276 ) انجام می‌دهد.
  • بهبود مستندات setCategory ( Iff01f )

نسخه در حال توسعه Wear نسخه ۱.۰.۰-alpha05

۱۸ مه ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 شامل این کامیت‌ها است.

تغییرات API

  • OngoingActivity اکنون دارای getterهایی است که می‌توانند تمام مقادیری را که مستقیماً از طریق Builder تنظیم شده‌اند (یا مقادیر پیش‌فرض گرفته شده از Notification مرتبط) بازیابی کنند. ( Id8ac8 )

    • کلاس جدید Status اکنون برای ایجاد وضعیت OngoingActivity استفاده می‌شود.
    • OngoingActivityData و OngoingActivityStatus دیگر بخشی از API عمومی نیستند.
  • کلاس‌های TextStatusPart و TimerStatusPart دیگر بخشی از API عمومی نیستند. ( I57fb6 )

    • برای ایجاد یک Part با متن ثابت، Status.TextPart استفاده کنید.
    • برای ایجاد یک Part با استفاده از کرونومتر (که به سمت بالا می‌شمارد)، Status.Stopwatch استفاده کنید.
    • برای ایجاد یک Part با تایمر (شمارش معکوس)، از Status.Timer استفاده کنید.

نسخه در حال توسعه Wear نسخه ۱.۰.۰-alpha04

۵ مه ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha04 منتشر شد. نسخه 1.0.0-alpha04 شامل این کامیت‌ها است.

تغییرات API

  • در OngoingActivity، متدهای fromExistingOngoingActivity اکنون recoverOngoingActivity نامیده می‌شوند.
  • OngoingActivity اکنون مجموعه کاملی از getterها را دارد، همان‌هایی که قبلاً فقط در OngoingActivityData موجود بودند. ( I0ee4d )

نسخه ۱.۰.۰-alpha05 از Wear-Remote-Interactions

۲۱ ژوئیه ۲۰۲۱

androidx.wear:wear-remote-interactions:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 شامل این کامیت‌ها است.

تغییرات API

  • ما کلاس RemoteIntentHelper (که قبلاً در کتابخانه پشتیبانی Wearable با نام RemoteIntent شناخته می‌شد) را اضافه کرده‌ایم که می‌تواند برای باز کردن intentها در دستگاه‌های دیگر (یعنی از ساعت به تلفن) استفاده شود. ( I1d7e0 )

  • کلاس PlayStoreAvailability از کتابخانه AndroidX حذف شده است. برای تشخیص اینکه آیا Play Store در یک تلفن متصل موجود است یا خیر، از متد androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType استفاده کنید تا مشخص شود که آیا تلفن متصل یک تلفن اندرویدی است یا خیر. سپس از متد androidx.wear.utils.WearTypeHelper.isChinaDevice برای تعیین اینکه آیا تلفن متصل یک دستگاه چینی است یا خیر، استفاده کنید. اگر تلفن اندرویدی باشد و اگر یک دستگاه چینی نباشد، Play Store در دسترس خواهد بود. ( Ie7dec )

تعاملات Wear-Phone نسخه ۱.۰.۰-alpha04

۷ آوریل ۲۰۲۱

androidx.wear:wear-phone-interactions:1.0.0-alpha04 منتشر شد. نسخه 1.0.0-alpha04 شامل این کامیت‌ها است.

تغییرات API

  • ثابت‌های ErrorCode به‌روزرسانی شدند تا کتابخانه جدید با پیاده‌سازی در کتابخانه پشتیبانی پوشیدنی (Wearable Support Library) سازگار شود.

رفع اشکالات

  • خطایی که به دلیل API جدید OAuth هنگام شروع یک جلسه OAuth ایجاد می‌شد، برطرف شد.

نسخه ۱.۰.۰-alpha03 از Wear-Remote-Interactions

۷ آوریل ۲۰۲۱

androidx.wear:wear-remote-interactions:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 شامل این کامیت‌ها است.

تغییرات API

  • PlayStoreAvailability به کلاسی تغییر یافت که شامل شیء همراه با متدهای استاتیک است. نحوه‌ی استفاده ثابت مانده است.

رفع اشکالات

  • سند خلاصه اصلاح‌شده برای WatchFaceConfigIntentHelper که کد نمونه را با کاراکترهای واقعی HTML به درستی نشان می‌داد.

تعاملات مداوم Wear-Phone نسخه ۱.۰.۰-alpha03

۱۰ مارس ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha03 و androidx.wear:wear-phone-interactions:1.0.0-alpha03 منتشر شدند. نسخه 1.0.0-alpha03 شامل این کامیت‌ها است.

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

  • OAuthClient را از کتابخانه پشتیبانی Wearable به AndroidX منتقل کنید. این کلاس منتقل شده به RemoteAuthClient تغییر نام داده شده و از احراز هویت از راه دور در Wearables به همراه پشتیبانی از افزودن افزونه OAuth PKCE پشتیبانی می‌کند. کلاس‌های کنترل‌کننده و کمکی اضافی برای ارتباط ارائه شده است.
  • فعالیت‌های در حال انجام اکنون می‌توانند با استفاده از سازنده‌ی جدید OngoingActivity.Builder با یک اعلان (Notification) که دارای برچسب (tag) است، مرتبط شوند.

تغییرات API

  • پشتیبانی از برچسب‌های اعلان در کتابخانه فعالیت‌های جاری ( I653b4 ) اضافه شد.
  • OAuthClient را از کتابخانه پشتیبانی Wear به AndroidX منتقل کنید و پشتیبانی از افزونه OAuth PKCE ( I3eaaa ) را اضافه کنید.

نسخه ۱.۰.۰-alpha02 از Wear-Remote-Interactions

۱۰ مارس ۲۰۲۱

androidx.wear:wear-remote-interactions:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 شامل این کامیت‌ها است.

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

  • انتقال کلاس PlayStoreAvailability از کتابخانه پشتیبانی Wearable به AndroidX که یک API برای بررسی موجود بودن Play Store در تلفن ارائه می‌دهد.

رفع اشکالات

  • انتقال کلاس PlayStoreAvailability از کتابخانه پشتیبانی Wearable به AndroidX ( I69bfe )

نسخه ۱.۰.۰-آلفا۰۲

۱۰ فوریه ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha02 و androidx.wear:wear-phone-interactions:1.0.0-alpha02 منتشر شدند. نسخه 1.0.0-alpha02 شامل این کامیت‌ها است.

تغییرات API

  • پشتیبانی از وضعیت‌های پیچیده‌تر اضافه شده است. آن‌ها از یک (یا چند) الگو و مجموعه‌ای از قطعات تشکیل شده‌اند که برای پر کردن جاهای خالی الگو استفاده می‌شوند. OngoingActivityStatus اکنون یک متد استاتیک برای ایجاد وضعیت‌های ساده با تنها یک بخش (یک متن یا یک تایمر) و یک Builder برای ایجاد وضعیت‌های پیچیده‌تر دارد. ( I1fe81 )
  • کلاس‌های BridgingManager و BridgingConfig را از کتابخانه پشتیبانی Wear به AndroidX منتقل کنید که APIهایی برای فعال/غیرفعال کردن اعلان‌ها در زمان اجرا ارائه می‌دهد و به صورت اختیاری برچسب‌هایی را برای اعلان‌هایی که از حالت پل زدن معاف هستند، تنظیم می‌کند. ( I3a17e )

نسخه ۱.۰.۰-آلفا۰۱

۲۷ ژانویه ۲۰۲۱

androidx.wear:wear-ongoing:1.0.0-alpha01 ، androidx.wear:wear-phone-interactions:1.0.0-alpha01 و androidx.wear:wear-remote-interactions:1.0.0-alpha01 منتشر شده‌اند. نسخه 1.0.0-alpha01 شامل این کامیت‌ها است.

تغییرات API

  • کتابخانه‌ی Ongoing Activities را به یک زیرکتابخانه‌ی جدید به نام wear-ongoing منتقل کنید. کلاس‌ها اکنون در پکیج androidx.wear.ongoing قرار دارند (قبلاً androidx.wear.ongoingactivities بود) ( I7c029 )

  • یک کتابخانه پشتیبانی جدید ایجاد کنید تا شامل کلاس‌هایی باشد که از تعاملات بین دستگاه‌های پوشیدنی و تلفن‌ها پشتیبانی می‌کنند. این کتابخانه در ابتدا با کلاس‌هایی که از کتابخانه پشتیبانی دستگاه‌های پوشیدنی ( ID5180 ) منتقل شده‌اند، پر می‌شود.

  • کلاس PhoneDeviceType را از کتابخانه پشتیبانی Wearable به AndroidX منتقل کنید. کلاس منتقل شده به PhoneTypeHelper تغییر نام می‌دهد که متدهای کمکی برای تعیین نوع تلفنی که ساعت فعلی به آن متصل است، فقط برای استفاده در دستگاه‌های Wearable ارائه می‌دهد. ( Ibd947 )

  • یک کتابخانه پشتیبانی جدید ایجاد کنید تا شامل کلاس‌هایی باشد که از تعاملات بین دستگاه‌های پوشیدنی و تلفن‌ها پشتیبانی می‌کنند. این کتابخانه در ابتدا با کلاس‌هایی که از کتابخانه پشتیبانی دستگاه‌های پوشیدنی منتقل شده‌اند، پر می‌شود. ( I9deb4 )

  • کلاس WatchFaceCompanion را از کتابخانه پشتیبانی Wearable به AndroidX منتقل کنید. کلاس منتقل شده به WatchFaceConfigIntentHelper تغییر نام می‌دهد که توابع کمکی را برای مشخص کردن شناسه و نام کامپوننت در فعالیت‌های پیکربندی watch face در companion روی تلفن فراهم می‌کند، همچنین می‌تواند به صورت محلی برای پیکربندی watch face روی دستگاه پوشیدنی استفاده شود. ( Ia455f )

عوارض پوشیدن و صفحه ساعت ۱.۰.۰

نسخه ۱.۰.۰-آلفا۲۲

۱۵ سپتامبر ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha22 منتشر شد. نسخه 1.0.0-alpha22 شامل این کامیت‌ها است.

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

  • EditorSession اکنون در ناظران چرخه عمر مشترک می‌شود، بنابراین دیگر لازم نیست وقتی فعالیت شما از بین می‌رود، صریحاً آن را ببندید.

تغییرات API

  • EditorSession و ListenableEditorSession اکنون از StateFlows کاتلین برای ComplexitySlotsState، ComplicationsPreviewData و ComplicationsDataSourceInfo استفاده می‌کنند. ( I761d9 )
  • EditorSession#userStyle اکنون یک MutableStateFlow<UserStyle> است ( I32ca9 )
  • EditorSession.createOnWatchEditorSession اکنون از یک ناظر چرخه عمر استفاده می‌کند و هنگام مشاهده onDestroy به طور خودکار بسته می‌شود. علاوه بر این، createOnWatchEditorSession اکنون فقط نیاز به ارسال فعالیت دارد. تغییرات یکسانی نیز در ListenableEditorSession اعمال شده است. ( Ic6b7f )
  • سازنده‌ی CustomValueUserStyleSetting به عنوان بخشی از API عمومی ( I2e69a ) بازگردانده شده است.
  • اکنون UserStyle از Map<UserStyleSetting, UserStyleSetting.Option> ارث‌بری می‌کند و MutableUserStyleSetting#put در صورتی که تنظیمات در طرحواره نباشد یا اگر گزینه با تنظیمات مطابقت نداشته باشد، خطای IllegalArgumentException را صادر می‌کند. ( Iba40f )

نسخه ۱.۰.۰-آلفا۲۱

۱ سپتامبر ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha21 منتشر شد. نسخه 1.0.0-alpha21 شامل این کامیت‌ها است.

تغییرات API

  • تمام رابط‌های برنامه‌نویسی کاربردی (API) مربوط به واچ‌فیس‌های عمومی، کلاینت، ویرایشگر و پیچیدگی‌ها اکنون به جای Long از java.time.Instant برای زمان‌ها استفاده می‌کنند، در نتیجه حداقل سطح API به ۲۶ افزایش یافته است. ( I3cd48 )
  • رابط‌های برنامه‌نویسی کاربردی (API) و رابط‌های کاربری واچ‌فیس (watchface) اکنون به جای تقویم (Calendar)، از ZonedDateTime تغییرناپذیر استفاده می‌کنند. ( I25cf8 )
  • ComplicationSlotها اکنون با NoDataComplicationData مقداردهی اولیه می‌شوند، ComplicationSlot.complicationData اکنون همیشه دارای یک مقدار است و CanvasComplicationDrawable.complicationData دیگر قابل تهی‌سازی نیست. ( I4dfd6 ) این کار باعث کاهش (اما نه حذف) لرزش پیچیدگی هنگام جابجایی بین واچ فیس‌ها می‌شود.

نسخه ۱.۰.۰-آلفا۲۰

۱۸ آگوست ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha20 منتشر شد. نسخه 1.0.0-alpha20 شامل این کامیت‌ها است.

تغییرات API

  • ما createFallbackPreviewData را به ComplicationDataSourceInfo اضافه کرده‌ایم که می‌تواند زمانی که ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData مقدار null را برمی‌گرداند، استفاده شود. ( I38c4d )
  • ComplicationDataSourceUpdateRequester به یک رابط تبدیل شده است تا امکان mocking در تست‌های واحد را فراهم کند. می‌توانید یک ComplicationDataSourceUpdateRequester واقعی با ComplicationDataSourceUpdateRequester.create() بسازید ( I7da22 )
  • RenderParameters.pressedComplicationSlotIds با RenderParameters.lastComplicationTapDownEvents جایگزین شده است که کلاس جدید TapEvent را نمایش می‌دهد که شامل مختصات سه‌تایی x و y مربوط به ضربه بر حسب پیکسل و یک مهر زمانی است. WatchFace.TapListener.onTap با onTapEvent(@TapType tapType: Int, tapEvent: TapEvent) جایگزین شده است. علاوه بر این، InteractiveWatchFaceClient.displayPressedAnimation حذف شده است. ( Id87d2 )
  • حاشیه‌نویسی صریح نخ‌بندی برای setImportantForAccessibility ( I990fa ) اضافه شد.
  • ComplicationSlotBoundsType به androidx-wear-watchface.ComplicationSlotBoundsType در wear/wear-watchface منتقل شده است. ( I09420 )
  • ما پشتیبانی از ارسال شناسه‌های منبع رشته‌ای به UserStyleSetting و Options را اضافه کرده‌ایم. اکنون این روش، روش پیشنهادی برای ساخت این اشیاء است. ( I03d5f )
  • محدودیت‌هایی برای حداکثر اندازه سیم یک طرحواره UserStyle اعمال شده است. همچنین آیکون‌های موجود در طرحواره نباید بزرگتر از ۴۰۰x۴۰۰ پیکسل باشند. ( I3b65b )
  • ما یک کلاس MutableUserStyle اضافه کردیم تا از تغییرات در نمونه‌های UserStyle پشتیبانی کند ( I95a40 )
  • ما ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient را به ListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient تغییر نام داده‌ایم. ( I64ce2 )
  • We've modified EditorState.previewComplicationsData to only contain data for enabled complications, and we've added EditorSession.DEFAULT_PREVIEW_TIME_MILLIS which if passed to renderWatchFaceToBitmap or PreviewScreenshotParams requests rendering with the watch face's default preview time. ( If7b3c )
  • We have removed UserStyleSetting constructors taking CharSequence from the public API. It's recommended to use the constructors that require StringResource IDs instead. ( I8537b )
  • CurrentUserStyleRepository.UserStyleChangeListener now supports SAM conversion. ( I85989 )

Version 1.0.0-alpha19

August 4, 2021

androidx.wear:wear-*:1.0.0-alpha19 is released. Version 1.0.0-alpha19 contains these commits.

API Changes

  • We've added ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient which provides a ListenableFuture wrapper for WatchFaceMetadataClient.createWatchFaceMetadataClient . ( I5fa37 )
  • UserStyleOption.getOptionForId now accepts UserStyleOption.Id instead of a byte array. ( I469be )
  • Provide constants BooleanOption.TRUE and BooleanOption.FALSE and disallow instance creation ( I46e09 )
  • Methods in wear-watchface-client that can throw RemoteException have now been annotated accordingly. ( Ib8438 )
  • For consistency we've renamed EditorSession.createOnWatchEditingSession to createOnWatchEditorSession , similarly createHeadlessEditingSession is now createHeadlessEditorSession . Their guava wrappers have also been renamed. ( I1526b )
  • EditorSession is now an interface and ListenableEditorSession.commitChangesOnClose is now properly delegated. ( I7dc3e )
  • We now reject any user style schema that has settings or options with conflicting IDs ( Ic2715 )
  • We have added an overloaded UserStyle.get which accepts UserStyleSetting.Id . ( I2aa0f )

Version 1.0.0-alpha18

July 21, 2021

androidx.wear:wear-*:1.0.0-alpha18 is released. Version 1.0.0-alpha18 contains these commits.

API Changes

  • We moved ComplicationHelperActivity to androidx.wear:wear-watchface library. ( I39e76 )
  • For consistency and clarity, ComplicationProvider has been renamed to ComplicationDataSource and all classes with Provider in their name have been similarly renamed. ( Iaef0b )
  • CanvasComplication.isHighlighted has been moved into RenderParameters.pressedComplicationSlotIds this is a step towards making CanvasComplication stateless. To support this change CanvasComplication.render now also takes the slotId as a parameter and we now pass the ComplicationSlot into GlesTextureComplication . ( I50e6e )
  • We have added headlessDeviceConfig to EditorRequest , if non null this parameter is used to construct a headless instance to back the EditorSession rather than acting on the interactive instance. This allows the editor to be invoked for a watch face that isn't the current one. ( I0a820 )
  • We've added an experimental WatchFaceMetadataClient which allows efficient retrieval of static watch face metadata such as the UserStyleSchema and fixed details about ComplicationSlots . ( I6bfdf )
  • We have renamed CanvasRenderer.uiThreadInit to init. ( I6fff9 )
  • We've added PreviewScreenshotParams an optional new parameter for EditorRequest which instructs EditorSession to take a preview screenshot on commit with these parameter. The preview image is exposed on EditorState.previewImage . ( Ic2c16 )

رفع اشکالات

  • Developers no longer need to add ComplicationHelperActivity to their own manifest. ( I6f0c2 )

Version 1.0.0-alpha17

June 30, 2021

androidx.wear:wear-*:1.0.0-alpha17 is released. Version 1.0.0-alpha17 contains these commits.

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

  • In GlesRenderer , makeUiThreadContextCurrent and makeBackgroundThreadContextCurrent have been replaced by runUiThreadGlCommands and runBackgroundThreadGlCommands which both accept a Runnable . The library ensures that only one GL command runnable is executing at any given time.

  • To make UiThread initialziaion easier we've added CanvasRenderer.uiThreadInit which is called once on the UiThread before any calls to render. We've also added onRendererCreated to CanvasComplication which makes it easier for Renderer and CanvasComplication to share state.

  • For clarity we have renamed Complication to ComplicationSlot and complicationId to either complicationSlotId or complicationInstanceId depending on usage

API Changes

  • For clarity we have renamed Complication to ComplicationSlot and complicationId to either complicationSlotId or complicationInstanceId depending on usage. Classes using Complication have similarly been renamed eg ComplicationsManager is now called ComplicationSlotsManager. ( I4da44 )
  • In GlesRenderer makeUiThreadContextCurrent and makeBackgroundThreadContextCurrent have been replaced by runUiThreadGlCommands and runBackgroundThreadGlCommands which both accept a Runnable . These functions are only needed if you need to make GL calls outside of render, runBackgroundThreadGlCommands and onUiThreadGlSurfaceCreated . This is required because there can be multiple GlesRenderers each with their own contexts in the same process, potentially from different watch faces. In addition access to the shared current GL context is now synchronized. ( I04d59 )
  • We have added CanvasRenderer.uiThreadInit which is called once on the UiThread before any calls to render. Also for clarity in GlesRenderer we have renamed onGlContextCreated to onBackgroundThreadGlContextCreated , and onGlSurfaceCreated to onUiThreadGlSurfaceCreated . ( If86d0 )
  • HeadlessWatchFaceClient & InteractiveWatchFaceClient getComplicationsSlotState has been renamed to getComplicationSlotsState . In ComplicationSlot : createRoundRectComplicationBuilder , createBackgroundComplicationBuilder , and createEdgeComplicationBuilder have been renamed to createRoundRectComplicationSlotBuilder , createBackgroundComplicationSlotBuilder , and createEdgeComplicationSlotBuilder respectively. ( Ib9adc )
  • We have added onRendererCreated to CanvasComplication which makes it easier for Renderer and CanvasComplication to share state. ( I5e1ac )

Version 1.0.0-alpha16

۱۶ ژوئن ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha16 is released. Version 1.0.0-alpha16 contains these commits.

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

  • We've fixed a number of bugs related to the recent threading model changes as well as addressing other issues with the on watch face editor.

رفع اشکالات

  • Prevent NPE in onComplicationProviderChooserResult ( b/189594557 )
  • Fix issues with stale surfaces and drawBlack ( b/189452267 )
  • Fix race in accessing complicationsManager.watchState ( b/189457893 )
  • Fix background thread lifetime bug ( b/189445428 )
  • Fix Pre-R Watch face Editor issues ( b/189126313 )
  • Don't update direct boot params for editor style changes ( b/187177307 )

Version 1.0.0-alpha15

۲ ژوئن ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha15 is released. Version 1.0.0-alpha15 contains these commits.

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

The majority of watch face initialization is now done on a background thread, however after loading all watch face rendering etc is done on the UiThread. There is a memory barrier between loading and rendering so most user watch faces don't need to do anything special. Watch faces using GLES may be an exception since the context is thread specific and we create two linked contexts so it's possible to upload GL resources (eg textures and shaders) on the background thread and use them on the UiThread.

We have split the construction of watchfaces into three functions: createUserStyleSchema, createComplicationsManager and createWatchFace. We assume that createUserStyleSchema and createComplicationsManager are fast and createWatchFace may take some time to load assets. Taking advantage of this we have introduced WatchFaceControlClient.getDefaultProviderPoliciesAndType which returns a map of Complication Ids to DefaultComplicationProviderPolicies and the default ComplicationType. This is faster than creating a headless instance since it doesn't need to fully initialize the watch face to perform the query.

Finally complications are now constructed with a CanvasComplicationFactory which allows for lazy construction of the CanvasComplication renderers.

API Changes

  • Replaced @TargetApi with @RequiresApi . ( I0184a , b/187447093 , b/187447094 )
  • We have introduced WatchFaceControlClient.getDefaultProviderPoliciesAndType which returns a map of Complication Ids to DefaultComplicationProviderPolicies and the default ComplicationType. Where possible a fast path is used that avoids fully constructing a watch face. To facilitate this the WatchFaceService API has had to change with two new methods being: createUserStyleSchema and createComplicationsManager the results of which are passed into createWatchFace. In addition Complications are now constructed with a CanvasComplicationFactory which allows for lazy construction of the CanvasComplication renderers. ( Iad6c1 )
  • We have removed MOST_RECENT_APP from SystemProviders. ( I3df00 )
  • ObservableWatchData is now a sealed class. ( Ic940d )
  • CanvasComplicationFactory.create (which is typically io bound) is now called on a background thread for each complication before ui thread rendering commences. There is a memory barrier between construction and rendering so no special threading primitives are required. ( Ia18f2 )
  • Watchface construction is now done on a background thread although all rendering is done on the ui thread, GlesRenderer supports two linked contexts to support this. WatchFaceControlClient.createHeadlessWatchFaceClient and WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient may resolve before WatchFaceService.createWatchFace has completed. Subsequent API calls will block until watchFace initialization has completed. ( Id9f41 )
  • EXPANSION_DP and STROKE_WIDTH_DP are no longer visible in api.txt. ( I54801 )
  • We have made EditorSession.createOnWatchEditingSession throw TimeoutCancellationException if there's an error instead of sending a null session. Additionally, the return value of EditorRequest.createFromIntent and EditorSession.createOnWatchEditingSession is now NonNull. ( I41eb4 )

Version 1.0.0-alpha14

۱۸ مه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha14 is released. Version 1.0.0-alpha14 contains these commits.

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

  • EditorSession.openComplicationProviderChooser now returns ChosenComplicationProvider which contains the complication id, ComplicationProviderInfo and a Bundle containing any additional extras returned by the provider chooser.
  • In addition we have been steadily migrating code to Kotlin and the majority of the watch face API is now defined in Kotlin.

API Changes

  • GlesRenderer properties eglContext and eglDisplay are now non-nullable. Any GL errors are now reported via GlesRenderer.GlesException rather than via RuntimeExceptions. ( Ib1005 )
  • We have migrated androidx.wear.watchface.complications.rendering.ComplicationDrawable from Java to Kotlin ( Ibc3eb )
  • We have migrated androidx.wear.watchface.complications.rendering.ComplicationStyle from Java to Kotlin ( I3375e )
  • We added information about the complication provider for each complication within EditorSession. ( I37f14 )
  • We extended the result of EditorSession.openComplicationProviderChooser to include information returned by the chosen. ( Iead6d )

Wear Complications & Watchface Version 1.0.0-alpha13

۵ مه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha13 is released. Version 1.0.0-alpha13 contains these commits.

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

  • Watch faces can have important visual elements beyond showing the time and complications. To provide screen reader support for this, watchface can now specify accessibility ContentDescriptionLabels via the Renderer's additionalContentDescriptionLabels property. In addition, to control the ordering of ContentDescriptionLabels accessibilityTraversalIndex has been added to complications. This can be modified by a ComplicationsUserStyleSetting.

  • To encourage developers to carefully consider screen readers we have made ShortTextComplicationData.Builder 's, LongTextComplicationData.Builder 's and RangedValueComplicationData.Builder 's contentDescription field mandatory to be passed into their constructors. If ComplicationText.EMPTY is passed in for the contentDescription , a contentDescription will be automatically generated from the text and title.

  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient now throws ServiceStartFailureException if the watchface throws an exception during init, this makes it much easier to diagnose issues during watch face startup.

API Changes

  • We added support for having a null component name in ComplicationProviderInfo, which is needed to support older versions of Wear OS. ( I744d2 )
  • We have migrated androidx.wear.complications.SystemProviders from Java to Kotlin. ( Ia1f8b )
  • We have hidden all classes from public API that are in android.support.wearable.complications and created corresponding wrappers in AndroidX where needed. ( I7bd50 )
  • We have renamed method in TimeDifferenceComplicationText.Builder from setMinimumUnit to setMinimalTimeUnit . ( I20c64 )
  • We have made ShortTextComplicationData.Builder 's, LongTextComplicationData.Builder 's and RangedValueComplicationData.Builder 's contentDescription field mandatory to be passed in constructor. ( I8cb69 )
  • We have renamed ComplicationProviderService.onComplicationUpdate to onComplicationRequest and encapsulated id and type parameter of this method into data ComplicationRequest. Corresponding listener has been renamed to ComplicationRequestListener and its method ComplicationRequestListener.onComplicationData. ( Iaf146 )
  • We have removed method isActiveAt from ComplicationData and exposed field validTimeRange instead of it. This method call can be replaced with validTimeRange.contains . ( I65936 )
  • We have changed description of the method ComplicationProviderService.onComplicationActivated to receive a ComplicationType instead of an int. ( Idb5ff )
  • Migrated ProviderUpdateRequester from Java to Koltin. ( Ibce13 )
  • GlesRender.makeContextCurrent is now public. Watch face code may need to make gl calls outside of render and onGlContextCreated and because there may be both an interactive and a headless context its necessary to call this. ( I8a43c )
  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient now throws ServiceStartFailureException if the watchface throws during init. In addition WatchFaceService now throws an exception if createWatchFace takes longer than 6 seconds. ( I59b2f )
  • We have removed the unused id property of GlesTextureComplication . ( I28958 )
  • The watchface can now specify accessibility ContentDescriptionLabels via the Renderer 's additionalContentDescriptionLabels property. In addition to controlling the ordering of ContentDescriptionLabels accessibilityTraversalIndex has been added to complications. This can be modified by a ComplicationsUserStyleSetting. ( Ib7362 )
  • Expand documentation about touch event handling in the watch face. ( Iaf31e )

رفع اشکالات

  • EditorSession.getComplicationsPreviewData() now returns a map for every rather only non-empty complications. An instance of EmptyComplicationData is used for empty complications. ( I1ef7e )

Wear Complications & Watchface Version 1.0.0-alpha12

۲۱ آوریل ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits.

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

Watch face editors need to highlight parts of the watch face to help convery which aspect of a watch is being configured. We've extended RenderParameters to allow styles as well as complications to be highlighted. There's a new optional HighlightLayer which is intended to be matted on top of the watch face with alpha transparency (the screenshot apis can do this matting for you, or provide the HighlightLayer on its own for maximum flexibility). Eg suppose you had a style that lets you configure the appearance of the watch hands, your renderer in its renderHighlightLayer can draw an outline around them.

To encourage Complication Provider support for accessibility we have made PhotoImageComplicationData.Builder's, MonochromaticImageComplicationData.Builder's and SmallImageComplicationData.Builder's contentDescription field to be a mandatory constructor argument. ComplicationTapFilter and Complication.createEdgeComplicationBuilder have been added to support edge complications (drawn around the edge of the screen). Rendering and hit testing of edge complications is left up to the watch face. Edge hit testing isn't supported from the companion editor.

API Changes

  • Added PROVIDER_ prefix to constants in SystemProviders. ( I1e773 )
  • We have made PhotoImageComplicationData.Builder 's, MonochromaticImageComplicationData.Builder 's and SmallImageComplicationData.Builder 's contentDescription field mandatory to be passed in constructor. ( I9643a )
  • ProviderInfoRetriever.requestPreviewComplicationData has been renamed to retrievePreviewComplicationData . ( I911ee )
  • Migrated ComplicationProviderService from Java to Koltin. ( I849f2 )
  • Method ComplicationProviderService.onBind is now final ( I39af5 )
  • We've reinstated interface CanvasComplication and moved CanvasComplicaitonDrawable , GlesTextureComplication and ComplicationHighlightRenderer to wear-watchface-complications-rendering . ( I84670 )
  • RenderParameters has been refactored to support extended highlight rendering. It's now possible to request rendering of highlights for styles as well as all or a single complication. In addition CanvasRenderer and GlesRenderer how have a new abstract renderHighlightLayer method for rendering any highlighting requested by the editor. Layer has been renamed to WatchFaceLayer. ( Ic2444 )
  • ComplicationTapFilter and Complication.createEdgeComplicationBuilder have been added to support edge complications. Rendering and hit testing of edge complications is left up to the watch face. Hit testing isn't supported from within editors. ( Ia6604 )
  • For DoubleRangeUserStyleSetting & LongRangeUserStyleSetting : defaultValue , maximumValue and minimumValue are now kotlin properties. In addition, UserStyleSetting.Option functions like toBooleanOption, toCoplicationOptions, toListOption and similar have been removed. ( I52899 )
  • Add chin size to the properties of the device available to the watch face. ( I76e1e )
  • ComplicationHighlightRenderer 's constructor now accepts outlineExpansion and outlineStrokeWidth parameters. ( I87009 )
  • ComplicationDrawable.getNoDataText is now part of the public API. ( I00598 )

Version 1.0.0-alpha11

۷ آوریل ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits.

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

  • More polish has been applied to the watch face APIs. Most of the changes are simple renamings but InteractiveWatchFaceWcsClient and InteractiveWatchFaceSysUiClient have been merged into InteractiveWatchFaceClient .

API Changes

  • ContentDescriptionLabel.text is now a ComplicationText rather than the old wearable support library TimeDependentText. ( I80c03 )
  • SystemProviders.GOOGLE_PAY is not guaranteed to be present on all Android R devices so it has been removed from the list. It's still possible to use this provider via DefaultComplicationProviderPolicy ( If01b5 )
  • We've renamed ComplicationUpdateCallback to ComplicationUpdateListener for consistency. ( I61ec7 )
  • The UserStyle wire format map has been changed to Map<String, byte[]> and for convenience a UserStyleData class has been added to the public API and is now used by wear-watchface-client and wear-watchface-editor. In addition CustomValueUserStyleSetting.CustomValueOption.value is now byte[] instead of String . ( Iaa103 )
  • UserStyleSetting and UserStyleSetting.Option now use UserStyleSetting.Id and UserStyleSetting.Option.Id respectively to store their ids rather than a String. ( I63f72 )
  • InteractiveWatchFaceClient.SystemState has been renamed to WatchUiState . ( I6a4e0 )
  • InteractiveWatchFaceWcsClient and InteractiveWatchFaceSysUiClient have been merged because it was hard to explain the division of responsibility ( Iff3fa )
  • Layer enum values have been renamed for clarity. Layer#TOP_LAYER is now Layer#COMPLICATIONS_OVERLAY and Layer#BASE_LAYER is now Layer#BASE ( Ia144e )
  • UserStyleListener has been renamed to UserStyleChangeListener ( I18524 )
  • UserStyleRepository has been renamed to CurrentUserStyleRepository ( I6ea53 )
  • InteractiveWatchFaceWcsClient.updateInstance has been renamed to updateWatchfaceInstance . ( I321dc )
  • WatchFace TapType events have been renamed to align with MotionEvents / Compose. ( I0dfd0 )
  • takeWatchfaceScreenshot has been renamed to renderWatchFaceToBitmap, and takeComplicationScreenshot has been renamed to renderComplicationToBitmap ( Ie0697 )
  • The CanvasComplication interface has been removed in favor of the open class CanvasComplicationDrawable. ( I1f81f )
  • WatcfaceControlServiceFactory has been removed from the public api. ( I1f8d3 )
  • We've renamed CanvasComplication.setData to CanvasComplication.loadData . ( If1239 )
  • ComplicationsManager.bringAttentionToComplication has been renamed to displayPressedAnimation . ( Ic4297 )
  • WatchFaceService.createWatchFace now has an @UiThread annotation. ( Ib54c2 )
  • Changed the name of a CanvasComplicationDrawable parameter to fix a bug. ( I50dac )
  • We've added HeadlessWatchFaceClient.toBundle() and HeadlessWatchFaceClient.createFromBundle to support sending HeadlessWatchFaceClient over AIDL. ( I07c35 )
  • HeadlessWatchFaceClient and InteractiveWatchFaceClient now have ClientDisconnectListener and isConnectionAlive() to allow you to observe if the connection is broken for some reason (eg the watchface being killed). ( Ie446d )
  • WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync is now a suspend function and has been renamed to getOrCreateInteractiveWatchFaceClient . ( Ib745d )
  • EditorState.commitChanges and hasCommitChanges() has been renamed to shouldCommitChanges() . ( I06e04 )
  • previewComplicationData has been renamed to previewComplicationsData to indicate theres (usually) more than one complication in the map. ( I56c06 )
  • InteractiveWatchFaceWcsClient.bringAttentionToComplication has been renamed to displayPressedAnimation for consistency with ComplicationsManager.displayPressedAnimation . ( Ic9999 )
  • All instances of watchface instance id have been encapsulated in a new WatchFaceId class ( I45fdf )
  • complicationState property has been renamed to complicationsState to indicate plurality. ( Ided07 )
  • We've removed the various wear-watchface-client Binder conversions, they should be necessary. ( Icc4c0 )
  • For consistency EditorServiceClient has been refactored to use listeners instead of observers. ( Iec3a4 )
  • We've added a couple of missing @Px annotations to InteractiveWatchFaceSysUiClient and WatchFaceControlClient . ( I3277a )
  • Renamed EditorObserverCallback to EditorObserverListener for consistency. ( Ie572d )
  • EditorState.watchFaceInstanceId is restricted to Android R API level and above and is no longer nullable. ( Id52bb )
  • EditorSession.launchComplicationProviderChooser has been renamed to openComplicationProviderChooser . ( I9d441 )
  • EditorSession.createOnWatchEditingSessionAsync has been renamed to createOnWatchEditingSession and is now a suspend function. ( Id257b )
  • Added several missing @UiThread annotations on EditorSession . ( I6935c )
  • UserStyleSetting.affectsLayers has been renamed to affectedLayers . ( I6e22b )

Version 1.0.0-alpha10

March 24, 2021

androidx.wear:wear-*:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

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

  • It's now possible to create open gl objects (eg textures) during WatchFaceService.createWatchFace because GlesRenderer now requires an explicit call to initOpenGLContext which can be done inside createWatchFace.

API Changes

  • IdAndComplicationData was a bit awkward and has been removed from the public API. Classes & interfaces that used it have been refactored. ( I4c928 )
  • We've replaced ReferenceTime with CountUpTimeReference and CountDownTimeReference which are more self explanatory. ( Ib66c6 )
  • Added some missing @Px and @ColorInt annotations. ( I9bbc3 )
  • Complication.complicationConfigExtras is now non-nullable and defaults to Bundle.EMPTY . ( Iad04f )
  • GlesRenderer now requires you to call initOpenGLContext after construction. This function was an internal detail but is now on the public API to allow GL calls earlier inside createWatchFace. ( I726c2 )
  • We've removed Complication.setRenderer as it should not be needed. ( Ie992f )
  • Complicaiton.setComplicationBounds is no longer part of the public API. If you need to adjust the position of a complication, this can be done via ComplicationsUserStyleSetting . ( Ibd9e5 )
  • ComplicationsManager.TapCallback.onComplicationSingleTapped has been renamed to onComplicationTapped . ( I3a55c )
  • ComplicationOutlineRenderer.drawComplicationSelectOutline has been renamed to drawComplicationOutline . ( I14b88 )

Version 1.0.0-alpha09

۱۰ مارس ۲۰۲۱

androidx.wear:wear-complications-*:1.0.0-alpha09 and androidx.wear:wear-watchface-*:1.0.0-alpha09 are released. Version 1.0.0-alpha09 contains these commits.

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

  • The interface between WCS/SysUI host and the on watch face has evolved. It's now possible for an editor to determine if a style change will enable or disable a complication (enabled = initiallyEnabled plus any override from ComplicationsUserStyleSetting). Also EditorService.closeEditor allows SysUI to remotely close an on watch face editor if needed.
  • In addition InteractiveWatchFaceWcsClient.setUserStyle with a more powerful command updateInstance which: changes the instance ID, sets the style, and clears complications all in one go.

API Changes

  • TraceEvents have been added to the watchface libraries. ( I1a141 )
  • ComplicationState now has a new property initiallyEnabled which is useful for predicting the consequences of switching styles. ( I8c905 )
  • We've replaced InteractiveWatchFaceWcsClient.setUserStyle with a more powerful command updateInstance which: changes the instance ID, sets the style, and clears complications. ( Ife6f6 )
  • WatchFaceClient screenshot APIs no longer compress the screenshots because that was slow, instead we leave any post processing up to the caller. ( Id35af )
  • It's now possible to remotely close an on watchface editor via EditorService.closeEditor . ( Ic5aa4 )
  • Added nullability annotations ( Ic16ed )

Version 1.0.0-alpha08

۲۴ فوریه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits.

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

  • Some watch faces are designed around one or more specific complications, to support this we've added Complication.Builder#setFixedComplicationProvider which if set to true prevents the user from changing the complication in that slot.
  • The watchface libraries are Kotlin first and use coroutines (eg suspend functions). For Java users we've provided ListenableFuture wrappers to improve interoperability in the following libraries: wear/wear-watchface-guava, wear/wear-watchface-client-guava & wear/wear-watchface-editor-guava.

API Changes

  • We've removed support for double taps on complications launching the provider chooser, this feature wasn't common in watchfaces and complicated the implementation of SysUI. ( I3ef24 )
  • ProviderInfoRetriever methods may throw ServiceDisconnectedException if the binder closes unexpectedly. ( Ib2cc4 )
  • From Android 11 onwards, there are restrictions on when the ProviderChooser can be run, in addition we'd like editors to be built with the new wear-watchface-editor so ComplicationHelperActivity is being removed from the public API. ( Ib19c1 )
  • Remove ComplicationText static methods in favor of builders. ( Ibe399 )
  • We have introduced guava ListenableFuture wrappers for the various watch face library suspended methods. ( I16b2c )
  • For API clarity we've added a secondary constructor to RenderParameters which doesn't require a tint, for use with LayerModes other than LayerMode.DRAW_OUTLINED . ( I497ea )
  • Previously ListUserStyleSetting was different from the other because it had a default argument. Now all the StyleSetting subclass constructors take the default value last. ( I9dbfd )
  • CanvasComplication has been refactored to use have a hidden method, which makes it easier to implement a subclass ( I5b321 )
  • We have refactored away EditorResult in favor of a new EditorService and EditorSession.broadcastState() to stream updates to an observer (typically SysUI). ( Ic4370 )
  • Some watchfaces are built around a particular complication as an integral part of the watch face where the provider is not user configurable. To support this we've added Complication.Builder#setFixedComplicationProvider . ( I4509e )
  • EditorRequest now specifies package name rather than ComponentName because it was inconvenient for SysUI to look up the class name of the editor, and we only really need the package name. ( Ib6814 )

Version 1.0.0-alpha07

۱۰ فوریه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

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

  • WatchFaceService.createWatchFace is now a suspend function which means the watchface no longer has to block the ui thread while waiting for IO. Similarly wear-watchface-editor and wear-complications-data

API Changes

  • Remove PhotoImage class and use Icon directly. ( I8a70b )
  • Expose the validTimeRange of ComplicationData. ( I91366 )
  • Make image-like attributes more explicit. ( I81700 )
  • wear-watchface-editor and wear-complications-data have been refactored to use suspend functions instead of coroutines. Rx java & Future compat wrappers to follow. ( If3c5f )
  • ProviderInfoRetriever now now throws PreviewNotAvailableException if requestPreviewComplicationData can't return preview data due to connection issues or lack of API support. ( I4964d )
  • WatchFaceControlService::createWatchFaceControlClient is now a suspended fuction and getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient is now called getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync returning Deferred<InteractiveWatchFaceWcsClient> . RX java and Future compat wrappers to follow. ( I5d461 )
  • Rename CATEGORY_PROVIDER_CONFIG_ACTION to CATEGORY_PROVIDER_CONFIG . ( I7c068 )
  • Please note createOnWatchEditingSession is now a suspended function because the watchface sometimes isn't available until shortly after the editor activity has started. ( Ida9aa )
  • WatchFaceService.createWatchFace is now a suspend function which allows for async initialization, previously you would have had to block the main thread. ( If076a )
  • UserStyle now has an array operator and we've added casting helpers to UserStyle.Option. ( I35036 )
  • We've fixed a marshalling bug with UserStyle wireformats changing some of the unstable hidden API. ( I8be09 )
  • We've added CustomValueUserStyleSetting which lets you store a single application specific string within a UserStyle. The default watch face editors will ignore this value. ( Ic04d2 )
  • InstanceID is not passed in the intent extras for R and older versions of Android WearOS which we can't upgrade. To support this we now allow InstancID to be null. ( Id8b78 )
  • EditorRequest now includes the editor ComponentName which is set as the component in WatchFaceEditorContract.createIntent ( I3cd06 )
  • The watchface EditorResult now includes preview ComplicationData to allow the caller to take a screenshot of the watchface after editing. ( I2c561 )

رفع اشکالات

  • Added toString() overrides to UserStyle, UserStyleSetting and UserStyleSchema which makes working with these classes a bit nicer. ( I9f5ec )

Version 1.0.0-alpha06

۲۷ ژانویه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

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

  • We've introduced a new library wear/wear-watchface-editor which allows watch face developers and potentially OEMs to build a style and complication editor. SysUI will send an Intent to the watch face which will use the new EditorSession class to access WatchFace details and record the result via Activity.setWatchRequestResult. To support this we've added ProviderInfoRetriever.requestPreviewComplicationData which allows watch face editors to request preview ComplicationData. The advantage of preview ComplicationData is unlike live data you don't have to worry about showing permission dialogs when rendering your editor (note if a user selects a provider with a permission they will still be prompted to grant the permission).

API Changes

  • ComplicationProviderInfo now has a field for the provider's ComponentName, support for this field will be added to WearOS at a later date and in the meantime, it will be null. ( Id8fc4 )
  • We've added ProviderInfoRetriever.requestPreviewComplicationData which allows watch face editors to request preview ComplicationData. This is useful because live complications may require permissions and you can now display preview data for complications that are not active. ( I2e1df )
  • ComplicationManager is now an optional parameter of WatchFace constructor and the arguments have been reordered to allow this. ( I66c76 )
  • We've added an optional Bundle to Complications which if set gets merged in with the intent sent to launch the provider chooser activity. ( Ifd4ad )
  • We've added a new wear-watchface-editor library to support on watch face and SysUi hosted editors. SysUI will launch these editors by sending an intent. The watch face activity service can use the new EditorSession class to access WatchFace details and record the result via Activity.setWatchRequestResult. ( I2110d )
  • LayerMode.DRAW_HIGHLIGHTED is now called LayerMode.DRAW_OUTLINED and RenderParameters.highlightComplicationId is now called RenderParameters.selectedComplicationId which draws a highlight on the specified complication in addition to an outline. ( I90a40 )
  • WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient's future can now resolve with a ServiceStartFailureException if the service dies while waiting for the watchface to be created. ( I0f509 )
  • EditorSession.complicationPreviewData is now a ListenableFuture because fetching this data is an asynchronous process. ( Iead9d )

رفع اشکالات

  • We're removing unused fields from ComplicationOverlay leaving enabled and complicationBounds. ( I17b71 )

Version 1.0.0-alpha05

۱۳ ژانویه ۲۰۲۱

androidx.wear:wear-*:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

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

Watchfaces often support a number of complication configurations with varying numbers of complications shown. To make this easier to set up we now support initially disabled complications by calling setEnabled(false) on the builder. These can be enabled later via ComplicationsUserStyleSetting.

API Changes

  • ComplicationHelperActivity now accepts Collection<ComplicationType> rather than an int array making it easier to use. ( I1f13d )
  • ProviderInfoRetriever.retrieveProviderInfo now correctly returns ListenableFuture<ProviderInfo[]> . ( If2710 )
  • You can now create an initially disabled complication by calling setEnabled(false) on the builder. ( Idaa53 )
  • WatchFaceState now has an isHeadless property which is only true for headless instances. ( Ifa900 )
  • ComplicationDrawable now optionally supports synchronous loading of drawables. This is used by the screenshot APIs. ( I34d4a )

Version 1.0.0-alpha04

۱۶ دسامبر ۲۰۲۰

androidx.wear:wear-*:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.

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

  • The wear watch face library now supports setting bounds per type. Eg you can switch to a wide bounding box for ComplicationType.LONG_TEXT whilst using a smaller bounding box for other types.

API Changes

  • Complications now use ComplicationBounds which wraps a Map<ComplicationType, RectF> to support per complication type sizes. ( I1ebe7 )
  • RenderParameters now lets you specify the highlight tint for use in screen shots. ( Iff42b )
  • With the exception of bounds you now have to use ComplicationsUserStyleSetting to modify complications, this is to ensure the OS is kept in sync. ( I8dc5d )
  • Renderer is now a sealed class. This means CanvasRenderer and GlesRenderer are now inner classes of Renderer. ( Iab5d4 , b/173803230 )
  • CanvasComplicationDrawable.drawHighlight renamed to drawOutline. ObservableWatchData now has a few missing UiThread annotations. ScreenState has now been fully removed from WatchState. ( If1393 )
  • The minimum API level for wear-watchface is now 25. Note hardware canvas support requires API level 26 or above. ( Ic9bbd )
  • InteractiveWatchFaceWcsClient now has a getComplicationIdAt helper. ( I05811 )
  • The API level for wear-watchface-client has been reduced to 25, however the screen shot APIs require API level 27. ( Id31c2 )

رفع اشکالات

  • We now expose the complication's current ComplicationData's ComplicationType in ComplicationState. ( I9b390 )
  • InteractiveWatchFaceWcs now has a method `bringAttentionToComplication to briefly highlight the specified complication. ( I6d31c )
  • InteractiveWatchFaceWcsClient#setUserStyle now has an overload accepting Map which can potentially avoid an extra IPC round trip necessary to construct UserStyle. ( I24eec )

Version 1.0.0-alpha03

December 2, 2020

androidx.wear:wear-*:1.0.0-alpha03 is released. Version 1.0.0-alpha03 contains these commits.

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

The Complication class now has a compicationData property letting watch faces observe ComplicationData changes. This makes it possible to change the complication's dimensions based on the type of the complication.

Variable frame rates are now supported by assigning to Renderer.interactiveDrawModeUpdateDelayMillis. For watch faces which run short animations every second this can lead to good power savings by going to sleep when not animating.

API Changes

  • BACKGROUND_IMAGE has been renamed to PHOTO_IMAGE along with related classes. This type of complication is not exclusively used for backgrounds hence the name change. ( I995c6 )
  • DefaultComplicationProviderPolicy properly annotated with IntDefs. ( I3b431 )
  • The hidden TimeDependentText class is no longer exposed via ContentDescriptionLabel, instead we add an accessor to get the text at a specified time. ( Ica692 )
  • ObservableWatchData's constructor is now internal. ( I30121 , b/173802666 )
  • Complication now has compicationData letting watch faces observe ComplicationData changes. Complication also has a new isActiveAt call which can be used to tell if anything should be rendered at the provided datetime. ( Ic0e2a )
  • The empty SharedMemoryImage is no longer in the public API. ( I7ee17 )
  • WatchFace.overridePreviewReferenceTimeMillis now has an IntRange annotation and the getter and setter have consistent names. ( Ia5f78 )
  • Complication.Builder is now created via Complication.createRoundRectComplicationBuilder or Complication.createBackgroundComplicationBuilder for clarity ( I54063 )
  • Added WatchFace.TapListener which allows taps not consumed by complications to be observed by the WatchFace. ( Ic2fe1 , b/172721168 )
  • WatchFace now supports variable frame rates by assigning to Renderer.interactiveDrawModeUpdateDelayMillis . This can help preserve battery life by sleeping when not animating. ( I707c9 )
  • WatchFace.Builder is no longer needed and invalidate() and interactiveUpdateRateMillis have been moved to Renderer. ( I329ea )
  • For better java interoperability renamed getters for boolean properties in WatchState ( I6d2f1 )
  • Renamed TapListener to TapCallback and InvalidateCallback to InvalidateListener for consistency. ( I9414e )
  • Wear 2.0 watchface style options have been moved to their own class for clarity. WatchFace.Builder setters now have symmetrical WatchFace class getters. ( Iefdfc )
  • Added InteractiveWatchFaceWcsClient and WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient which either gets an existing instance or creates it once the wallaper service has connected and made the engine. ( Id666e )
  • WatchFaceControlClient is now an interface to allow tests to mock it. ( I875d9 )
  • HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl, InteractiveWatchFaceWcsClient are now interfaces to better facilitate testing. ( I7cdc3 )
  • Added annotations to methods in wear-watchface-complications-rendering ( I0d65c )

رفع اشکالات

  • Remove screen shape from DeviceConfig, which was duplicating android.content.res.Configuration#isScreenRound() ( Ifadf4 )
  • Changed WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient to accept a Map<String, String> instead of UserStyle because it's hard to create a UserStyle without knowing the schema which you can only get after the client has been created. ( Iea02a )
  • Fix InteractiveWatchFaceWcsClient to use ComplicationState instead of the wire format. ( Icb8a4 )
  • UserStyleSettings is now a sealed class because the watch face editors only understand the built in classes. ( I2d797 )

Version 1.0.0-alpha02

November 11, 2020

androidx.wear:wear-*:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

API Changes

  • ComplicationDetails is now called ComplicationState and is properly wrapped and usages of wearable support @ComplicationData.ComplicationType have been migrated to androidx ComplicationType . ( I4dd36 )
  • Add an optional highlightedComplicationId parameter to RenderParameters which allows you to request highlighting of a single complication in screenshots. ( I66ce9 )
  • ComplicationProviderService to use new style complication api for consistency ( Id5aea )
  • getPreviewReferenceTimeMillis now gets reference times from DeviceConfig . ( I779fe )
  • Simplifying Renderer API surface, can use SurfaceHolder.Callback to observe changes instead. ( I210db )
  • CanvasComplicationRenderer doesn't extend from Renderer , renaming it for clarity. ( Ibe880 )

رفع اشکالات

  • First version of androidx.wear:wear-watchface-client ( I1e35e )
  • Changed the name of GlesTextureComplication#renderer for clarity ( Ib78f7 )
  • Rename StyleCategory to StyleSetting for clarity ( I488c7 )
  • Adding UserStyleSchema for a cleaner API ( If36f8 )

Version 1.0.0-alpha01

۲۸ اکتبر ۲۰۲۰

androidx.wear:wear-complications-*:1.0.0-alpha01 and androidx.wear:wear-watchface-*:1.0.0-alpha01 are released. Version 1.0.0-alpha01 contains these commits.

API Changes

  • Removed some things we didn't intend to expose in public api. ( I41669 )
  • Create androidx.wear:wear-complications-provider library. ( I77f1f )
  • ComplicationsUserStyleCategory the new recommended category for configuring complications ( I96909 )
  • Add wear-complication-data API. ( I7c268 )
  • Functions with boolean return values to be prefixed with “is” rather than “get” ( If36ff )
  • API advice is to avoid using protected so this class has been refactored to take parameters in via the constructor. ( I61644 )
  • Rename setBackgroundComplication for clarity. ( I96fe3 )
  • Use Kotlin properties for ComplicationDrawable isHighlighted & data ( I4dcc8 )
  • Instead of ComplicationRenderer.InvalidateCallback we add Complication#invalidate() ( I4f4c6 )
  • These APIs are being deprecated in WearableSupport and are removed here. ( Ib425c )
  • Renamed some WatchFace builder methods to emphasize their wear 2.0 legacy nature. ( Idb775 )
  • First beta API candidate for wear/wear-watchface ( Id3981 )
  • First tracked version of the API. ( Ie9fe6 )
  • Properly hiding ComplicationDrawable.BorderStyle IntDef and move to ComplicationStyle for consistency. ( I27f7a )
  • Adding missing annotations for ComplicationStyle methods ( I838fd )
  • This library has no public API surface ( I88e2b )
  • All style category Option classes are now properly final. ( Ib8323 )
  • First tracked version of the API. ( I27c85 )

رفع اشکالات

  • Changed ComplicationProviderService to have an explicit getComplicationPreviewData method. ( I4905f )
  • API lint check for MissingGetterMatchingBuilder is enabled for androidx ( I4bbea , b/138602561 )
  • Rename wear-complications-rendering. ( Ifea02 )
  • Style category display names are now CharSequences ( I28990 )
  • Replacing Override with Overlay to match current themes & styles naming conventions. ( I4fde9 )
  • Renamed UserStyle#getOptions for clarity. ( I695b6 )

نسخه ۱.۲.۰

نسخه ۱.۲.۰

September 15, 2021

androidx.wear:wear:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0

  • Added CurvedText component for easily writing curved text following the curvature of the largest circle that can be inscribed in the view. An usage example:

    <androidx.wear.widget.CurvedText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="example curved text"
            app:anchorAngleDegrees="180"
            app:anchorPosition="center"
            app:clockwise="false"
            style="@android:style/TextAppearance.Large"
    />
    

    An example of curved text in Android Wear

  • Added ArcLayout container for laying out its child elements one by one on an arc in either the clockwise or counterclockwise direction. Its children can be both standard android widget or "curved" widgets which implement the ArcLayout.Widget interface. ( I536da ) An usage example:

    <androidx.wear.widget.ArcLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:anchorPosition="center">
          <ImageView
                  android:layout_width="20dp"
                  android:layout_height="20dp"
                  android:src="@drawable/ic_launcher"
          />
          <androidx.wear.widget.CurvedText
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:text="Curved Text"
                  style="@android:style/TextAppearance.Small"
                  android:padding="2dp"
           />
      </androidx.wear.widget.WearArcLayout>
    

    An example of arch text in Android Wear

  • Added a new layout container, DismissibleFrameLayout, which handles back-button-dismiss and/or swipe-to-dismiss, intended for use within an activity. At least one listener must be added to act on a dismissal action. A listener will typically remove a containing view or a fragment from the current activity. setSwipeDismissible(boolean) & setBackButtonDismissible(boolean) are provided for direct control over the features. This new layout is meant to replace the existing SwipeDismissFrameLayout.

  • Added support for indicating that an Activity can be “auto-resumed” when the device leaves ambient mode in the AmbientModeSupport class. This functionality was previously available in the deprecated WearableActivity class from WearableSupportLibrary. ( I336ab )

  • Migrated WearableCalendarContract class from Wearable Support Library. This API provides a subset of the data available through CalendarContract , but is automatically synced to wearable devices. ( I6f2d7 )

  • Added a new API WearTypeHelper in androidx.wear.utils for determining whether the given wear device is for China. ( Ib01a9 )

  • Added accessibility features to androidx.wear.widget.ConfirmationOverlay that will read out messages if set followed by animation description. ( I524dd )

  • Fixed bug that caused ConfirmationActivity to crash if no message was provided. ( Ie6055 )

  • Fixed bug where horizontally scrolling RecyclerViews caused WearableDrawerLayout to peek on all interactions. ( I24c7f )

Version 1.2.0-rc01

September 1, 2021

androidx.wear:wear:1.2.0-rc01 is released with no changes since the last beta. Version 1.2.0-rc01 contains these commits.

Version 1.2.0-beta01

August 18, 2021

androidx.wear:wear:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.

رفع اشکالات

  • Fix bug that caused ConfirmationActivity to crash if no message was provided. ( Ie6055 )

Version 1.2.0-alpha13

August 4, 2021

androidx.wear:wear:1.2.0-alpha13 is released. Version 1.2.0-alpha13 contains these commits.

API Changes

  • Renamed WearTypeHelper.isChinaDevice to WearTypeHelper.isChinaBuild . ( I47302 )

رفع اشکالات

  • We have added accessibility features to androidx.wear.widget.ConfirmationOverlay that will read out messages if set followed by animation description. ( I524dd )

Version 1.2.0-alpha12

July 21, 2021

androidx.wear:wear:1.2.0-alpha12 is released. Version 1.2.0-alpha12 contains these commits.

API Changes

  • We have added a new API WearTypeHelper in androidx.wear.utils for determining whether the given wear device is for China. ( Ib01a9 )

Version 1.2.0-alpha11

June 30, 2021

androidx.wear:wear:1.2.0-alpha11 is released. Version 1.2.0-alpha11 contains these commits.

رفع اشکالات

  • Fixed bug where horizontally scrolling RecyclerViews caused WearableDrawerLayout to peek on all interactions. ( I24c7f )

Version 1.2.0-alpha10

۲ ژوئن ۲۰۲۱

androidx.wear:wear:1.2.0-alpha10 is released. Version 1.2.0-alpha10 contains these commits.

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

  • Alpha10 improves accessibility support in Curved Text and ArcLayouts. It also add some minor renaming of in the DismissibleFrameLayout to help clarify the API.

API Changes

  • We have renamed following methods in DismissibleFrameLayout ( Ib195e ):
    • Callback#onDismissed -> Callback#onDismissedFinished
    • isSwipeDismissible -> isDismissableBySwipe
    • isBackButtonDismissible -> isDismissableByBackButton
  • We have made following methods final ( Ib195e ):
    • setBackButtonDismissible
    • setSwipeDismissible
    • registerCallback
    • unregisterCallback

رفع اشکالات

  • Use the content of the CurvedTextView on Talkback. ( I05798 )
  • Better accessibility for normal views in an ArcLayout. ( I4418d )

Version 1.2.0-alpha09

۱۸ مه ۲۰۲۱

androidx.wear:wear:1.2.0-alpha09 is released. Version 1.2.0-alpha09 contains these commits.

API Changes

  • Added a new function CurvedTextView.setTypeface() (similar to TextView 's), to set the text typeface and bold/italics style. ( I4653c )
  • Renamed WearArcLayout to ArcLayout , WearCurvedText to CurvedText and WearArcLayout.ArcLayoutWidget to ArcLayout.Widget . ( I6e5ce )
    • On ArcLayout.Widget , renamed getThicknessPx into getThickness .
    • Vertical alignment constants on ArcLayout.LayoutParams are now named starting with VERTICAL_ALIGN_ (instead of the previous VALIGN_ )
  • On CurvedTextView , the methods setMinSweepDegrees and setMaxSweepDegrees were replaced by setSweepRangeDegrees ( I7a9d9 )

Version 1.2.0-alpha08

۵ مه ۲۰۲۱

androidx.wear:wear:1.2.0-alpha08 is released. Version 1.2.0-alpha08 contains these commits.

API Changes

  • To improve code clarity, we added @FloatRange annotations to some angle parameters and return types. ( I430dd )
  • In the interface WearArcLayout.ArcLayoutWidget , the method insideClickArea is now called isPointInsideClickArea. ( Ia7307 )

Version 1.2.0-alpha07

March 24, 2021

androidx.wear:wear:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

رفع اشکالات

  • Fixing errors with non-curved children inside of WearArcLayout caused by using screen size with height bigger than width. These non-curved children are now correctly placed inside of an arc on all screen types.

Version 1.2.0-alpha06

۲۷ ژانویه ۲۰۲۱

androidx.wear:wear:1.2.0-alpha06 is released. Version 1.2.0-alpha06 contains these commits.

API Changes

  • Migrate the Ongoing Activities library to a new sub-library: wear-ongoing. Classes now live in the androidx.wear.ongoing package (previously was androidx.wear.ongoingactivities) ( I7c029 )
  • Migrate WearableCalendarContract class from Wearable Support Library to AndroidX. This API provides a subset of the data available through CalendarContract , but is automatically synced to wearable devices. ( I6f2d7 )

رفع اشکالات

  • Disable the back button dismiss feature by default in Dismissible FrameLayout since swipe-to-dismiss remains as the main way to navigate back a full screen on Wearable devices ( Ic24e3 )
  • Fixed some issues handling children visibility on WearArcLayout ( Icf912 )

Version 1.2.0-alpha05

۱۳ ژانویه ۲۰۲۱

androidx.wear:wear:1.2.0-alpha05 is released. Version 1.2.0-alpha05 contains these commits.

رفع اشکالات

  • Update the javadoc of AmbientModeSupport class to provide sample snippets to better demonstrate the general use of this class.

Version 1.2.0-alpha04

۱۶ دسامبر ۲۰۲۰

androidx.wear:wear:1.2.0-alpha04 is released. Version 1.2.0-alpha04 contains these commits.

API Changes

  • Added support for indicating that an Activity can be “auto-resumed” when the device leaves ambient mode in the AmbientModeSupport class. This functionality was previously available in the deprecated WearableActivity class from WearableSupportLibrary. ( I336ab )
  • OngoingActivity
    • Category can now be set when creating an OngoingActivity, eg OngoingActivitiy.Builder.getCategory(String)
    • OngoingActivityData now has a timestamp of when the OngoingActivity was built - OngoingActivityData.getTimestamp()
    • ( I91cb4 )
  • Added support for setting margins on children of WearArcLayout by changing the layout params to extend MarginLayoutParams, ie WearArcLayout.LayoutParams extends android.view.ViewGroup.MarginLayoutParams. ( I2cd88 )
  • Change WearCurvedTextView's anchor type default to WearArcLayout.ANCHOR_CENTER (was WearArcLayout.ANCHOR_START ). This simplifies the contract between the arc layout and the curved text as the curved text by default draws itself x-centered at the top, and the parent arc layout can rotate it to where it needs to be. ( I105ff )

Version 1.2.0-alpha03

December 2, 2020

androidx.wear:wear:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

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

A new layout container DismissibleFrameLayout, which handles back-button-dismiss and/or swipe-to-dismiss, intended for use within an activity. At least one listener must be added to act on a dismissal action. A listener will typically remove a containing view or a fragment from the current activity. setSwipeDismissible(boolean) & setBackButtonDismissible(boolean) are provided for direct control over the features. This new layout is meant to replace the existing SwipeDismissFrameLayout.

Curved widgets now handle touch events. Normal widgets inside an WearArcLayout will receive all touch events, mapped to their coordinate space. WearCurvedTextView (inside an WearArcLayout or not) can set onClick and onLongClick handlers.

Ongoing activities classes are now VersionedParcelables instead of using custom serialization/deserialization. The static icon and touch intent are now required.

API Changes

  • The attribute "sweepDegrees" for WearCurvedTextView is separated into minSweepDegrees and maxSweepDegrees to give a more flexible layout of this widget.

Version 1.2.0-alpha02

November 11, 2020

androidx.wear:wear:1.2.0-alpha02 is released. Version 1.2.0-alpha02 contains these commits.

This release adds a new “Ongoing Activities API” for the first time. This API can be used by developers to signal that a long running activity, such as a fitness exercise or a media playback session is on-going. It allows developers to provide periodic status updates such as “distance and time run” or “current track playing” for display on the watch face or in the app launcher. This functionality is targeted at future devices with the on-going activity functionality enabled.

API Changes

  • New API for Ongoing Activities, this is a no-op on "unsupported devices.". ( I69a31 )

Version 1.2.0-alpha01

۲۸ اکتبر ۲۰۲۰

androidx.wear:wear:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.

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

  • Added WearCurvedTextView component for easily writing curved text following the curvature of the largest circle that can be inscribed in the view. An usage example:
<androidx.wear.widget.WearCurvedTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="example curved text"
        app:anchorAngleDegrees="180"
        app:anchorPosition="center"
        app:clockwise="false"
        style="@android:style/TextAppearance.Large"
/>

An example of curved text in Android Wear

  • Added WearArcLayout container for laying out its child elements one by one on an arc in either the clockwise or counterclockwise direction. Its children can be both standard android widget or "curved" widgets which implement its ArcLayoutWidget interface. An usage example:
<androidx.wear.widget.WearArcLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:anchorPosition="center">
      <ImageView
              android:layout_width="20dp"
              android:layout_height="20dp"
              android:src="@drawable/ic_launcher"
      />
      <androidx.wear.widget.WearCurvedTextView
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:text="Curved Text"
              style="@android:style/TextAppearance.Small"
              android:padding="2dp"
       />
  </androidx.wear.widget.WearArcLayout>

An example of arch text in Android Wear

( I536da )

Wear-Input 1.2

نسخه ۱.۲.۰

۱۰ سپتامبر ۲۰۲۵

androidx.wear:wear-input:1.2.0 and androidx.wear:wear-input-testing:1.2.0 are released. Version 1.2.0 contains these commits .

Important changes since 1.1.0:

  • Exposed physical button location constants.
  • Added WearableRemoteInputExtender for setting Wear-specific extras on android.app.RemoteInput (for example, enabling Emoji input)

Version 1.2.0-rc01

۲۷ آگوست ۲۰۲۵

androidx.wear:wear-input:1.2.0-rc01 and androidx.wear:wear-input-testing:1.2.0-rc01 are released with no changes since the last beta. Version 1.2.0-rc01 contains these commits .

Version 1.2.0-beta01

۳۰ ژوئیه ۲۰۲۵

androidx.wear:wear-input:1.2.0-beta01 and androidx.wear:wear-input-testing:1.2.0-beta01 are released with no notable changes since the last alphas. Version 1.2.0-beta01 contains these commits .

Version 1.2.0-alpha04

۱۶ ژوئیه ۲۰۲۵

androidx.wear:wear-input:1.2.0-alpha04 and androidx.wear:wear-input-testing:1.2.0-alpha04 are released. Version 1.2.0-alpha04 contains these commits .

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

  • Account for screen rotation when calculating the location of physical buttons relative to the screen. ( 87a57e )

API Changes

  • Rename LOC * to LOCATION * in wear-input. ( I5e879 )

رفع اشکالات

  • This library now uses JSpecify nullness annotations , which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict , -Xtype-enhancement-improvements-strict-mode ( Icbfb9 , b/326456246 )

Version 1.2.0-alpha02

۲۹ سپتامبر ۲۰۲۱

androidx.wear:wear-input:1.2.0-alpha02 and androidx.wear:wear-input-testing:1.2.0-alpha02 are released. Version 1.2.0-alpha02 contains these commits.

API Changes

  • Renamed disallowEmoji to setEmojisAllowed in WearableRemoteInputExtender to use to set whether the option to draw emojis will be shown. ( I28393 )

Version 1.2.0-alpha01

September 15, 2021

androidx.wear:wear-input:1.2.0-alpha01 and androidx.wear:wear-input-testing:1.2.0-alpha01 are released. Version 1.2.0-alpha01 contains these commits.

API Changes

  • Exposed all button location constants from WearableButtons . ( Ibb12c )
  • Added WearableRemoteInputExtender class that can be used for adding Wear-specific extras to the android.app.RemoteInput. ( I01903 )

Wear-Input 1.1.0

نسخه ۱.۱.۰

August 18, 2021

androidx.wear:wear-input:1.1.0 and androidx.wear:wear-input-testing:1.1.0 are released. Version 1.1.0 contains these commits.

Important changes since 1.0.0

  • Added RemoteInputIntentHelper .
    • This class can be used to build a RemoteInput Intent. This can then be used to request input from your users in a customisable activity.

Version 1.1.0-rc01

August 4, 2021

androidx.wear:wear-input:1.1.0-rc01 and androidx.wear:wear-input-testing:1.1.0-rc01 are released. Version 1.1.0-rc01 contains these commits.

No API Changes since androidx.wear:wear-input:1.1.0-beta01 and androidx.wear:wear-input-testing:1.1.0-beta01

Version 1.1.0-beta01

July 21, 2021

androidx.wear:wear-input:1.1.0-beta01 and androidx.wear:wear-input-testing:1.1.0-beta01 are released with no changes since 1.1.0-alpha03 . Version 1.1.0-beta01 contains these commits.

Version 1.1.0-alpha03

June 30, 2021

androidx.wear:wear-input:1.1.0-alpha03 and androidx.wear:wear-input-testing:1.1.0-alpha03 are released. Version 1.1.0-alpha03 contains these commits.

رفع اشکالات

  • Fixed bug which caused RemoteInput intents, which had RemoteInput s added to them via RemoteInputHelper.putRemoteInputsExtra , to be rejected.

Version 1.1.0-alpha02

۱۸ مه ۲۰۲۱

androidx.wear:wear-input:1.1.0-alpha02 and androidx.wear:wear-input-testing:1.1.0-alpha02 are released. Version 1.1.0-alpha02 contains these commits.

API Changes

  • RemoteInputIntentHelper 's methods that are used for getting or putting extras that represent title, cancel, confirm, and in progress labels are now using CharSequence instead of String for these labels. ( I0e71f )

Version 1.1.0-alpha01

۲۷ ژانویه ۲۰۲۱

androidx.wear:wear-input:1.1.0-alpha01 and androidx.wear:wear-input-testing:1.1.0-alpha01 are released. Version 1.1.0-alpha01 contains these commits.

API Changes

  • Migrate RemoteInputIntent class from Wearable Support Library to AndroidX. The migrated class is renamed as RemoteInputIntentHelper which provides helper functions for supporting remote inputs through starting an intent. ( I47cee )

Wear-Input 1.0.0

Version 1.0.0

December 2, 2020

androidx.wear:wear-input:1.0.0 and androidx.wear:wear-input-testing:1.0.0 are released. Version 1.0.0 contains these commits.

This release is identical to 1.0.0-rc01 .

Major features of 1.0.0

  • Migration of WearableButtons functionality from Wearable Support Library to Jetpack.

  • Added androidx.wear.input.test.TestWearableButtonsProvider which implements androidx.wear.input.WearableButtonsProvider to aid testing applications developed with androidx.wear:wear-input library.

Version 1.0.0-rc01

November 11, 2020

androidx.wear:wear-input:1.0.0-rc01 and androidx.wear:wear-input-testing:1.0.0-rc01 are released. Version 1.0.0-rc01 contains these commits.

This release is identical to 1.0.0-beta01 .

Version 1.0.0-beta01

۲۸ اکتبر ۲۰۲۰

androidx.wear:wear-input:1.0.0-beta01 and androidx.wear:wear-input-testing:1.0.0-beta01 are released with no changes since 1.1.0-alpha01 . Version 1.0.0-beta01 contains these commits.

Wear-Input-Testing Version 1.0.0-alpha01

October 14, 2020

androidx.wear:wear-input-testing:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.

API Changes

  • Added androidx.wear.input.test.TestWearableButtonsProvider which implements androidx.wear.input.WearableButtonsProvider to aid testing applications developed with androidx.wear:wear-input library. ( I0ed0c )

Wear-Input Version 1.0.0-alpha01

September 2, 2020

androidx.wear:wear-input:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.

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

Migration of WearableButtons functionality from Wearable Support Library to Jetpack. Additional testing support will be provided in androidx.wear:wear-input-testing library in the next Jetpack release.

نسخه ۱.۱.۰

نسخه ۱.۱.۰

October 14, 2020

androidx.wear:wear:1.1.0 is released. Version 1.1.0 contains these commits.

Major changes since 1.0.0

  • Added a layout_ prefix to boxedEdges attribute (now layout_BoxedEdges ) for BoxInsetLayout in order to comply with android naming convention. This will remove the linter error in Android Studio for these attributes. ( I4272f )
  • Added optional EXTRA_ANIMATION_DURATION_MILLIS to ConfirmationActivity to allow for the duration that the confirmation dialog is displayed. ( adb83ce , b/143356547 )
  • Updated WearableActionDrawView to delay action drawer inflation until the drawer is opened for the first time. ( I01026 , b/163870541 )

Version 1.1.0-rc03

September 2, 2020

androidx.wear:wear:1.1.0-rc03 is released. Version 1.1.0-rc03 contains these commits.

رفع اشکالات

  • Fixed issue with Action Drawer not showing content when it is opened. ( I01026 , b/163870541 )

Version 1.1.0-rc02

June 24, 2020

androidx.wear:wear:1.1.0-rc02 is released. Version 1.1.0-rc02 contains these commits.

رفع اشکالات

  • Added a layout_ prefix to boxedEdges attribute (now layout_boxedEdges ) for BoxInsetLayout in order to comply with android naming convention. This will remove the linter error in Android Studio for these attributes.

Version 1.1.0-rc01

۱۴ مه ۲۰۲۰

androidx.wear:wear:1.1.0-rc01 is released with no changes since .1.0-beta01 . Version 1.1.0-rc01 contains these commits.

Version 1.1.0-beta01

۲۹ آوریل ۲۰۲۰

androidx.wear:wear:1.1.0-beta01 is released with no changes since androidx.wear:wear:1.1.0-alpha01 . Version 1.3.0-beta01 contains these commits.

Version 1.1.0-alpha01

۱۵ آوریل ۲۰۲۰

androidx.wear:wear:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

API Changes

  • Added optional EXTRA_ANIMATION_DURATION_MILLIS to ConfirmationActivity to allow for the duration that the confirmation dialog is displayed. ( adb83ce , 134523c , b/143356547 )

رفع اشکالات

  • Updated WearableActionDrawView to delay action drawer inflation until the drawer is opened for the first time. ( 5cd32f7 )