پوشیدن طرح اولیه

این کتابخانه امکان تعریف مجموعه‌ای از طرح‌بندی‌های رابط کاربری و عبارات غیر UI را برای رندر/ارزیابی روی سطوح از راه دور فراهم می‌کند.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
26 فوریه 2025 1.2.1 - - 1.3.0-alpha09

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

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

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

شیار

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation "androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04"

    // Use to implement support for Wear ProtoLayout
    implementation "androidx.wear.protolayout:protolayout:1.3.0-alpha04"

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation "androidx.wear.protolayout:protolayout-material:1.3.0-alpha04"
}

کاتلین

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation("androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04")

    // Use to implement support for Wear ProtoLayout
    implementation("androidx.wear.protolayout:protolayout:1.3.0-alpha04")

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation("androidx.wear.protolayout:protolayout-material:1.3.0-alpha04")
}

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

بازخورد

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

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

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

نسخه 1.3

نسخه 1.3.0-alpha09

26 فوریه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha09 منتشر شد. نسخه 1.3.0-alpha09 حاوی این commit ها است.

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

  • اصلاح‌کننده‌های آزمایشی برای enterTransition و exitTransition اضافه شد ( I4a4d6 )
  • برای دریافت وضعیت نمایان بودن چیدمان کامل، هر زمان که تغییر کرد، پیوند پلت فرم اضافی اضافه کرده ایم. ( I250c3 )
  • برای ارزیابی مقادیر پویا، اجازه تزریق داده‌های وضعیت برنامه و پلتفرم آزمایشی به LayoutElementAssertionsProvider را بدهید. ( Ib5fcb )
  • فیلترهای گوشه ای را به کتابخانه آزمایشی طرح اولیه ( Ie2361 ) اضافه کنید
  • ButtonColors ، CardColors و ProgressIndicatorColors اکنون از روش کپی پشتیبانی می‌کنند و برخی از پارامترها را به صورت اختیاری لغو می‌کند. ( Ie2054 )

تغییرات API

  • پشتیبانی از اتصال داده های پویا را به کتابخانه آزمایشی اضافه کنید ( Ib98de )
  • با حذف همپوشانی imageButton هنگام استفاده با عملکرد backgroundImage برطرف کنید. علاوه بر این، به تابع backgroundImage اجازه دهید تا برای رنگ همپوشانی null مشخص شود، به این معنی که همپوشانی اعمال نخواهد شد. ( Ibec3c )

رفع اشکال

  • متد پیش‌فرض hasValueOfType برای پرتاب UnsupportedOperationException به جای IllegalArgumentException تغییر داد. ( Ia36c3 )
  • مقادیر نشانه رنگی پیش‌فرض به‌روزرسانی می‌شوند تا آخرین مشخصات را منعکس کنند. ( I75d44 )
  • رفع مشکل aliasing قابل مشاهده در خطوط قوس در رندر کاشی AndroidX. ( I88190 )

نسخه 1.3.0-alpha08

12 فوریه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha08 منتشر شد. نسخه 1.3.0-alpha08 حاوی این commit ها است.

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

  • پارامتر لیست FontSetting را برای متن Material3 اضافه کنید. ( IC102d )
  • کلاس DynamicDataMap اضافه شده است که StateBuilder اکنون برای API ایمن Kotlin از نوع بهتر برای حالت های برنامه پشتیبانی می کند ( I012ba )
  • اضافه شدن روش های کارخانه ای مانند intAppDataKey برای ایجاد آسان تر اشیاء AppDataKey ( Icea2a )
  • DynamicDataValue اکنون دارای یک متد hasValueOfType(Class<?>) علاوه بر متدهای hasInt/hasColor/ ... است ( I4f7a6 )
  • برای خطاهای با اولویت بالا یا اقدامات اضطراری مانند هشدارهای ایمنی، errorDim به Material3 ProtoLayout ColorScheme اضافه کرده‌ایم. ( Ia17bb )
  • هنگام دسترسی به تنظیمات کاهش حرکت جهانی، محافظی در برابر خرابی اضافه کرده‌ایم، که در برخی از پلتفرم‌هایی که این تنظیمات ارائه نشده بود، فعال شده است. ( I01e2c )

تغییرات API

  • addKeyToValueMapping به addToStateMap تغییر نام داده و متدهای DynamicDataMap.put به دلیل زائد بودن حذف می شوند. ( Ibe9dd )
  • Material3 Typography اکنون از محور متغیر گردی برای فونت های سیستمی که از این محور پشتیبانی می کنند پشتیبانی می کند. ProtoLayout FontSetting از محور گردی برای فونت هایی که از این محور پشتیبانی می کنند پشتیبانی می کند. ( I33eb5 )
  • تغییر نام multilineAlignment به تراز در روش متنی Material3. ( I2b66b )
  • نشانگر پیشرفت دایره ای را به نوع Box به روز کنید، همچنین mainContent در constructGraphic به نوع Box مشخص کنید ( I5a3dc )
  • پشتیبانی بهتر برای استفاده از نشانگر پیشرفت دایره ای در نمودار ( I039db )

رفع اشکال

  • مقادیر پویا را در ColorStop و همچنین برای زوایای شروع/پایان در SweepGradient مجاز کنید. ( I0146d )
  • Docs رفع می کند. ( I4a63a )
  • مؤلفه‌های Material 3 ( graphicCard و avatarButton ) به‌روزرسانی شد تا زمانی که ابعاد گسترش weight پشتیبانی نمی‌شود (به عنوان مثال زیر API 33) بازگشتی را ارائه دهد. هنگامی که TEXT_OVERFLOW_ELLIPSIZE توسط رندر پشتیبانی نمی‌شود، مؤلفه متنی به TEXT_OVERFLOW_ELLIPSIZE_END به‌روزرسانی شد. ( I19e2c )
  • به روز رسانی Docs برای PrimaryLayoutMargins . ( Ibaf7b )

نسخه 1.3.0-alpha07

29 ژانویه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha07 منتشر شد. نسخه 1.3.0-alpha07 حاوی این commit ها است.

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

  • اضافه شدن گزینه API برای تنظیم محرک های مختلف برای انیمیشن های Lottie. علاوه بر این، API اضافه شده برای راه‌اندازهایی که وقتی طرح‌بندی قابل مشاهده است فعال می‌شوند ( I8272d )
  • اصلاح کننده های border ، visibility و opacity اضافه شده است. ( I6d3dd )
  • دکمه آواتار به جزء ProtoLayout Material3 اضافه شد. ( Idb5ae )
  • اکنون اجازه می‌دهیم حاشیه‌ها (سمت کنار و در برخی موارد پایین) در primaryLayout سفارشی شوند. ( Ib22f6 )
  • نوع قطعه بندی شده نشانگر پیشرفت دایره ای را اضافه کنید. ( I6a648 )
  • مولفه دکمه فشرده به ProtoLayout Material3 اضافه شد. ( Ia3c5c )
  • دکمه شکل قرص و اجزای دکمه تصویر به ProtoLayout Material3 اضافه شد. ( Ifb88a )

تغییرات API

  • LayoutModfier.foldIn اکنون foldRight نامیده می شود تا رفتار مورد انتظار آن را بهتر منعکس کند ( Idf242 )
  • ماشه VisibleOnce اکنون آزمایشی است. ( Ib2d26 )
  • withOpacity از API عمومی حذف کنید زیرا یک جایگزین کتابخانه گرافیکی وجود دارد. ( I030c2 )
  • روش‌های سطح بالا را در LayoutString.kt و LayoutColor.kt تغییر نام داد تا نام‌های مناسب جاوا داشته باشند. ( I7aff0 )
  • تایپوگرافی های غیر ProtoLayout در Material3 حذف شد. ( Idd9ae )
  • اضافه کردن پسوند Color به فیلدهای *Colors در Material3. ( I2d114 )

رفع اشکال

  • پیاده سازی بازگشتی EdgeButton را برای رندرهای قدیمی بدون پشتیبانی از گوشه های نامتقارن اضافه کنید. ( I63364 )
  • پیاده سازی مجدد نشانگر پیشرفت دایره ای را با رندر قدیمی تر اضافه کنید. ( I0f134 )

نسخه 1.3.0-alpha06

15 ژانویه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha06 منتشر شد. نسخه 1.3.0-alpha06 حاوی این commit ها است.

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

  • LayoutColor برای پشتیبانی از هر دو نوع رنگ ثابت و پویا ( I4c89b )
  • مولفه textButton ProtoLayout Material3 اضافه شد. ( ID680d )
  • جزء iconButton ProtoLayout Material3 را اضافه کنید. ( Ica3f0 )
  • کامپوننت ظرف دکمه ProtoLayout Material3 اضافه شد. ( I17a38 )
  • اضافه شدن پشتیبانی از اصلاح کننده های معنایی Chainable به protolayout-material3 ( I4af62 )
  • اضافه شده ProtoLayout Material3 تک بخش CircularProgressIndicator ( I2c8a2 )
  • padding اضافه شده، اصلاح کننده های metadata ( I8720a )
  • background ، clip و اصلاح کننده های clickable اضافه شد ( I35478 )
  • LinearGradient به Brush اضافه کنید و اجازه دهید در Background Modifier استفاده شود. ( IC4dea )
  • اندازه کوچک را برای appCard و titleCard اضافه کنید. ( I91f98 )
  • جزء ProtoLayout Material3 graphicDataCard اضافه شد. ( I92be7 )
  • اضافه شدن ProtoLayout Material3 iconDataCard و اجزای textDataCard . ( I4e1e4 )
  • کامپوننت ProtoLayout Material3 appCard اضافه شد. ( ID4c57 )
  • Abstract EdgeButtonColors به ButtonColors . ( I83624 )
  • اضافه شده ProtoLayout Material3 جزء titleCard . ( I2dc72 )

تغییرات API

  • ProtoLayout Material3 API اکنون LayoutString برای پشتیبانی از متون استاتیک و پویا می پذیرد. ( I9c24a )

رفع اشکال

  • اضافه کردن اجرای رندر برای باد کردن DashedArcLine ( I0c700 )
  • تغییر رندر برای اجازه دادن به ArcSpacer برای گرفتن طول dp. ( I1437b )

نسخه 1.3.0-alpha05

11 دسامبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha05 منتشر شد. نسخه 1.3.0-alpha05 حاوی این تعهدات است.

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

  • LayoutString برای پشتیبانی از فیلدهای رشته طرح بندی قابل اتصال اضافه شده است. ( Ida650 )
  • کامپوننت ظرف کارت ProtoLayout Material3 اضافه شد. ( IC985a )

رفع اشکال

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

نسخه 1.3.0-alpha04

13 نوامبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha04 منتشر شد. نسخه 1.3.0-alpha04 حاوی این commit ها است.

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

  • شکل Material3 به‌روزرسانی شد تا یک کلاس با فیلدهایی باشد که مقدار واقعی Corner را دارند، مانند Wear Compose. ( Ied8cd )
  • رنگ‌های Material3 به‌روزرسانی شد تا مفهوم ColorScheme نیز در بر بگیرد، مانند Wear Compose. ( If645e )
  • چندین تطبیق معمولی را به کتابخانه آزمایشی اضافه کنید. ( Ie5cec )

نسخه 1.3.0-alpha03

30 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha03 منتشر شد. نسخه 1.3.0-alpha03 حاوی این تعهدات است.

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

  • LayoutElementAssertionsProvider ، LayoutElementAssertion و LayoutElementMatcher را به کتابخانه آزمایشی اضافه کنید ( Id1110 )

نسخه 1.3.0-alpha02

16 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha02 منتشر شد. نسخه 1.3.0-alpha02 حاوی این commit ها است.

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

  • نسخه اولیه کتابخانه Material 3. شامل اجزای text ، edgeButton ، buttonGroup و primaryLayout است.

رفع امنیتی

  • با توجه به این تغییر ، androidx در برابر protobuf 4.28.2 به منظور آدرس دهی CVE-2024-7254 کامپایل می شود. وابستگی خود را به نسخه 1.3.0-alpha01 androidx.wear.protolayout:protolayout-proto و androidx.wear.protolayout:protolayout-external-protobuf به 1.3.0-alpha02 ارتقا دهید تا خطر آسیب پذیری را برطرف کنید.

مشارکت خارجی

نسخه 1.3.0-alpha01

2 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha01 منتشر شد. نسخه 1.3.0-alpha01 حاوی این تعهدات است.

رفع اشکال

  • روشن شد که در دسترس بودن نام خانواده فونت Roboto و Roboto Flex به دستگاه بستگی دارد. ( I193be )
  • خانواده فونت Roboto Flex در رندر کاشی AndroidX فعال شد. ( I08e94 )

نسخه 1.2

نسخه 1.2.1

16 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.2.1 منتشر شد. نسخه 1.2.1 حاوی این commit ها است.

رفع امنیتی

  • با توجه به این تغییر ، androidx در برابر protobuf 4.28.2 به منظور آدرس دهی CVE-2024-7254 کامپایل می شود. وابستگی خود را به نسخه 1.2.0 androidx.wear.protolayout:protolayout-proto و androidx.wear.protolayout:protolayout-external-protobuf به 1.2.1 ارتقا دهید تا خطر آسیب پذیری را برطرف کنید.

نسخه 1.2.0

7 آگوست 2024

androidx.wear.protolayout:protolayout-*:1.2.0 منتشر شد. نسخه 1.2.0 شامل. این متعهد شدن .

تغییرات مهم از 1.1.0

  • FontStyle برای پشتیبانی از فونت اضافی برای محورهای متغیر و API انتخاب فونت بهتر برای پشتیبانی از فونت‌های Flex به روز شده است.
  • پشتیبانی از اصلاح کننده های اضافی:
    • اصلاح‌کننده تبدیل، ترجمه، چرخش و مقیاس‌بندی را با یا بدون انیمیشن ارائه می‌دهد.
    • تعیین مقادیر مختلف (افقی و عمودی) برای هر شعاع گوشه.
  • با گسترش ناحیه قابل لمس هر عنصری که از اصلاح کننده قابل کلیک استفاده می کند، دسترسی به همه اهداف لمسی را به حداقل 48dp در 48dp افزایش می دهد.
  • PrimaryLayout و EdgeContentLayout را با افزودن setResponsiveContentInsetEnabled برای پشتیبانی بهتر از رفتار پاسخگوی این طرح‌بندی‌ها در اندازه‌های مختلف صفحه و بهبود سازگاری کاشی‌ها، بهبود بخشید.
  • مقیاس‌بندی/عدم مقیاس‌پذیری متن مواد برای مقیاس‌بندی فونت غیرخطی Android 14 بهبود یافته است.
  • پشتیبانی بهبود یافته برای جهت طرح RTL در تمام عناصر قوس.

تغییرات اضافی

نسخه 1.2.0-rc01

24 جولای 2024

androidx.wear.protolayout:protolayout-*:1.2.0-rc01 منتشر شد. نسخه 1.2.0-rc01 حاوی این commit ها است.

رفع اشکال

  • ما تراشه استاندارد مواد را تعمیر کرده‌ایم، بنابراین فقط در صورتی می‌توان از آن به عنوان نماد استفاده کرد که هیچ یک از برچسب‌های اولیه یا ثانویه وارد نشده باشد. ( Iceef9 )
  • اسناد برای طرح‌بندی مواد به‌روزرسانی شده است تا تصاویری از صفحه مربوطه را برای درک آسان‌تر طرح‌بندی‌ها شامل شود. ( I0256a )

نسخه 1.2.0-beta01

10 جولای 2024

androidx.wear.protolayout:protolayout-*:1.2.0-beta01 منتشر شد. نسخه 1.2.0-beta01 حاوی این تعهدات است.

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

نسخه 1.2.0-beta01 Wear ProtoLayout نشان می‌دهد که این نسخه از کتابخانه کامل شده است و API قفل شده است (به جز مواردی که به عنوان آزمایشی علامت‌گذاری شده‌اند). Wear ProtoLayout 1.2 شامل عملکردها و APIهای جدید زیر است:

  • FontStyle به‌روزرسانی شده است تا از فونت‌های اضافی پشتیبانی کند:
    • تنظیم تنظیمات مختلف فونت مانند FontSetting.weight و FontSetting.width
    • تنظیم عرض یکسان برای همه کاراکترهای عددی - اعداد جدولی (تنظیم ویژگی فونت FontSetting.tnum )
    • APIهای انتخاب فونت بهبود یافته برای پشتیبانی از فونت‌های انعطاف‌پذیر آینده با تعیین نام‌های خانواده فونت ترجیحی برای استفاده.
  • اصلاح کننده Extended Corner برای پشتیبانی از تعیین هر CornerRadius با مقادیر افقی و عمودی جداگانه برای اجازه دادن به عناصر ساختمان با گوشه های نامتقارن.
  • یک اصلاح‌کننده Transformation جدید اضافه شد که ترجمه، چرخش و مقیاس‌بندی LayoutElement را ارائه می‌دهد. این تبدیل ها را می توان با استفاده از مقادیر پویا متحرک کرد.
  • افزودن setArcDirection با گزینه‌های Clockwise ، CounterClockwise و Normal به تمام عناصر قوس ( Arc ، ArcLine و ArcText ) برای پشتیبانی بهتر در جهت‌های طرح‌بندی مختلف (مانند LTR و RTL).
  • با گسترش ناحیه قابل لمس هر عنصری که از اصلاح کننده Clickable استفاده می کند، دسترسی به همه اهداف لمسی را به حداقل 48dp در 48dp افزایش می دهد.
  • PrimaryLayout و EdgeContentLayout را با افزودن setResponsiveContentInsetEnabled برای پشتیبانی بهتر از رفتار پاسخگوی این طرح‌بندی‌ها در اندازه‌های مختلف صفحه و بهبود سازگاری کاشی‌ها، بهبود بخشید. برای پیشنهاد استفاده از این APIها با یک راه حل سریع، هشدار لینتر اضافه شده است.
  • مقیاس‌بندی/عدم مقیاس‌پذیری Text مواد برای مقیاس‌بندی فونت غیرخطی Android 14 بهبود یافته است.

تغییرات API

  • نام خانوادگی فونت پیش‌فرض ( DEFAULT_SYSTEM_FONT ) حذف می‌شود، زیرا از استفاده نکردن از preferredFontFamilies API استفاده می‌شود. ( I39dab )
  • پارامتر ارسال شده به FontSetting.width باید مثبت باشد. ( I1266f )

نسخه 1.2.0-alpha05

26 ژوئن 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha05 منتشر شد. نسخه 1.2.0-alpha05 حاوی این تعهدات است.

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

  • روش hasText را به Material.CompactChip اضافه کنید تا بررسی کنید که آیا محتوای متن تنظیم شده است یا خیر. ( I6e8fc )

تغییرات API

  • اجزای FontFamily به جای کلاس Builder در FontStyle منتقل می شوند. ( I06ced )
  • FontSetting.weight و FontSetting.width API را به‌روزرسانی کنید تا حاشیه‌نویسی Range را در بر بگیرد و پارامتر وزن را به int تغییر دهید. ( Ia726c )

رفع اشکال

  • متن‌های غیر مقیاس‌پذیر در کتابخانه Material اکنون با مقیاس‌بندی فونت غیرخطی Android 14 به درستی کار می‌کنند. ( I6601e )

نسخه 1.2.0-alpha04

29 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha04 منتشر شد. نسخه 1.2.0-alpha04 حاوی این commit ها است.

تغییرات API

  • API گوشه های نامتقارن را اضافه کرد تا بتوان شعاع هر گوشه را با 2 مقدار به طور جداگانه مشخص کرد. ( Icbd69 )
  • FontSetting API را گسترش داد تا شامل موارد زیر باشد:
    • تنظیم ویژگی فونت مانند تنظیم فونت به صورت جدولی. ( If12b7 )
    • تنظیم تنوع فونت مانند تنظیم عرض سفارشی برای فونت های متغیر. ( I2b36d )
  • API خانواده فونت را به FontStyle اضافه کرد تا امکان تعیین لیست ترتیبی از خانواده‌های فونت‌هایی که باید استفاده شوند. ( Iba9f5 )
  • ثابت‌های تغییر نام برای ارتفاع فاصله بین محتوا و برچسب ثانویه در Material's LayoutDefaults که در ابتدا با پیشوند «محتوای لبه» به‌عنوان عمومی‌تر بودند، زیرا می‌توان آن‌ها را هم برای PrimaryLayout و هم EdgeContentLayout اعمال کرد. ( I4dc32 )

رفع اشکال

  • تغییر نام برای محورهای قلم متغیر از axisName به axisTag . ( I02ba3 )

نسخه 1.2.0-alpha03

14 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha03 منتشر شد. نسخه 1.2.0-alpha03 حاوی این commit ها است.

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

  • API برای تنظیم مقادیر وزن سفارشی برای FontStyle اضافه شد. ( I7390a )

رفع اشکال

  • رفع خطا در getTouchDelegateInfo به دلیل خالی بودن نقشه هدف. ( I2accf )

نسخه 1.2.0-alpha02

1 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha02 منتشر شد. نسخه 1.2.0-alpha02 حاوی این تعهدات است.

تغییرات API

  • ما برای غیرفعال کردن بازخورد ریپل در عناصر تکی قابل کلیک پشتیبانی اضافه کرده ایم. ( If1ede )
  • API برای تبدیل از ArcModifiers حذف شده است زیرا آنها از این ویژگی پشتیبانی نمی کنند ( Ic0827 )
  • ArcDirectionProp Builder اکنون مقداری را در سازنده انتظار دارد. ( I76ada )
  • متد PlatformDataValues.Builder.putAll امکان ادغام یک PlatformDataValue را با دیگری فراهم می کند. ( I50ba3 )
  • Text#setIsScalable به Text#setScalable تغییر نام داد. ( If920e )
  • متن متریال می‌تواند تعیین کند که از اندازه مقیاس‌پذیر استفاده شود (وقتی اندازه فونت کاربر تغییر می‌کند رشد می‌کند) یا خیر. ( IBC849 )
  • ما گزینه تنظیم توضیحات محتوا را به TitleChip اضافه کرده ایم. ( I5d21f )
  • CompactChip ثابت کرد تا فقط با نماد به درستی کار کند و API را برای اجازه دادن به این گزینه به روز رسانی کند. ( I6589e )

رفع اشکال

  • مشکل داده‌های پلتفرم تکراری احتمالی در طول اولیه‌سازی برطرف شد. ( Iba0fd )
  • یک گیرنده جدید به DynamicDataNode برای بازیابی هزینه گره معرفی کنید. هزینه هنگام به دست آوردن سهمیه گره پویا استفاده می شود. در حال حاضر، گره هایی با مقادیر ثابت دارای هزینه 0 خواهند بود، تمام گره های دیگر هزینه 1 خواهند داشت. ( Ia33e1 )
  • منطق شمارش را از NO_OP_QUOTA_MANAGER حذف کنید. ( Ib50b8 )
  • یک قانون پرز اضافه کرده‌ایم تا هنگام استفاده از PrimaryLayout بدون setResponsiveContentInsetEnabled هشداری را گزارش کنیم و یک راه حل سریع ارائه دهیم. ( I12025 )
  • محدودیتی برای تعدادی گره بیان پویا وجود دارد. ( Iffae8 )

نسخه 1.2.0-alpha01

6 مارس 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha01 منتشر شد. نسخه 1.2.0-alpha01 حاوی این commit ها است.

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

  • عناصر ProtoLayout Arc اکنون این گزینه را دارند که ArcDirection ( Clockwise ، Counterclockwise یا Normal ) را به آن اضافه کنند. افزودن این رفتار به Arc ، ArcLine یا ArcText رفتار آنها را در طرح‌بندی‌های RTL اصلاح می‌کند. ( I90699 )
  • EdgeContentLayout با یک تنظیم‌کننده جدید setResponsiveContentInsetEnabled به‌روزرسانی شده است تا با داشتن برچسب اولیه در مکان ثابت در بالا و درونی پاسخگو برای برچسب‌ها، به هم‌ترازی بهتر با دستورالعمل‌های UX، سازگاری در کاشی‌ها دست یابد. ( I60175 )
  • ما PrimaryLayout.setResponsiveContentInsetEnabled را اضافه کرده‌ایم که به برچسب اصلی، برچسب ثانویه و تراشه پایینی در این طرح‌بندی، ورودی پاسخگو اضافه می‌کند تا از خارج شدن آن محتوا از لبه صفحه جلوگیری شود. ( I0c457 )
  • روشی را برای حذف حاشیه های بیرونی از CircularProgressIndicator اضافه می کند تا بتوان از آن به عنوان یک جزء کوچکتر استفاده کرد. ( I55c06 )

تغییرات API

  • رندر کاشی‌ها اکنون به‌طور پیش‌فرض، بدون داشتن گزینه‌ای برای گنجاندن آن، فونت را روی تمام عناصر متنی حذف می‌کند. ( I3e300 )

رفع اشکال

  • رفع مشکل تراز متن زمانی که بیضی، فاصله حروف و تراز وسط همه در متن استفاده می شود. ( I716c7 )
  • یک راه حل برای مشکل ترسیم قوس اسکی اضافه کنید. ( I08f09 )
  • جهت طراحی ArcLine را برای طرح‌بندی‌های RTL اصلاح کنید. ( I6c141 )

نسخه 1.1

نسخه 1.1.0

7 فوریه 2024

androidx.wear.protolayout:protolayout-*:1.1.0 منتشر شد. نسخه 1.1.0 حاوی این commit ها است.

تغییرات مهم از 1.0.0

  • پشتیبانی از گرادیان و نمایش بهتر طول های بزرگتر از 360 درجه در ArcLine .
  • قالب بندی تاریخ-زمان از مناطق زمانی مختلف برای انواع داده های پویا پشتیبانی می کند.
  • گزینه های بهتری برای اندازه گیری خودکار و بیضی کردن متن برای مدیریت متن کوتاه شده.
  • Spacer از ابعاد گسترده با وزن اختیاری پشتیبانی می کند.
  • حاشیه نویسی مورد نیاز نسخه طرحواره برای همه APIهای ProtoLayout .
  • منطقه هدف را به هر عنصر Clickable تا 48 dp x 48 dp گسترش داد تا نیازهای دسترسی را برآورده کند.
  • padding فونت به طور پیش‌فرض خاموش است و تنها رفتاری است که در تمام عناصر متن و اجزای متریال حاوی متن وجود دارد.

تغییرات اضافی

نسخه 1.1.0-rc01

24 ژانویه 2024

androidx.wear.protolayout:protolayout-*:1.1.0-rc01 منتشر شد. نسخه 1.1.0-rc01 حاوی این commit ها است.

رفع اشکال

  • PlatformTimeUpdateNotifierImpl بلافاصله پس از فعال کردن به روز رسانی علامت می دهد. ( I77145 )
  • CircularProgressIndicator برای طرح‌بندی‌های RTL ثابت شده است. از این به بعد در همه موارد در جهت عقربه های ساعت حرکت می کند. ( I95ee3 )
  • یک راه حل برای مشکل ترسیم قوس اسکی اضافه کنید. ( I08f09 )

نسخه 1.1.0-beta01

10 ژانویه 2024

androidx.wear.protolayout:protolayout-*:1.1.0-beta01 منتشر شد. نسخه 1.1.0-beta01 حاوی این تعهدات است.

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

نسخه 1.1.0-beta01 Wear ProtoLayout نشان می دهد که این نسخه از کتابخانه کامل شده است و API قفل شده است (به جز مواردی که به عنوان آزمایشی علامت گذاری شده است). Wear ProtoLayout 1.1 شامل عملکردها و APIهای جدید زیر است:

  • ArcLine اکنون با اضافه کردن Brush با SweepGradient و داشتن یک سایه روی درپوش برای نمایش بهتر طول بزرگتر از 360 درجه با افزودن Shadow در StrokeCap ​​موجود، از گرادیان پشتیبانی می کند.
  • DynamicInstant از قالب بندی تاریخ-زمان منطقه ای پشتیبانی می کند. DynamicInstant و DynamicDuration می توان به عنوان انواع داده های حالت یا پلت فرم استفاده کرد.
  • ویژگی اندازه‌گیری خودکار برای اندازه متن که امکان تنظیم اندازه‌های متعدد را به FontStyle.setSizes می‌دهد که در آن اندازه متن به طور خودکار بر اساس فضایی که در داخل والد دارد، مقیاس می‌شود. به‌علاوه، با افزودن TEXT_OVERFLOW_ELLIPSIZE و منسوخ کردن TEXT_OVERFLOW_ELLIPSIZE_END ، گزینه‌های بیضی‌سازی را برای متنی که سرریز می‌شود، بهبود دادیم.
  • Spacer اکنون از داشتن ابعاد گسترده با وزن اختیاری پشتیبانی می کند. برای ساختن ExpandedDimensionProp یک روش کمکی DimensionBuilders.weight اضافه کرده ایم.
  • پشتیبانی از پنهان کردن و بازکردن عناصر طرح بندی به صورت پویا با Modifier.visible . این شامل داشتن مقادیر پویا در BoolProp است.
  • همه APIهای ProtoLayout اکنون دارای حاشیه نویسی مورد نیاز نسخه طرحواره هستند و می توان نسخه را قبل از فراخوانی یک API جدیدتر بررسی کرد.
  • اکنون هر عنصری که دارای Clickable است، ناحیه هدف خود را به حداقل 48x48 در رندر گسترش داده است تا از نیازهای دسترسی بهتر پشتیبانی کند.
  • به دنبال سایر مؤلفه‌های Material و ابتکارات Compose، اکنون padding فونت را به طور پیش‌فرض در همه عناصر Text غیرفعال کرده‌ایم. علاوه بر این، AndroidTextStyle و تنظیم‌کننده‌های مرتبط از API عمومی حذف شده‌اند. با رفع اشکال زیر:
  • یک تنظیم کننده برای قرار دادن محتوای لبه در EdgeContentLayout اضافه شده است تا بتوان آن را قبل از سایر محتواها قرار داد.
  • هنگام مواجهه با مقدار enum ناشناخته، به طور مداوم یک استثنا ایجاد می کنید.
  • هنگامی که یک عبارت یک مقدار عددی نامعتبر (NaN یا نامتناهی) به دست می‌دهد یا یک ArithmeticException ایجاد می‌کند، نتیجه را باطل کنید.

تغییرات API

  • به‌روزرسانی‌های SweepGradient API برای پذیرش رنگ‌ها یا ColorStops در سازنده. ( I6676f )

رفع اشکال

  • افزودن یک API محدود و پشتیبانی رندر برای تنظیم جهتی که عناصر قوس در آن کشیده می شوند. ( Idef5a )
  • RoundMode به طور پیش‌فرض در FloatToInt32Node زمانی که مشخص نشده باشد، روی Floor قرار می‌گیرد. اگر RoundMode ارائه شده شناسایی نشود، گره همچنان یک استثنا ایجاد می کند. ( I1b2d8 )

نسخه 1.1.0-alpha04

13 دسامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha04 منتشر شد. نسخه 1.1.0-alpha04 حاوی این commit ها است.

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

  • کلاس VersionInfo رابط Comparable را پیاده سازی نمی کند. ( I8d13c )
  • رندر اکنون از گزینه TEXT_OVERFLOW_ELLIPSIZE پشتیبانی می کند. ( I7f085 )

تغییرات API

  • گزینه سرریز متن TEXT_OVERFLOW_ELLIPSIZE_END اکنون منسوخ شده است. لطفاً از API جدید TEXT_OVERFLOW_ELLIPSIZE با رفتار بسیار مشابه استفاده کنید. ( I822d8 )
  • به دنبال سایر مؤلفه‌های Material و ابتکارات Compose، اکنون padding فونت را به طور پیش‌فرض در همه عناصر Text غیرفعال کرده‌ایم. علاوه بر این، AndroidTextStyle و تنظیم‌کننده‌های مرتبط از API عمومی حذف شده‌اند. ( I79094 , Ib0b03 , I32959 , Iaf7d5 , Ifa298 , I0a4ae , Ida9d3 )
  • Modifier.hidden با Modifier.visible جایگزین شد ( I56902 )
  • FontStyle#setSizes اکنون به جای آرگومان های SpProp int را می پذیرد. ( I02b37 )

رفع اشکال

  • هنگام مواجهه با مقدار enum Undefined یا Unrecognized یک استثنا پرتاب کنید. ( I9d2cf )
  • Refactor DynamicTypeBindingRequest . ( I27b57 )
  • هنگامی که یک عبارت یک مقدار عددی نامعتبر (NaN یا نامتناهی) به دست می‌دهد یا یک ArithmeticException ایجاد می‌کند، نتیجه را باطل کنید. ( I681ae )

نسخه 1.1.0-alpha03

29 نوامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha03 منتشر شد. نسخه 1.1.0-alpha03 حاوی این commit ها است.

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

  • اضافه کردن پشتیبانی آزمایشی برای پنهان کردن/آشکار کردن عناصر چیدمان به صورت پویا ( I64a78 )
  • افزودن پشتیبانی ارزش پویا به BoolProp ( I2fe96 )
  • اضافه کردن حاشیه نویسی مورد نیاز نسخه طرحواره به APIهای ProtoLayout ( I0f03c )
  • گسترش API با گزینه جدید در TextOverflow برای بیضی کردن متن در یک محفظه والد ثابت حتی زمانی که خطوط به حداکثر نرسیده باشند (اما فضای کافی برای Text وجود ندارد). ( I110a9 )
  • اضافه شدن روش کمکی DimensionBuilders.weight برای ساخت ExpandedDimensionProp با وزن. ( I4f72b )
  • DynamicInstant و DynamicDuration می توان به عنوان انواع داده های حالت یا پلت فرم استفاده کرد. ( I6819f )

تغییرات API

  • API را به‌روزرسانی کنید تا DynamicZonedDateTime پنهان شود و تمام عملیات آن به DyanamicInstant منتقل شود ( I34b94 )
  • Spacer اکنون از ابعاد گسترده برای عرض/ارتفاع پشتیبانی می کند. ( Ie7c94 )
  • پشتیبانی از پسوند ناحیه هدف کلیک در Renderer ( I39c79 )

نسخه 1.1.0-alpha02

15 نوامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha02 منتشر شد. نسخه 1.1.0-alpha02 حاوی این commit ها است.

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

  • یک قسمت ArcLine StrokeCap Shadow را به API اضافه کرد. ( I830ec )
  • گسترش API برای تعیین عرض یا ارتفاع Spacer برای گسترش. ( I757ca )
  • ما یک API آزمایشی اضافه کرده‌ایم تا به‌طور خودکار اندازه متن را بر اساس فضایی که در داخل والد دارد، مقیاس‌بندی کنیم. ( Ibbe63 )
  • پشتیبانی از حداقل اندازه قابل کلیک ( I178e3 )
  • اضافه شدن پشتیبانی رندر برای StrokeCap Shadow . ( I48b17 )
  • پشتیبانی رندر را برای Sweep Gradient در ArcLine اضافه کنید. ( I4d5bb )

نسخه 1.1.0-alpha01

18 اکتبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha01 منتشر شد. نسخه 1.1.0-alpha01 حاوی این commit ها است.

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

  • یک گزینه براش با پشتیبانی از SweepGradient به Arcline اضافه شده است. ( Ie7ce3 )
  • پشتیبانی از قالب بندی تاریخ-زمان منطقه ای اضافه شده است. ( Ibfae0 )
  • پروتوها و Wrapper های جاوا برای قالب بندی تاریخ-زمان منطقه ای مورد نیاز است. ( I97126 )
  • دریافت کننده برای بازخوانی مقدار ذخیره شده در DynamicDataValue اضافه شده است. ( Ie6cea )
  • یک تنظیم کننده برای قرار دادن محتوای لبه در EdgeContentLayout اضافه شده است تا بتوان آن را قبل از سایر محتواها قرار داد. ( Ie8e8a )

رفع اشکال

  • مشکل زمانی که یک عبارت با چندین بار ثبت منبع داده بلافاصله به‌روزرسانی نمی‌شد، برطرف شد. ( I8e1a8 )
  • رفع یک اشکال در مرکز عنصر ریشه در طول به‌روزرسانی‌های متفاوت. ( Ie48f7 )
  • مقادیر محدودیت چیدمان تنظیم نشده (یا خالی) دیگر نادیده گرفته نمی شوند. ( IBC785 )
  • کاهش تأخیر بین نمایان شدن یک طرح و اولیه سازی گره های خط لوله آن. ( I38d4e )

نسخه 1.0

نسخه 1.0.0

9 آگوست 2023

androidx.wear.protolayout:protolayout-*:1.0.0 منتشر شد. نسخه 1.0.0 حاوی این commit ها است.

ویژگی های اصلی 1.0.0

کتابخانه ProtoLayout APIهایی را برای ایجاد طرح‌بندی‌ها و عباراتی معرفی می‌کند که می‌توانند در سطوح مختلف Wear OS استفاده شوند. به عنوان مثال، کتابخانه Tiles از این APIها برای پشتیبانی از اتصال داده‌های پلتفرم (برای به‌روزرسانی سریع‌تر داده‌های کاشی) و انیمیشن‌ها استفاده می‌کند.

نسخه 1.0.0-rc01

26 جولای 2023

androidx.wear.protolayout:protolayout-*:1.0.0-rc01 منتشر شد. نسخه 1.0.0-rc01 حاوی این commit ها است.

  • برای انتقال از Tiles به ProtoLayout ، لطفاً دستورالعمل‌های اینجا را دنبال کنید.

تغییرات API

  • متدهای setLayoutConstraintForDynamicAnchorAngle و getLayoutConstraintForDynamicAnchorAngle را از عنصر Arc حذف کرده ایم. این روش ها به اشتباه اضافه شده اند و هیچ تاثیری در چیدمان ارائه شده نداشته اند. ( If7d01 )
  • ما حداکثر عمقی را که یک طرح بندی ProtoLayout می تواند داشته باشد به 30 LayoutElements تو در تو محدود کرده ایم. ( I8a74b )

رفع اشکال

  • اگر DynamicColor برای SpanText تنظیم شده باشد، یک بررسی اضافه کرده‌ایم. ( I0e5bc )
  • مشخص شده است که واحد منبع داده DAILY_CALORIES کیلو کالری است. ( Iaa785 )

نسخه 1.0.0-beta01

21 ژوئن 2023

androidx.wear.protolayout:protolayout-*:1.0.0-beta01 منتشر شد. نسخه 1.0.0-beta01 حاوی این تعهدات است.

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

  • به تنظیم ساعت برای تست های زمان بندی اجازه دهید. ( I05622 )

تغییرات API

  • PlatformDataReceiver.onData() و StateBuilders.Builder.addKeyToValueMapping اکنون نگاشت نوع ایمن DynamicDataKey را به DynamicDataValue می پذیرند تا ژنریک های ناامن. این بدان معناست که DynamicDataValue اکنون با DynamicType آن تایپ می شود. ثابت‌های HEART_RATE_ACCURACY_X به ریشه PlatformHealthSources منتقل شدند تا با موقعیت‌یابی سایر ثابت‌های Android مطابقت داشته باشند. ثابت های int HEART_RATE_ACCURACY_X اکنون مستقیماً در DynamicHeartRateAccuracy.constant() و DynamicHeartRateAccuracy.dynamicDataValueOf() به جای ثابت مقدار استفاده می شوند. ( I82ff5 )
  • کلاس PlatformHealthSources.Constants به اشتباه قابل دستیابی بود. اکنون این مشکل برطرف شده است. ( ICb849 )
  • PlatformTimeUpdateNotifier#setReceiver اکنون Runnable به جای تابع Supplier و Executor برای اطلاع رسانی دریافت می کند. ( I9d938 )
  • ما نوع پارامتر را در PlatformTimeUpdateNotifier#setReceiver از Callable به Supplier تغییر داده‌ایم. ( I664bf )
  • CompactChip و TitleChip اکنون از افزودن یک نماد به آن پشتیبانی می کنند. ( I5a01e )

رفع اشکال

  • به‌روزرسانی پیام‌های Prop با فیلدهای پویا برای استفاده از یکی از آنها ( I81739 )
  • استفاده مجدد از اجرای تنظیم کننده ها برای اضافه بارهایی که دارای تنظیم کننده هستند ( Ied70c )
  • اثر انگشت را در ستترهایی که اضافه بار دارند به درستی ثبت کنید ( I86ed2 )

نسخه 1.0.0-alpha11

7 ژوئن 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha11 منتشر شد. نسخه 1.0.0-alpha11 حاوی این commit ها است.

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

  • ما یک PlatformDataKey برای دقت ضربان قلب اضافه کرده‌ایم. ( I7f9b8 )

تغییرات API

  • نام StateBuilders#getIdToValueMapping به getKeyToValueMapping تغییر دهید و نوع بازگشت را به Map<<AppDataKey<?>,DynamicDataValue> تغییر دهید. ( Iaa7ae )
  • StateStore به کلاس نهایی تبدیل کنید ( I408ca )
  • رابط TimeGateway با PlatformTimeUpdateNotifier در کتابخانه protolayout-expression-pipeline جایگزین شده است که فرکانس مورد نظر را برای به روز رسانی داده های زمانی فراهم می کند. ( I60869 )
  • تغییر نام register / unregisterForData در PlatformDataProvider به set / clearReceiver ( I14b02 )
  • در Material Text، getExcludeFontPadding به hasExcludeFontPadding تغییر نام داده است. ( Iea01d )
  • تنظیم کننده برای تراز کردن کامل برچسب به تمام اجزای تراشه اضافه شد. اکنون همه تراشه‌ها دارای حداقل هدف قابل لمس هستند. ( I8ae92 )
  • LayoutDefaults#BUTTON_MAX_NUMBER به MAX_BUTTONS تغییر نام داده است. ( I84788 )
  • DAILY_DISTANCE به DAILY_DISTANCE_M تغییر نام داد. ( I4f758 )

رفع اشکال

  • اسناد انواع Prop را به روز کنید تا مشخص شود که چرا مقدار استاتیک اعمال می شود. اگر مقدار استاتیک ارائه نشده باشد، مقدار پیش‌فرض مورد استفاده را مشخص کنید. ( I155aa )
  • فضاهای نام PlatformDataKey باید از نامگذاری سبک جاوا پیروی کنند. ( I47bda )

نسخه 1.0.0-alpha10

24 مه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha10 منتشر شد. نسخه 1.0.0-alpha10 حاوی این commit ها است.

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

  • افزودن AppDataKey برای دسترسی به وضعیت تحت فشار برنامه. افزودن PlatformDataKey برای دسترسی به داده های پلت فرم. پشتیبانی فضای نام را در StateStore اضافه کنید. ( I7985e )
  • پشتیبانی از عملیات Equal و NotEqual برای DynamicBool . ( I6a0c1 )

تغییرات API

  • کلاس FontStyles اکنون نهایی است ( Iaa2ea )
  • LayoutElementBuilders#FontStyles منسوخ شده است. لطفاً از androidx.wear.protolayout.Typography استفاده کنید یا FontStyle خود را ایجاد کنید. ( IC929b )
  • رابط تو در تو Action#Builder را از رابط Action مخفی کنید. پیاده سازی Builder قبلاً توسط کلاس های LoadAction و LaunchAction ارائه شده است. ( I1d70c )
  • امکان استفاده از DynamicFloat با FloatProp . توجه داشته باشید که FloatProp نیازی به محدودیت های طرح بندی ندارد زیرا به عنوان یک پایه تغییر طرح استفاده نمی شود. ( I286ac )
  • کنش‌های LoalAction و SetStateAction حذف شده‌اند، زیرا هنوز واقعاً پشتیبانی نشده‌اند. ( I5d6a6 )
  • پشتیبانی از فرمت ARGB_8888 برای منابع تصویر درون خطی اضافه شده است. ( I8a07c )
  • StateEntryValue به DynamicDataValue تغییر نام دهید و APIS حالت را برای استفاده از DynamicDataKey ( If1c01 ) به روز کنید.
  • ما تعداد ورودی‌های مجاز در StateStore را محدود می‌کنیم تا اطمینان حاصل کنیم که استفاده از حافظه و زمان به‌روزرسانی وضعیت به خوبی برای هر نمونه از StateStore کنترل و کنترل می‌شود. در نتیجه، توسعه‌دهنده باید مطمئن شود که بیش از MAX_STATE_ENTRY_COUNT ورودی در نقشه نداشته باشد، در غیر این صورت هنگام ایجاد یا به‌روزرسانی StateStore ، یک IllegalStateException دریافت می‌کند. ( Ibadb3 )
  • کلاس‌های OnLoadTrigger و OnConditionMetTrigger را مخفی کنید و نام setTrigger به setCondition برای OnConditionMetTrigger تغییر دهید. ( IBF629 )
  • به دلایل عملکرد و سازگاری، رندرهای ProtoLayout از مجموعه کامل ویژگی‌ها در منابع AnimatedVectorDrawable پشتیبانی نمی‌کنند. تا زمانی که بتوانیم مجموعه پشتیبانی شده را تعریف کنیم، آن APIها را به‌عنوان آزمایشی علامت‌گذاری می‌کنیم. ( IC6daf )
  • انواع پویا برای مسافت روزانه، کالری روزانه و طبقات روزانه اضافه شده است. کلیدهای منابع سلامت پلتفرم اکنون تحت PlatformHealthSources.Keys هستند ( Ib7637 )
  • روش Easing.cubicBezier جایگزین CubicBezierEasing.Builder می شود. با آن کلاس EasingFunction حذف می شود و ثابت های easing از آن کلاس اکنون مستقیماً از رابط Easing قابل دسترسی هستند. علاوه بر این setInfiniteRepeatable با INFINITE_REPEATABLE_WITH_RESTART و INFINITE_REPEATABLE_WITH_REVERSE ( Ib41e7 ) جایگزین شده است.
  • PlatformDataProvider برای ارائه ضربان قلب و مراحل روزانه پیاده سازی کنید. رابط SensorGateway از API عمومی حذف شده است. ( I55b84 )
  • PlatformDataProvider اضافه کنید و StateStore برای ثبت در PlatformDataProvider به‌روزرسانی کنید، زمانی که کلید پشتیبانی‌کننده ارائه‌دهنده توسط نود از خط لوله بیان مورد نیاز است. ( IB616a )
  • SensorGateway دیگر Closeable نیست زیرا دیگر هیچ حالتی را حفظ نمی کند. ( I6b4f7 )
  • اجازه استفاده از FloatProp با DynamicFloat برای پیشرفت در CircularProgressIndicator را بدهید. این برای رندرهایی که از نسخه 1.2 پشتیبانی می کنند پشتیبانی می شود. رندرهای قدیمی در صورت ارائه به staticValue بازگشت خواهند کرد، در غیر این صورت به 0 ( I0d91b )
  • ثابت‌های MultiButtonLayout به کلاس LayoutDefaults.MultiButtonLayoutDefaults تبدیل شده‌اند که اکنون شامل موارد مربوط به اندازه دکمه‌ها بسته به تعدادی از دکمه‌ها در طرح‌بندی است. ( I13973 )
  • پشتیبانی از StringProp با DynamicString در متن متریال. این برای رندرهایی که از نسخه 1.2 پشتیبانی می کنند پشتیبانی می شود. رندرهای قدیمی به مقدار استاتیک ارائه شده بازگشت خواهند کرد. نوع بازگشت Text#getText را از String به StringProp به‌روزرسانی کنید. ( I7275b )

نسخه 1.0.0-alpha09

10 مه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha09 منتشر شد. نسخه 1.0.0-alpha09 حاوی این commit ها است.

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

  • ما یک عنصر طرح‌بندی برنامه افزودنی آزمایشی اضافه کرده‌ایم. توجه داشته باشید که این امر به طور پیش فرض قابل استفاده نیست و نیاز به یک پسوند رندر دارد که قادر به درک عنصر طرح است. ( i6581d )
  • پشتیبانی StrokeCap برای ArcLine اضافه شد. ( i94951 )
  • پشتیبانی اضافه شده برای عملکرد فوری شرطی. ( i489a7 )
  • پشتیبانی اضافه شده برای عملکرد مدت زمان مشروط. ( IAB469 )
  • پشتیبانی اضافه شده برای ایجاد مدت زمان از ثانیه. ( IB5FA1 )

تغییرات API

  • روشهای enable/disablePlatformSource روشهای از DynamicTypeEvaluator حذف شده است. تماس گیرنده باید مسئول به روزرسانی ها باشد. ( i78c6d )
  • اجازه می دهد تا اندازه انواع داده های محدود را پوشش دهد. ( IE2966 )
  • پشتیبانی از توضیحات محتوای پویا را در protolayout-material اضافه کنید. ( i62c8e )
  • برای مدت زمان و تأخیر در پارامترهای انیمیشن از long و @IntRange استفاده کنید. ( i388b6 )

نسخه 1.0.0-alpha08

19 آوریل 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha08 منتشر می شود. نسخه 1.0.0-alpha08 حاوی این commit ها است.

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

  • AndroidTextStyle به LayoutElementBuilders اضافه شده است. ( i8d967 )
  • ما پشتیبانی از تنظیم استثناء بالشتک قلم را در متن مواد ProtoLayout اضافه کرده ایم. ( i17f5d )
  • ARGB_8888 اکنون برای تصاویر درون خطی پشتیبانی می شود. ( i18c1e )
  • DynamicColor اکنون از عملیات onCondition پشتیبانی می كند. ( I10927 )

تغییرات API

  • پشتیبانی از مدت سفارشی برای انیمیشن معکوس ( I3251F )
  • ما اصلاح کننده SemanticDescription را اضافه کرده ایم. علاوه بر این ، ContentDescription قابل اتصال نیست. ( i3f1d )
  • روش DynamicBool.isFalse() اکنون با DynamicBool.negate() جایگزین شده است و DynamicBool.isTrue() حذف می شود. علاوه بر این مقادیر NAN DynamicFloat و باریک کردن DynamicInt32 به یک DynamicFloat اکنون نتیجه پویا نامعتبر را منتشر می کند. ( i6ac1e )
  • فرمت های Int و Float اکنون از الگوی سازنده استفاده می کنند. ( IEB213 )

رفع اشکال

  • مقدار استاتیک Fallback از زمینه های قابل تحمل حذف شده است. ( IFCB01 )
  • DynamicTypeValueReceiver#onPreUpdate برداشته شده است. ( I2DC35 )
  • اکنون طول رشته ها در عبارات پویا در حال پوشش است. ( i4c93 )
  • اکنون وابستگی های Gradle در صورت لزوم به جای implementation به درستی روی api تنظیم شده اند. ( i40503 )

نسخه 1.0.0-alpha07

5 آوریل 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha07 منتشر می شود. نسخه 1.0.0-alpha07 حاوی این commit ها است.

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

  • پشتیبانی از ارزش پویا را به StringProp اضافه کنید ( I04342 )
  • عناصر چیدمان قابل اتصال را علامت گذاری کنید ( IA110B )

تغییرات API

  • sensorGateway#registerSensorGatewayConsumer به جای روش در مصرف کننده ، نوع داده را به عنوان یک پارامتر می گیرد. ( ICF314 )
  • ObservableStateStore به StateStore تغییر نام داده است. ( IEB0E2 )
  • به جای آرگومان های سازنده ، به جای استدلال های سازنده DynamicTypeEvaluator.Builder اضافه شده است تا استدلال های اختیاری تری داشته باشد ، از جمله ObservableStateStore که اکنون به یک فروشگاه خالی پیش فرض می شود. ( i6f832 )
  • ترتیب اصلاح پارامترها در DynamicTypeEvaluator . ( IC1BA4 )

رفع اشکال

  • به درستی سیگنال ها را از منابع سنسور سکو تا گره های پایین دست پخش کنید ( I5A922 )

نسخه 1.0.0-alpha06

22 مارس 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha06 منتشر می شود. نسخه 1.0.0-alpha06 حاوی این commit ها است.

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

  • ما یک API آزمایشی برای استفاده از ضربان قلب و مراحل روزانه در عبارات پویا اضافه کرده ایم ( IFD711 )
  • ما پشتیبانی از تأخیر معکوس و رو به جلو برای انیمیشن ها را اضافه کرده ایم. ( IC25F7 )
  • ما پشتیبانی DynamicColor را به مرز و پیشینه اضافه کرده ایم
  • ما پشتیبانی از ارزش پویا را به انواع در DimensionBuilder اضافه کرده ایم
  • چیدمان و اجزای tiles-material به سمت protolayout-material در حال حرکت هستند

تغییرات API

  • LoadActionListener به ProtoLayoutViewInstance اضافه شده است. ( IF7806 )

رفع اشکال

  • اضافه شده FloatNodesTest ( id7281 )
  • هنگام عدم امکان بارگذاری بیت مپ ساختار یافته ، سقوط رندر را برطرف کنید.

نسخه 1.0.0-alpha05

8 مارس 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha05 منتشر می شود. نسخه 1.0.0-alpha05 حاوی این commit ها است.

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

  • ما یک انیمیشن تجربی "به روزرسانی محتوا" را به شیء Modifiers اضافه کرده ایم. این انیمیشن هر زمان که عنصر (با این اصلاح کننده) یا یکی از فرزندانش در حین بروزرسانی چیدمان تغییر کند ، تحریک می شود. ( BD03E5D )

تغییرات API

  • ما forwardRepeatDelayMillis و reverseRepeatDelayMillis به Repeatable اضافه کرده ایم. ما همچنین به startDelayMillis ( IFB266 ) در AnimationSpec به delayMillis در AnimationsPec تغییر نام دادیم
  • روشهای DynamicTypeEvaluator.bind اکنون یک مجری را می پذیرند. ( i346ab )
  • ما روش startEvaluation به BoundDynamicType اضافه کرده ایم تا ارزیابی را پس از محدود شدن نوع پویا انجام دهیم. ( I19908 )

رفع اشکال

  • از شیء انیماتور برای انیمیشن های بعدی یک عنصر واحد استفاده می شود. ( ia3be9 )

نسخه 1.0.0-alpha04

22 فوریه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha04 منتشر می شود. نسخه 1.0.0-alpha04 حاوی این commit ها است.

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

  • ObservableStateStore اکنون هنگام حذف یک کلید ، شنوندگان را به شنوندگان اطلاع می دهد.
  • ما نسخه Schema Renderer و مقیاس FONT را به DeviceParameters اضافه کرده ایم (که می تواند برای ایجاد مشروط در پاسخ به نسخه های مختلف و تنظیمات قلم استفاده شود).
  • ما پشتیبانی از انیمیشن مقادیر DynamicInt32 را اضافه کرده ایم ( I05485 )
  • ما محرک های OnLoad و OnConditionalMet را اضافه کرده ایم. از اینها می توان برای شروع انیمیشن هایی که از یک ماشه پشتیبانی می کنند استفاده شود.
  • ما وزن چیدمان را برای ابعاد گسترش یافته و اندازه حداقل برای ابعاد پیچیده اضافه کرده ایم.
  • ما به مدت زمان و انواع پویا فوری اضافه کرده ایم. اینها می توانند برای نشان دادن یک فوری یا مدت زمان در یک بیان پویا استفاده شوند.
  • ما به عنوان منابع چیدمان ، پشتیبانی از AnimatedVectorDrawable و SeekableAnimatedVectorDrawable را اضافه کرده ایم.

تغییرات API

  • داده های سنسور به API 29+ نیاز دارد. ( i8099e )
  • ما دو روش launchAction Helper (برای فعالیت های راه اندازی) اضافه کرده ایم.

رفع اشکال

  • تغییر set/getSpec به set/getAnimationSpec در انیمیشن کاشی ( i3d74b )

نسخه 1.0.0-alpha03

8 فوریه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha03 منتشر می شود. نسخه 1.0.0-alpha03 حاوی این commit ها است.

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

  • ما toByteArray() و fromByteArray() به انواع پویا در کتابخانه ProtoLayout-Express اضافه کرده ایم.
  • ما toString() به انواع پویا در کتابخانه بیان-بیان اضافه کرده ایم.
  • ما پشتیبانی ارزیابی را برای انواع پویا اضافه کرده ایم. کلاس DynamicTypeEvaluator از کتابخانه ProtoLayout-Expression-Pipeline می تواند برای ارزیابی (و دریافت مقادیر به روز شده) برای ایجاد نوع پویا قبلاً استفاده شود ( DynamicString ، DynamicFloat ،…)
  • هنگامی که انیمیشن ها نمی توانند پخش شوند (یا به دلیل اینکه توسط ارزیاب غیرفعال شده اند ، یا تعداد انیمیشن های در حال اجرا به حد تعیین شده رسیده است) ، از مقادیر استاتیک تنظیم شده بر روی گره Animatable برای جایگزینی انیمیشن استفاده می شود.

نسخه 1.0.0-alpha02

25 ژانویه 2023

androidx.wear.protolayout:protolayout:1.0.0-alpha02 ، androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02 و androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02 آزاد می شود. نسخه 1.0.0-alpha02 حاوی این commit ها است.

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

  • چیدمان سازندگان از androidx.wear.tiles:tiles به androidx.wear.protolayout:protolayout . آنهایی که در androidx.wear.tiles:tiles در یکی از نسخه های بعدی آلفا کاهش می یابد.

نسخه 1.0.0-alpha01

11 ژانویه 2023

androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01 و androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01 منتشر می شود. نسخه 1.0.0-alpha01 حاوی این commit ها است.

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

  • این نسخه یک کتابخانه جدید "بیان پروتولایت" برای ایجاد عباراتی از متغیرهای پویا معرفی می کند.
،

ProtoLayout را بپوشید

این کتابخانه اجازه می دهد تا مجموعه ای از طرح های UI و عبارات غیر UI را در سطوح از راه دور ارائه یا ارزیابی کند.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
26 فوریه 2025 1.2.1 - - 1.3.0-alpha09

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

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

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

شیار

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation "androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04"

    // Use to implement support for Wear ProtoLayout
    implementation "androidx.wear.protolayout:protolayout:1.3.0-alpha04"

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation "androidx.wear.protolayout:protolayout-material:1.3.0-alpha04"
}

کاتلین

dependencies {
    // Use to implement support for Wear ProtoLayout Expressions
    implementation("androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04")

    // Use to implement support for Wear ProtoLayout
    implementation("androidx.wear.protolayout:protolayout:1.3.0-alpha04")

    // Use to utilize components and layouts with Material design in your ProtoLayout
    implementation("androidx.wear.protolayout:protolayout-material:1.3.0-alpha04")
}

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

بازخورد

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

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

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

نسخه 1.3

نسخه 1.3.0-alpha09

26 فوریه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha09 منتشر می شود. نسخه 1.3.0-alpha09 شامل این تعهدات است.

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

  • اصلاح کننده های تجربی برای enterTransition و exitTransition اضافه شده است ( I4A4D6 )
  • ما برای دریافت وضعیت دید طرح کامل ، هر زمان که تغییر کند ، به پلت فرم اضافی اضافه کرده ایم. ( i250c3 )
  • برای ارزیابی مقادیر پویا ، اجازه می دهد تا داده های برنامه و پلت فرم را به LayoutElementAssertionsProvider تزریق کنید. ( IB5FCB )
  • فیلترهای گوشه ای را به کتابخانه تست Protolayout اضافه کنید ( IE2361 )
  • ButtonColors ، CardColors و ProgressIndicatorColors اکنون از روش کپی پشتیبانی می کنند ، با نادیده گرفتن اختیاری برخی از پارامترها. ( IE2054 )

تغییرات API

  • پشتیبانی از اتصال داده های پویا را به کتابخانه آزمایش اضافه کنید ( IB98DE )
  • با از بین بردن imageButton با استفاده از عملکرد پس زمینه با استفاده از عملکرد backgroundImage استفاده کنید. علاوه بر این ، به عملکرد backgroundImage اجازه دهید تا NULL برای رنگ پوشش را مشخص کند ، به این معنی که پوشش استفاده نمی شود. ( ibec3c )

رفع اشکال

  • تغییر روش پیش فرض hasValueOfType برای پرتاب UnsupportedOperationException به جای IllegalArgumentException . ( ia36c3 )
  • مقادیر پیش فرض رنگ توکن به روزرسانی می شود تا آخرین مشخصات را منعکس کند. ( i75d44 )
  • رفع مشکل غیرقانونی در خطوط قوس در کاشی های Androidx قابل مشاهده است. ( i88190 )

نسخه 1.3.0-alpha08

12 فوریه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha08 منتشر می شود. نسخه 1.3.0-alpha08 شامل این تعهدات است.

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

  • پارامتر لیست FontSetting را برای متن Material3 اضافه کنید. ( IC102D )
  • کلاس DynamicDataMap اضافه شده است که اکنون StateBuilder از نوع بهتر Kotlin API برای حالت برنامه پشتیبانی می کند ( I012BA )
  • روشهای کارخانه اضافه شده مانند intAppDataKey برای ایجاد آسان تر اشیاء AppDataKey ( ICEA2A )
  • DynamicDataValue اکنون علاوه بر روشهای hasInt/hasColor/ .... روش HasValueOftype hasValueOfType(Class<?>) ) دارد.
  • ما برای خطاهای اولویت بالا یا اقدامات اضطراری مانند هشدارهای ایمنی ، errorDim به Material3 Protolayout ColorScheme اضافه کرده ایم. ( IA17BB )
  • ما هنگام دسترسی به تنظیمات جهانی کاهش ، که در بعضی از سیستم عامل ها که در آن تنظیم نشده بود ، در برابر تصادف محافظت کرده ایم. ( I01e2c )

تغییرات API

  • addKeyToValueMapping به addToStateMap و DynamicDataMap.put تغییر نام داده می شود. ( IBE9DD )
  • Typography Material3 اکنون از محورهای متغیر گرد برای فونت های سیستم پشتیبانی می کند که از این محور پشتیبانی می کنند. FontSetting ProtoLayout از محور گرد برای فونت هایی که از این محور پشتیبانی می کنند ، پشتیبانی می کند. ( i33eb5 )
  • تغییر نام به multilineAlignment به تراز در روش متن 3. ( i2b66b )
  • نشانگر پیشرفت دایره ای را به روز کنید تا از نوع جعبه استفاده کنید ، همچنین mainContent در constructGraphic به نوع جعبه مشخص کنید ( I5A3DC )
  • پشتیبانی بهتر برای استفاده از نشانگر پیشرفت دایره ای در نمودار ( I039DB )

رفع اشکال

  • مقادیر پویا را در ColorStop و همچنین برای زاویه های شروع/پایان در SweepGradient اجازه دهید. ( I0146D )
  • اسناد برطرف می شود. ( i4a63a )
  • مواد به روز شده 3 مؤلفه ( graphicCard و avatarButton ) برای ارائه بازپرداخت در هنگام پشتیبانی از ابعاد گسترش weight پشتیبانی نمی کنند (به عنوان مثال زیر API 33). مؤلفه متن به روز شده برای بازگرداندن به TEXT_OVERFLOW_ELLIPSIZE_END هنگامی که TEXT_OVERFLOW_ELLIPSIZE توسط رندر پشتیبانی نمی شود. ( i19e2c )
  • به روزرسانی اسناد برای PrimaryLayoutMargins . ( IBAF7B )

نسخه 1.3.0-alpha07

29 ژانویه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha07 منتشر می شود. نسخه 1.3.0-alpha07 شامل این تعهدات است.

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

  • گزینه API اضافه شده برای تنظیم محرک های مختلف برای انیمیشن های Lottie. علاوه بر این ، API اضافه شده برای محرک های شلیک شده در هنگام مشاهده طرح ( I8272D )
  • اصلاح کننده های border ، visibility و opacity اضافه شده است. ( i6d3dd )
  • دکمه آواتار را به مؤلفه ProtoLayout Material3 اضافه کرد. ( idb5ae )
  • اکنون ما اجازه می دهیم حاشیه ها (سمت و در بعضی موارد پایین) در primaryLayout Material3 سفارشی شوند. ( IB22F6 )
  • نوع تقسیم شده از شاخص پیشرفت دایره را اضافه کنید. ( i6a648 )
  • مؤلفه دکمه جمع و جور را به ProtoLayout Material3 اضافه کرد. ( IA3C5C )
  • دکمه شکل قرص و مؤلفه های دکمه تصویر را به ProtoLayout Material3 اضافه کرد. ( IFB88a )

تغییرات API

  • LayoutModfier.foldIn اکنون foldRight نامیده می شود تا رفتار مورد انتظار آن را بهتر منعکس کند ( IDF242 )
  • ماشه VisibleOnce اکنون آزمایشی است. ( IB2D26 )
  • با استفاده از API عمومی از withOpacity خارج شوید زیرا یک جایگزین کتابخانه گرافیکی وجود دارد. ( I030C2 )
  • برای داشتن نام های دوستانه جاوا به روشهای سطح بالا در LayoutString.kt و LayoutColor.kt تغییر نام داد. ( i7aff0 )
  • تایپوگرافی های غیر پرووتولی را در مواد 3 حذف کرد. ( idd9ae )
  • رنگ پسوند را به مزارع در کلاسهای *Colors در مواد 3 اضافه کنید. ( I2D114 )

رفع اشکال

  • اجرای Fallback EdgeButton را برای ارائه دهنده های قدیمی بدون پشتیبانی از گوشه های نامتقارن اضافه کنید. ( i63364 )
  • اجرای Fallback از شاخص پیشرفت دایره ای را با رندر قدیمی تر اضافه کنید. ( I0F134 )

نسخه 1.3.0-alpha06

15 ژانویه 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha06 منتشر می شود. نسخه 1.3.0-alpha06 شامل این تعهدات است.

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

  • LayoutColor برای پشتیبانی از هر دو نوع رنگ استاتیک و پویا ( I4C89B )
  • مؤلفه TextButton ProtoLayout Material3 اضافه شده است. ( id680d )
  • مؤلفه ProtoLayout Material 3 iconButton اضافه کنید. ( ICA3F0 )
  • مؤلفه کانتینر دکمه Protolayout Material3 اضافه شده است. ( i17a38 )
  • پشتیبانی از اصلاح کننده های معنایی زنجیره ای به ProtoLayout-Material3 ( I4AF62 ) اضافه شد
  • اضافه شده Protolayout Material3 بخش تک بخش CircularProgressIndicator ( I2C8A2 )
  • اضافه شده padding ، اصلاح کننده های metadata ( I8720A )
  • background ، clip و اصلاح کننده های clickable اضافه شده ( I35478 )
  • برای مسواک زدن LinearGradient به صورت خطی اضافه کنید و اجازه دهید از آن در اصلاح کننده پس زمینه استفاده شود. ( IC4DEA )
  • اندازه کوچک را برای AppCard و titleCard اضافه کنید. ( i91f98 )
  • مؤلفه Protolayout Material3 graphicDataCard اضافه شده است. ( i92be7 )
  • ProtoLayout Material3 iconDataCard و textDataCard اضافه شده است. ( i4e1e4 )
  • مؤلفه appCard ProtoLayout Material3 اضافه شده است. ( id4c57 )
  • EdgeButtonColors به ButtonColors . ( i83624 )
  • مؤلفه titleCard ProtoLayout Material3 اضافه شده است. ( i2dc72 )

تغییرات API

  • Protolayout Material3 API اکنون برای پشتیبانی از متون استاتیک و پویا ، LayoutString می پذیرد. ( i9c24a )

رفع اشکال

  • اجرای Renderer را برای تورم DashedArcLine ( I0C700 ) اضافه کنید
  • تغییر رندر برای اجازه دادن به ArcSpacer طول DP. ( i1437b )

نسخه 1.3.0-alpha05

11 دسامبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha05 منتشر می شود. نسخه 1.3.0-alpha05 شامل این تعهدات است.

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

  • LayoutString اضافه شده برای پشتیبانی از زمینه های رشته ای طرح بندی پذیر. ( IDA650 )
  • مؤلفه کانتینر کارت ProtoLayout Material3 اضافه شده است. ( IC985a )

رفع اشکال

  • این کتابخانه در حال حاضر از حاشیه نویسی jspecify nulnness ، که از نوع استفاده هستند استفاده می کند. توسعه دهندگان Kotlin باید از آرگومان های کامپایلر زیر برای اجرای صحیح استفاده کنند: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode ( id1f9b ، b/326456246 )

نسخه 1.3.0-alpha04

13 نوامبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha04 منتشر می شود. نسخه 1.3.0-alpha04 شامل این تعهدات است.

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

  • به روز شده Material3 شکل به عنوان کلاس با فیلدهایی که مقدار گوشه واقعی را نگه می دارد ، همانند سایش آهنگسازی. ( ied8cd )
  • به روز شده Material 3 Colors شامل مفهوم ColorScheme ، همانند Wear Compose. ( if645e )
  • چندین مبهم متداول را به کتابخانه تست اضافه کنید. ( IE5CEC )

نسخه 1.3.0-alpha03

30 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha03 منتشر می شود. نسخه 1.3.0-alpha03 شامل این تعهدات است.

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

  • اضافه کردن LayoutElementAssertionsProvider ، LayoutElementAssertion و LayoutElementMatcher به کتابخانه آزمایش ( ID1110 ) اضافه کنید

نسخه 1.3.0-alpha02

16 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha02 منتشر می شود. نسخه 1.3.0-alpha02 شامل این تعهدات است.

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

  • نسخه اولیه کتابخانه مواد 3. شامل text ، edgeButton ، buttonGroup و primaryLayout .

رفع امنیتی

  • از این تغییر ، AndroidX به منظور پرداختن به CVE-2024-7254 ، در برابر ProtoBUF 4.28.2 کامپایل می کند. وابستگی خود را به نسخه 1.3.0-alpha01 از androidx.wear.protolayout:protolayout-proto و androidx.wear.protolayout:protolayout-external-protobuf به 1.3.0-alpha02 برای رفع خطر آسیب پذیری ارتقا دهید.

سهم خارجی

نسخه 1.3.0-alpha01

2 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha01 منتشر می شود. نسخه 1.3.0-alpha01 شامل این تعهدات است.

رفع اشکال

  • توضیح داد که در دسترس بودن نام خانوادگی FONT Roboto و Roboto Flex وابسته به دستگاه است. ( i193be )
  • خانواده قلم Flex Roboto را در رندر کاشی Androidx فعال کنید. ( i08e94 )

نسخه 1.2

نسخه 1.2.1

16 اکتبر 2024

androidx.wear.protolayout:protolayout-*:1.2.1 منتشر می شود. نسخه 1.2.1 شامل این تعهدات است.

رفع امنیتی

  • از این تغییر ، AndroidX به منظور پرداختن به CVE-2024-7254 ، در برابر ProtoBUF 4.28.2 کامپایل می کند. وابستگی خود را به نسخه 1.2.0 androidx.wear.protolayout:protolayout-proto و androidx.wear.protolayout:protolayout-external-protobuf به 1.2.1 برای رسیدگی به خطر آسیب پذیری ارتقا دهید.

نسخه 1.2.0

7 آگوست 2024

androidx.wear.protolayout:protolayout-*:1.2.0 منتشر می شود. نسخه 1.2.0 شامل. این تعهدات

تغییرات مهم از 1.1.0

  • FontStyle به روز شده است تا از فونت اضافی برای محورهای متغیر و API انتخاب فونت بهتر برای پشتیبانی از فونت های Flex آینده برخوردار باشد.
  • اصلاح کننده های اضافی پشتیبانی می کنند:
    • اصلاح کننده تحول ارائه ترجمه ، چرخش و مقیاس گذاری با یا بدون انیمیشن.
    • تعیین مقادیر مختلف (افقی و عمودی) برای هر شعاع گوشه.
  • با گسترش منطقه قابل استفاده از هر عنصری که از اصلاح کننده قابل کلیک استفاده می کند حداقل 48dp توسط 48dp باشد ، دسترسی به همه اهداف لمسی بهبود یافته است.
  • بهبود PrimaryLayout و EdgeContentLayout با اضافه کردن setResponsiveContentInsetEnabled برای پشتیبانی بهتر از رفتار پاسخگو از این طرح بندی ها در اندازه های مختلف صفحه نمایش و بهبود قوام کاشی.
  • بهبود مقیاس/عدم مقیاس متن متن برای مقیاس بندی قلم غیرخطی Android 14.
  • پشتیبانی بهبود یافته از جهت طرح RTL در تمام عناصر قوس.

تغییرات اضافی

نسخه 1.2.0-RC01

24 جولای 2024

androidx.wear.protolayout:protolayout-*:1.2.0-rc01 منتشر می شود. نسخه 1.2.0-RC01 شامل این تعهدات است.

رفع اشکال

  • ما تراشه مواد استاندارد را ثابت کرده ایم تا فقط در صورتی که هیچ یک از برچسب های اولیه یا ثانویه منتقل نشود ، می توان از آن به عنوان یک نماد استفاده کرد. ( ICEEF9 )
  • مستندات مربوط به طرح بندی مواد به روز شده است تا برای درک آسان تر از طرح ها ، تصاویری از صفحه مربوطه را شامل شود. ( i0256a )

نسخه 1.2.0-beta01

10 جولای 2024

androidx.wear.protolayout:protolayout-*:1.2.0-beta01 منتشر می شود. نسخه 1.2.0-beta01 شامل این تعهدات است.

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

نسخه 1.2.0-beta01 از SEAT ProtoLayout نشان می دهد که این نسخه از کتابخانه از ویژگی های کامل و API قفل شده است (به جز جایی که به عنوان تجربی مشخص شده است). پوشیدن Protolayout 1.2 شامل ویژگی های جدید و API های زیر است:

  • FontStyle به روز شده است تا از فونت اضافی به شرح زیر باشد:
    • تنظیم تنظیمات مختلف فونت مانند FontSetting.weight و FontSetting.width
    • تنظیم عرض یکسان برای همه شخصیت های عددی - اعداد جدولی (تنظیم ویژگی های فونت FontSetting.tnum )
    • API های انتخاب فونت بهبود یافته برای پشتیبانی از فونت های Flex آینده با مشخص کردن نام خانوادگی فونت مورد نظر برای استفاده.
  • اصلاح کننده Corner گسترده برای پشتیبانی از مشخص کردن هر CornerRadius با مقادیر جداگانه افقی و عمودی برای اجازه دادن به عناصر ساختمان با گوشه های نامتقارن.
  • یک اصلاح کننده Transformation جدید اضافه شده و ترجمه ، چرخش و مقیاس بندی LayoutElement را ارائه می دهد. این تحولات می توانند با استفاده از مقادیر پویا متحرک شوند.
  • برای پشتیبانی بهتر در جهت های مختلف چیدمان (مانند LTR و RTL) ، setArcDirection با گزینه های Clockwise ، CounterClockwise و Normal به همه عناصر قوس ( Arc ، ArcLine و ArcText ) اضافه کرد (مانند LTR و RTL).
  • با گسترش منطقه قابل استفاده از هر عنصری که از اصلاح کننده Clickable استفاده می کند حداقل 48dp توسط 48dp باشد ، دسترسی به همه اهداف لمسی بهبود یافته است.
  • بهبود PrimaryLayout و EdgeContentLayout با اضافه کردن setResponsiveContentInsetEnabled برای پشتیبانی بهتر از رفتار پاسخگو از این طرح بندی ها در اندازه های مختلف صفحه نمایش و بهبود قوام کاشی. هشدار Linter اضافه شده برای استفاده از این API ها با رفع سریع.
  • بهبود مقیاس/عدم مقیاس Text متن برای مقیاس بندی قلم غیرخطی Android 14.

تغییرات API

  • نام خانوادگی فونت پیش فرض ( DEFAULT_SYSTEM_FONT ) حذف می شود زیرا با استفاده از API preferredFontFamilies دلالت می کند. ( i39dab )
  • پارامتر منتقل شده به FontSetting.width باید مثبت باشد. ( i1266f )

نسخه 1.2.0-alpha05

26 ژوئن 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha05 منتشر می شود. نسخه 1.2.0-alpha05 شامل این تعهدات است.

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

  • روش hasText را به Material.CompactChip اضافه کنید. ( i6e8fc )

تغییرات API

  • FontFamily Const به جای کلاس سازنده خود در FontStyle قرار می گیرد. ( i06ced )
  • API FontSetting.weight به روز FontSetting.width . ( IA726C )

رفع اشکال

  • متون غیر قابل مقیاس در کتابخانه مواد اکنون به درستی با مقیاس بندی قلم غیرخطی Android 14 کار می کنند. ( i6601e )

نسخه 1.2.0-alpha04

29 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha04 منتشر می شود. نسخه 1.2.0-alpha04 شامل این تعهدات است.

تغییرات API

  • گوشه های نامتقارن API اضافه شده است تا بتواند شعاع هر گوشه را با 2 مقدار جداگانه مشخص کند. ( ICBD69 )
  • گسترش API FontSetting برای شامل موارد زیر است:
    • تنظیم ویژگی فونت مانند تنظیم قلم به صورت جدولی. ( if12b7 )
    • تنظیم تنوع قلم مانند تنظیم عرض سفارشی برای فونت های متغیر. ( i2b36d )
  • API خانواده قلم اضافه شده به FontStyle برای مشخص کردن لیست سفارش از خانواده های قلم که باید استفاده شود. ( IBA9F5 )
  • تغییر نام داد برای ارتفاع فضا بین محتوا و برچسب ثانویه در LayoutDefaults مواد که در ابتدا با "محتوای لبه" پیشوند شده بودند ، عمومی تر بودند زیرا می توان آنها را برای PrimaryLayout و EdgeContentLayout اعمال کرد. ( i4dc32 )

رفع اشکال

  • نامگذاری برای محورهای متغیر فونت از axisName به axisTag تغییر نام داد. ( i02ba3 )

نسخه 1.2.0-alpha03

14 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha03 منتشر می شود. نسخه 1.2.0-alpha03 شامل این تعهدات است.

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

  • API اضافه شده برای تنظیم مقادیر وزن سفارشی برای FontStyle . ( i7390a )

رفع اشکال

  • به دلیل نقشه هدف خالی ، خرابی را در getTouchDelegateInfo برطرف کنید. ( I2ACCF )

نسخه 1.2.0-alpha02

1 مه 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha02 منتشر می شود. نسخه 1.2.0-alpha02 شامل این تعهدات است.

تغییرات API

  • ما پشتیبانی از غیرفعال کردن بازخورد موج دار در عناصر قابل کلیک را اضافه کرده ایم. ( if1ede )
  • API برای تحول از ArcModifiers حذف شده است زیرا آنها از این ویژگی پشتیبانی نمی کنند ( IC0827 )
  • ArcDirectionProp Builder اکنون انتظار یک مقدار در سازنده را دارد. ( i76ada )
  • روش PlatformDataValues.Builder.putAll امکان ادغام یک PlatformDataValue را به روش دیگر امکان می دهد. ( i50ba3 )
  • Text#setIsScalable به Text#setScalable تغییر نام داده می شود. ( IF920E )
  • متن مواد می تواند تنظیم کند که آیا از اندازه مقیاس پذیر استفاده می کند (با تغییر اندازه قلم کاربر رشد می کند) یا خیر. ( IBC849 )
  • ما گزینه ای را برای تنظیم توضیحات محتوا روی TitleChip اضافه کرده ایم. ( i5d21f )
  • ثابت CompactChip برای کار صحیح فقط با نماد و به روزرسانی API برای اجازه این گزینه. ( i6589e )

رفع اشکال

  • مسئله داده های پلتفرم کپی بالقوه را در حین اولیه سازی برطرف کرد. ( IBA0FD )
  • برای بازیابی هزینه گره ، یک گیرنده جدید را به DynamicDataNode معرفی کنید. هزینه هنگام دستیابی به سهمیه گره پویا استفاده می شود. در حال حاضر ، گره هایی با مقادیر ثابت هزینه 0 خواهند داشت ، تمام گره های دیگر هزینه 1. ( IA33E1 )
  • منطق شمارش را از NO_OP_QUOTA_MANAGER حذف کنید. ( IB50B8 )
  • ما یک قانون LINT را برای گزارش یک هشدار اضافه کرده ایم که در هنگام استفاده PrimaryLayout بدون setResponsiveContentInsetEnabled استفاده می شود و رفع سریع را ارائه می دهیم. ( I12025 )
  • محدودیتی برای تعدادی از گره های بیان پویا وجود دارد. ( iffae8 )

نسخه 1.2.0-alpha01

6 مارس 2024

androidx.wear.protolayout:protolayout-*:1.2.0-alpha01 منتشر می شود. نسخه 1.2.0-alpha01 شامل این تعهدات است.

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

  • عناصر ProtoLayout Arc اکنون گزینه ای برای اضافه کردن ArcDirection ( Clockwise ، Counterclockwise یا Normal ) به آن دارند. افزودن این رفتار به Arc ، ArcLine یا ArcText رفتار آنها را در چیدمان RTL برطرف می کند. ( i90699 )
  • EdgeContentLayout با یک تنظیم کننده جدید setResponsiveContentInsetEnabled به روز شده است تا بتواند با دستورالعمل های UX ، سازگاری در کاشی ها را با داشتن برچسب اصلی در مکان ثابت در قسمت بالا و پاسخگو برای برچسب ها ، به هماهنگی بهتری برساند. ( i60175 )
  • ما به PrimaryLayout.setResponsiveContentInsetEnabled اضافه کرده ایم که در این طرح ، به برچسب اصلی ، برچسب ثانویه و تراشه پایین اضافه می کند تا از این محتوا خارج شود. ( I0C457 )
  • روش را برای از بین بردن حاشیه های بیرونی از CircularProgressIndicator اضافه می کند تا بتواند به عنوان یک مؤلفه کوچکتر مورد استفاده قرار گیرد. ( I55C06 )

تغییرات API

  • Tiles Renderer اکنون به طور پیش فرض ، بدون گزینه ای برای شامل آن ، تمام عناصر متن را بر روی همه عناصر متن حذف می کند. ( i3e300 )

رفع اشکال

  • مسئله تراز متن ثابت هنگام بیضوی ، فاصله نامه و تراز مرکزی همه در متن استفاده می شود. ( i716c7 )
  • برای مسئله ترسیم قوس Skia یک راه حل اضافه کنید. ( I08F09 )
  • جهت نقاشی ArcLine را برای طرح بندی RTL رفع کنید. ( i6c141 )

نسخه 1.1

نسخه 1.1.0

7 فوریه 2024

androidx.wear.protolayout:protolayout-*:1.1.0 منتشر می شود. نسخه 1.1.0 شامل این تعهدات است.

تغییرات مهم از 1.0.0

  • پشتیبانی شیب و بازنمایی بهتر از طول های بزرگتر از 360 درجه در ArcLine .
  • قالب بندی زمان تاریخ از مناطق مختلف زمانی برای انواع داده های پویا پشتیبانی می کند.
  • گزینه های بهتر اتو و بیضوی متن ، برای رسیدگی به متن کوتاه.
  • Spacer از ابعاد گسترش یافته با وزن اختیاری پشتیبانی می کند.
  • حاشیه نویسی نسخه Schema برای همه API های ProtoLayout .
  • منطقه هدف گسترده به هر عنصر Clickable تا 48 dp x 48 dp ، برای برآورده کردن نیازهای دسترسی.
  • بالشتک قلم به طور پیش فرض خاموش است و تنها رفتار در تمام عناصر متنی و اجزای مادی که حاوی متن هستند.

تغییرات اضافی

نسخه 1.1.0-RC01

24 ژانویه 2024

androidx.wear.protolayout:protolayout-*:1.1.0-rc01 منتشر می شود. نسخه 1.1.0-RC01 شامل این تعهدات است.

رفع اشکال

  • PlatformTimeUpdateNotifierImpl بلافاصله پس از فعال کردن به روزرسانی ، تیک می زند. ( i77145 )
  • CircularProgressIndicator برای چیدمان RTL ثابت شده است. از این پس ، در همه موارد در جهت عقربه های ساعت انجام می شود. ( i95ee3 )
  • برای مسئله ترسیم قوس Skia یک راه حل اضافه کنید. ( I08F09 )

نسخه 1.1.0-beta01

10 ژانویه 2024

androidx.wear.protolayout:protolayout-*:1.1.0-beta01 منتشر می شود. نسخه 1.1.0-beta01 شامل این تعهدات است.

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

نسخه 1.1.0-beta01 از SEAT ProtoLayout نشان می دهد که این نسخه از کتابخانه از ویژگی های کامل و API قفل شده است (به جز جایی که به عنوان تجربی مشخص شده است). پوشیدن Protolayout 1.1 شامل ویژگی های جدید و API های زیر است:

  • ArcLine اکنون با اضافه کردن Brush با SweepGradient و سایه روی درپوش از شیب پشتیبانی می کند تا با اضافه کردن Shadow در StrokeCap موجود ، طول بزرگتر از 360 درجه را نشان دهد.
  • DynamicInstant از قالب بندی زمان منطقه پشتیبانی می کند. DynamicInstant و DynamicDuration می تواند به عنوان انواع داده های حالت یا پلتفرم استفاده شود.
  • ویژگی خودکار برای اندازه متن که به تنظیم چندین اندازه در FontStyle.setSizes اجازه می دهد. در جایی که اندازه متن به طور خودکار بر اساس فضایی که در داخل والدین وجود دارد ، مقیاس می شود. علاوه بر این ، ما گزینه های بیضوی را برای متنی که با اضافه کردن TEXT_OVERFLOW_ELLIPSIZE و استهلاک TEXT_OVERFLOW_ELLIPSIZE_END سرریز می شود ، بهبود بخشیدیم.
  • اکنون Spacer از داشتن ابعاد گسترش یافته با وزن اختیاری پشتیبانی می کند. برای ساختمان ExpandedDimensionProp ما یک روش Helper Method DimensionBuilders.weight را اضافه کرده ایم.
  • پشتیبانی از عناصر مخفی کردن پویا و عناصر چیدمان با Modifier.visible . این شامل داشتن مقادیر پویا در BoolProp است.
  • اکنون تمام API های ProtoLayout دارای حاشیه نویسی نسخه Schema هستند و نسخه قبل از فراخوانی API جدیدتر قابل بررسی است.
  • هر عنصری که اکنون Clickable باشد ، منطقه مورد نظر خود را حداقل به 48x48 در رندر افزایش داده است تا از نیازهای دسترسی بهتر پشتیبانی کند.
  • به دنبال سایر مؤلفه های مواد و ابتکارات آهنگسازی ، ما اکنون به طور پیش فرض روی همه عناصر Text خاموش شده ایم. علاوه بر این ، AndroidTextStyle و تنظیم کننده های مرتبط از API عمومی حذف شده اند. با رفع اشکال زیر:
  • یک تنظیم کننده برای قرار دادن محتوای Edge در EdgeContentLayout اضافه کرد تا بتواند قبل از محتوای دیگر قرار گیرد.
  • به طور مداوم هنگام مواجهه با یک مقدار ناشناخته ناشناخته ، یک استثنا را پرتاب می کنید.
  • نتیجه یک عبارت را وقتی که یک مقدار عددی نامعتبر (NAN یا نامتناهی) به دست می آورد ، نامعتبر می شود یا یک ArithmeticException پرتاب می کند.

تغییرات API

  • به روزرسانی های API SweepGradient برای پذیرش رنگ یا ColorStops در سازنده امکان پذیر است. ( i6676f )

رفع اشکال

  • اضافه کردن یک API محدود و پشتیبانی از ارائه دهنده برای تنظیم جهت که عناصر قوس در آن ترسیم می شوند. ( idef5a )
  • پیش فرض RoundMode به Floor در FloatToInt32Node در هنگام نامشخص. در صورت عدم شناختگی RoundMode گره هنوز استثنائی خواهد بود. ( i1b2d8 )

نسخه 1.1.0-alpha04

13 دسامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha04 منتشر می شود. نسخه 1.1.0-alpha04 شامل این تعهدات است.

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

  • کلاس VersionInfo رابط Comparable را پیاده سازی نمی کند. ( i8d13c )
  • Renderer اکنون از گزینه TEXT_OVERFLOW_ELLIPSIZE پشتیبانی می کند. ( I7F085 )

تغییرات API

  • گزینه Overflow Option TEXT_OVERFLOW_ELLIPSIZE_END اکنون کاهش یافته است. لطفاً با رفتار بسیار مشابه از API TEXT_OVERFLOW_ELLIPSIZE استفاده کنید. ( i822d8 )
  • به دنبال سایر مؤلفه های مواد و ابتکارات آهنگسازی ، ما اکنون به طور پیش فرض روی همه عناصر متنی خاموش شده ایم. علاوه بر این ، AndroidTextStyle و تنظیم کننده های مرتبط از API عمومی حذف شده اند. ( I79094 ، IB0B03 ، I32959 ، IAF7D5 ، IFA298 ، I0A4AE ، IDA9D3 )
  • Modifier.hidden با Modifier.visible جایگزین می شود. visible ( i56902 )
  • FontStyle#setSizes اکنون به جای استدلال های SpProp INT را می پذیرد. ( I02B37 )

رفع اشکال

  • هنگام مواجهه با یک مقدار نامشخص یا ناشناخته ، یک استثنا را پرتاب کنید. ( i9d2cf )
  • Refactor DynamicTypeBindingRequest . ( I27B57 )
  • نتیجه یک عبارت را وقتی که یک مقدار عددی نامعتبر (NAN یا نامتناهی) به دست می آورد ، نامعتبر می شود یا یک ArithmeticException پرتاب می کند. ( i681ae )

نسخه 1.1.0-alpha03

29 نوامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha03 منتشر می شود. نسخه 1.1.0-alpha03 شامل این تعهدات است.

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

  • پشتیبانی آزمایشی را برای عناصر مخفی کردن/پنهان کردن پویا اضافه کنید ( I64A78 )
  • پشتیبانی از ارزش پویا را به BoolProp اضافه کنید ( I2FE96 )
  • اضافه کردن حاشیه نویسی نسخه Schema به API های ProtoLayout ( I0F03C )
  • گسترش API با گزینه جدید در TextOverflow برای بیضوی متن در یک ظرف والدین ثابت حتی در صورت عدم دستیابی به خطوط حداکثر (اما فضای کافی برای متن وجود ندارد). ( i110a9 )
  • روش Helper Method DimensionBuilders.weight برای ساختمان ExpandedDimensionProp با وزن. ( i4f72b )
  • DynamicInstant و DynamicDuration می تواند به عنوان انواع داده های حالت یا پلتفرم استفاده شود. ( i6819f )

تغییرات API

  • API را به روز کنید تا DynamicZonedDateTime پنهان شود و تمام عملیات خود را به DyanamicInstant منتقل کند ( I34B94 )
  • اکنون Spacer از ابعاد گسترده برای عرض/ارتفاع پشتیبانی می کند. ( IE7C94 )
  • پشتیبانی از پسوند منطقه هدف در Renderer ( I39C79 )

نسخه 1.1.0-alpha02

15 نوامبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha02 منتشر می شود. نسخه 1.1.0-alpha02 شامل این تعهدات است.

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

  • یک قسمت Shadow ArcLine StrokeCap به API اضافه کرد. ( i830ec )
  • گسترش API برای اینکه بتوانید عرض یا ارتفاع Spacer را برای گسترش مشخص کنید. ( i757ca )
  • ما یک API آزمایشی اضافه کرده ایم تا به طور خودکار اندازه متن را بر اساس فضایی که در داخل والدین دارد ، مقیاس بندی کند. ( ibbe63 )
  • پشتیبانی حداقل اندازه قابل کلیک ( I178E3 )
  • پشتیبانی رندر را برای Shadow StrokeCap ​​اضافه کرد. ( i48b17 )
  • پشتیبانی رندر را برای شیب جارو در ArcLine اضافه کنید. ( i4d5bb )

نسخه 1.1.0-alpha01

18 اکتبر 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha01 منتشر می شود. نسخه 1.1.0-alpha01 شامل این تعهدات است.

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

  • با پشتیبانی از SweepGradient ، یک گزینه برس را به Arcline اضافه کرد. ( IE7CE3 )
  • پشتیبانی اضافه شده برای قالب بندی زمان منطقه ای. ( ibfae0 )
  • Protos و بسته بندی های جاوا مورد نیاز برای قالب بندی زمان منطقه بندی شده. ( i97126 )
  • دریافت کننده های اضافه شده برای خواندن مقدار ذخیره شده در یک DynamicDataValue . ( IE6CEA )
  • یک تنظیم کننده برای قرار دادن محتوای Edge در EdgeContentLayout اضافه کرد تا بتواند قبل از محتوای دیگر قرار گیرد. ( IE8E8a )

رفع اشکال

  • هنگامی که یک عبارت با ثبت نام منبع داده های زمانی چندین بار به روز نشد ، مسئله را برطرف کرد. ( i8e1a8 )
  • در طی به روزرسانی های مختلف ، یک اشکال را به عنصر ریشه مرکز برطرف کنید. ( IE48F7 )
  • مقادیر محدودیت طرح بندی نشده (یا خالی) دیگر نادیده گرفته نمی شود. ( IBC785 )
  • کاهش تأخیر بین یک طرح قابل مشاهده و گره های خط لوله آن در حال شروع است. ( i38d4e )

نسخه 1.0

نسخه 1.0.0

9 آگوست 2023

androidx.wear.protolayout:protolayout-*:1.0.0 منتشر می شود. نسخه 1.0.0 شامل این تعهدات است.

ویژگی های اصلی 1.0.0

کتابخانه Protolayout API ها را برای ایجاد چیدمان و عباراتی معرفی می کند که می تواند در سطوح مختلف سیستم عامل استفاده شود. به عنوان مثال ، کتابخانه کاشی از این API ها برای پشتیبانی از اتصال داده های پلتفرم (برای به روزرسانی سریعتر داده های کاشی) و انیمیشن ها استفاده می کند.

نسخه 1.0.0-RC01

26 جولای 2023

androidx.wear.protolayout:protolayout-*:1.0.0-rc01 منتشر می شود. نسخه 1.0.0-RC01 شامل این تعهدات است.

  • برای مهاجرت از کاشی ها به ProtoLayout ، لطفاً دستورالعمل ها را در اینجا دنبال کنید.

تغییرات API

  • ما روشهای setLayoutConstraintForDynamicAnchorAngle و getLayoutConstraintForDynamicAnchorAngle را از عنصر قوس حذف کرده ایم. این روش ها به اشتباه اضافه شده اند و هیچ تاثیری در طرح ارائه شده ندارند. ( IF7D01 )
  • ما حداکثر عمق را محدود کرده ایم که یک طرح یک ProtoLayout می تواند به 30 LayoutElements تو در تو داشته باشد. ( i8a74b )

رفع اشکال

  • اگر DynamicColor برای یک SpanText تنظیم شده است ، یک چک را اضافه کرده ایم. ( i0e5bc )
  • روشن است که واحد منبع داده DAILY_CALORIES KCAL است. ( IAA785 )

نسخه 1.0.0-beta01

21 ژوئن 2023

androidx.wear.protolayout:protolayout-*:1.0.0-beta01 منتشر می شود. Version 1.0.0-beta01 contains these commits.

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

  • Allow setting clock for time binding tests. ( I05622 )

تغییرات API

  • PlatformDataReceiver.onData() and StateBuilders.Builder.addKeyToValueMapping now accept type-safe mapping of DynamicDataKey to DynamicDataValue rather than unsafe generics. That means that DynamicDataValue is now typed with its DynamicType . HEART_RATE_ACCURACY_X constants moved to the root of PlatformHealthSources , to match other Android constants positioning. HEART_RATE_ACCURACY_X int constants are now used directly in DynamicHeartRateAccuracy.constant() and DynamicHeartRateAccuracy.dynamicDataValueOf() instead of value constant. ( I82ff5 )
  • The PlatformHealthSources.Constants class was instantiable by mistake. اکنون این مشکل برطرف شده است. ( Icb849 )
  • PlatformTimeUpdateNotifier#setReceiver now receives Runnable instead of Supplier function and Executor to notify on. ( I9d938 )
  • We have changed the parameter type in the PlatformTimeUpdateNotifier#setReceiver from Callable to Supplier . ( I664bf )
  • CompactChip and TitleChip now support adding an icon to it. ( I5a01e )

رفع اشکال

  • Update Prop messages with dynamic fields to use oneof instead ( I81739 )
  • Reuse setters implementation for overloads that have setters ( Ied70c )
  • Properly record fingerprints in setters that have overloads ( I86ed2 )

نسخه 1.0.0-alpha11

June 7, 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha11 is released. نسخه 1.0.0-alpha11 حاوی این commit ها است.

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

  • We've added a PlatformDataKey for heart rate accuracy. ( I7f9b8 )

تغییرات API

  • Rename StateBuilders#getIdToValueMapping to getKeyToValueMapping and change the return type to Map<<AppDataKey<?>,DynamicDataValue> . ( Iaa7ae )
  • Make StateStore a final class ( I408ca )
  • TimeGateway interface has been replaced by PlatformTimeUpdateNotifier in protolayout-expression-pipeline library which provides desired frequency for updating time data. ( I60869 )
  • Rename register / unregisterForData in PlatformDataProvider to set / clearReceiver ( I14b02 )
  • In Material Text, getExcludeFontPadding has been renamed to hasExcludeFontPadding . ( Iea01d )
  • Setter for perfectly aligning label was added to all chip components. All chips now have min tappable target applied. ( I8ae92 )
  • LayoutDefaults#BUTTON_MAX_NUMBER has been renamed to MAX_BUTTONS . ( I84788 )
  • DAILY_DISTANCE is renamed to DAILY_DISTANCE_M . ( I4f758 )

رفع اشکال

  • Update Prop types docs to clarify why static value is enforced. Specify the default value used if static value wasn't provided. ( I155aa )
  • PlatformDataKey namespaces should follow Java style naming. ( I47bda )

نسخه 1.0.0-alpha10

24 مه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha10 is released. نسخه 1.0.0-alpha10 حاوی این commit ها است.

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

  • Add AppDataKey for accessing app pushed state; Add PlatformDataKey for accessing platform data; Add namespace support in StateStore . ( I7985e )
  • Support Equal and NotEqual operations for DynamicBool . ( I6a0c1 )

تغییرات API

  • FontStyles class is now final ( Iaa2ea )
  • LayoutElementBuilders#FontStyles has been deprecated. Please use androidx.wear.protolayout.Typography or create your own FontStyle . ( Ic929b )
  • Hide Action#Builder nested interface from Action interface. Implementations of Builder are already provided by LoadAction and LaunchAction classes. ( I1d70c )
  • Allow using DynamicFloat with FloatProp . Note that FloatProp do no require layout constraints as it's not used as a layout changing prop. ( I286ac )
  • The LoalAction and SetStateAction actions are removed as they were not really supported yet. ( I5d6a6 )
  • Added support for ARGB_8888 format for inline image resources. ( I8a07c )
  • Rename StateEntryValue to DynamicDataValue , and update the state APIS to use the DynamicDataKey ( If1c01 )
  • We are limiting the number of entries that are allowed in the StateStore in order to ensure that memory usage and state update time are well contained and controlled for each instance of the StateStore . As a result, the developer needs to ensure that they do not have more than MAX_STATE_ENTRY_COUNT entries in the map otherwise they will get an IllegalStateException when creating or updating the StateStore . ( Ibadb3 )
  • Hide OnLoadTrigger and OnConditionMetTrigger classes, and rename setTrigger to setCondition for OnConditionMetTrigger . ( Ibf629 )
  • For performance and compatibility reasons, the ProtoLayout renderers won't support the full set of features in AnimatedVectorDrawable resources. We're marking those APIs as experimental until we can define the supported set. ( Ic6daf )
  • Added dynamic types for daily distance, daily calories and daily floors. Keys for platform health sources are now under PlatformHealthSources.Keys ( Ib7637 )
  • The Easing.cubicBezier method replaces the CubicBezierEasing.Builder . With that the EasingFunction class is removed and the easing constants from that class are now directly accessible from the Easing interface. In addition setInfiniteRepeatable is replaced by INFINITE_REPEATABLE_WITH_RESTART and INFINITE_REPEATABLE_WITH_REVERSE ( Ib41e7 )
  • Implement PlatformDataProvider to provide heart rate and daily steps. SensorGateway interface is removed from public API. ( I55b84 )
  • Add PlatformDataProvider , and update StateStore to register to PlatformDataProvider when the provider's supported key is required by node from expression pipeline. ( Ib616a )
  • SensorGateway is no longer Closeable as it no longer maintains any state. ( I6b4f7 )
  • Allow using FloatProp with DynamicFloat for progress in CircularProgressIndicator . This is supported for renderers supporting version 1.2. Old renderers will fallback to the staticValue if provided, otherwise to 0 ( I0d91b )
  • MultiButtonLayout constants have been refactored into LayoutDefaults.MultiButtonLayoutDefaults class which now contains those for button sizes depending on a number of buttons in the layout. ( I13973 )
  • Support using StringProp with DynamicString in Material Text. This is supported for renderers supporting version 1.2. Old renderers will fallback to the provided static value. Update Text#getText return type from String to StringProp . ( I7275b )

نسخه 1.0.0-alpha09

10 مه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha09 is released. نسخه 1.0.0-alpha09 حاوی این commit ها است.

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

  • We've added an experimental extension layout element. Note that this can't be used by default and requires a renderer extension capable of understanding the layout element. ( I6581d )
  • Added StrokeCap support for ArcLine . ( I94951 )
  • Added support for Conditional Instant operation. ( I489a7 )
  • Added support for Conditional Duration operation. ( Iab469 )
  • Added support for creating duration from seconds. ( Ib5fa1 )

تغییرات API

  • enable/disablePlatformSource methods have been removed from DynamicTypeEvaluator . The caller should be responsible for updates. ( I78c6d )
  • Allow capping the size of bound data types. ( Ie2966 )
  • Add support for dynamic content description in protolayout-material . ( I62c8e )
  • Use long and @IntRange for duration and delay in AnimationParameters. ( I388b6 )

نسخه 1.0.0-alpha08

19 آوریل 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha08 is released. نسخه 1.0.0-alpha08 حاوی این commit ها است.

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

  • AndroidTextStyle has been added to LayoutElementBuilders . ( I8d967 )
  • We have added support for setting excluding font padding in ProtoLayout Material Text. ( I17f5d )
  • ARGB_8888 is now supported for inline images. ( I18c1e )
  • DynamicColor now supports onCondition operation. ( I10927 )

تغییرات API

  • Support custom duration for reverse animation ( I3251f )
  • We've added the SemanticDescription modifier. In addition, ContentDescription is not bindable. ( I3f1d )
  • The DynamicBool.isFalse() method is now replaced with DynamicBool.negate() and the DynamicBool.isTrue() is removed. In addition NaN DynamicFloat values and narrowing a DynamicInt32 to a DynamicFloat now emit an invalid dynamic result. ( I6ac1e )
  • Int and float formatters now use the Builder pattern. ( Ieb213 )

رفع اشکال

  • Fallback static value has been removed from animatable fields. ( Ifcb01 )
  • DynamicTypeValueReceiver#onPreUpdate has been removed. ( I2dc35 )
  • Length of Strings in dynamic expressions are now capped. ( I4c93 )
  • The gradle dependencies are now correctly set to api instead of implementation when required. ( I40503 )

نسخه 1.0.0-alpha07

5 آوریل 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha07 is released. نسخه 1.0.0-alpha07 حاوی این commit ها است.

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

  • Add dynamic value support to StringProp ( I04342 )
  • Mark bindable layout elements ( Ia110b )

تغییرات API

  • sensorGateway#registerSensorGatewayConsumer takes data type as a parameter instead of method in Consumer. ( Icf314 )
  • ObservableStateStore has been renamed to StateStore . ( Ieb0e2 )
  • Added DynamicTypeEvaluator.Builder instead of constructor arguments to allow more optional arguments, including ObservableStateStore which now defaults to an empty store. ( I6f832 )
  • Refactored order of parameters in DynamicTypeEvaluator . ( Ic1ba4 )

رفع اشکال

  • Correctly propagate signals from platform sensor sources to downstream nodes ( I5a922 )

نسخه 1.0.0-alpha06

22 مارس 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha06 is released. نسخه 1.0.0-alpha06 حاوی این commit ها است.

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

  • We've added an experimental API for using heart rate and daily steps in dynamic expressions ( Ifd711 )
  • We have added support for reverse and forward delay for animations. ( Ic25f7 )
  • We've added DynamicColor support to Border and Background
  • We've added dynamic value support to types in DimensionBuilder
  • Layout and components from tiles-material are moving to protolayout-material

تغییرات API

  • LoadActionListener has been added to ProtoLayoutViewInstance . ( If7806 )

رفع اشکال

  • Added FloatNodesTest ( Id7281 )
  • Fix renderer crash when unable to load structured bitmap.

نسخه 1.0.0-alpha05

8 مارس 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha05 is released. نسخه 1.0.0-alpha05 حاوی این commit ها است.

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

  • We've added an experimental "content update" animation to the Modifiers object. This animation will trigger whenever the element (with this modifier) or one of its children changes during a layout update. ( bd03e5d )

تغییرات API

  • We've added forwardRepeatDelayMillis and reverseRepeatDelayMillis to Repeatable . We've also renamed delayMillis in AnimationSpec to startDelayMillis ( Ifb266 )
  • DynamicTypeEvaluator.bind methods now accept an Executor. ( I346ab )
  • We've added the startEvaluation method to the BoundDynamicType to trigger the evaluation after the dynamic type is bound. ( I19908 )

رفع اشکال

  • The Animator object will be reused for subsequent animations of a single element. ( Ia3be9 )

نسخه 1.0.0-alpha04

22 فوریه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha04 is released. نسخه 1.0.0-alpha04 حاوی این commit ها است.

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

  • ObservableStateStore now informs the listeners when a key is removed too.
  • We've added renderer schema version and font scale to DeviceParameters (which can be used to conditionally create layouts in response to different versions and font settings).
  • We've added support for animating DynamicInt32 values ( I05485 )
  • We've added OnLoad and OnConditionalMet triggers. These can be used to start animations that support a trigger.
  • We've added layout weight for expanded dimensions and min size for wrapped dimensions.
  • We've added duration and instant dynamic types. These can be used to represent a time instant or duration in a dynamic expression.
  • We've added support for AnimatedVectorDrawable and SeekableAnimatedVectorDrawable as layout resources.

تغییرات API

  • Sensor data requires API 29+. ( I8099e )
  • We've added two launchAction helper methods (for launching Activities).

رفع اشکال

  • Rename set/getSpec to set/getAnimationSpec in Tiles animation ( I3d74b )

نسخه 1.0.0-alpha03

8 فوریه 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha03 is released. نسخه 1.0.0-alpha03 حاوی این commit ها است.

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

  • We have added toByteArray() and fromByteArray() to Dynamic types in protolayout-express library.
  • We have added toString() to Dynamic types in protolayout-expression library.
  • We have added evaluation support for Dynamic types. The DynamicTypeEvaluator class from the protolayout-expression-pipeline library can be used to evaluate (and receive updated values) for a previously create Dynamic type ( DynamicString , DynamicFloat , …)
  • When animations can't be played (either because they are disabled by the evaluator, or the number of running animations has reached the set limit), the static values set on the animatable node will be used to replace the animation.

نسخه 1.0.0-alpha02

25 ژانویه 2023

androidx.wear.protolayout:protolayout:1.0.0-alpha02 , androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02 , and androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02 are released. نسخه 1.0.0-alpha02 حاوی این commit ها است.

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

  • Layout builders from androidx.wear.tiles:tiles are moving to androidx.wear.protolayout:protolayout . The ones in androidx.wear.tiles:tiles will be deprecated in one of the next alpha releases.

نسخه 1.0.0-alpha01

11 ژانویه 2023

androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01 and androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01 are released. نسخه 1.0.0-alpha01 حاوی این commit ها است.

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

  • This release introduces a new library "ProtoLayout Expression" for creating expressions from dynamic variables.