wear protolayout

  
הספרייה הזו מאפשרת להגדיר קבוצה של פריסות ממשק משתמש וביטויים שאינם ממשק משתמש, שיוצגו או יוערכו בפלטפורמות מרוחקות.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫28 בינואר 2026 1.3.0 - - ‎1.4.0-alpha05

הצהרה על יחסי תלות

כדי להוסיף תלות ב-wear-protolayout, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.

אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:

Groovy

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

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

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

Kotlin

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

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

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

מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.

יצירת דיווח על בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.

גרסה 1.4

גרסה ‎1.4.0-alpha05

‫28 בינואר 2026

androidx.wear.protolayout:protolayout-*:1.4.0-alpha05 מופץ. גרסה ‎1.4.0-alpha05 מכילה את השמירות האלה.

שינויים ב-API

תיקוני באגים

  • פתרנו את הבעיה בטיפול במשאבים על ידי הסרת ProtoLayoutScope עם שמירת מצב מ-TileService. ‫(I5dc0a, ‏ b/474614772)

גרסה ‎1.4.0-alpha04

‫14 בינואר 2026

androidx.wear.protolayout:protolayout-*:1.4.0-alpha04 מופץ. גרסה ‎1.4.0-alpha04 מכילה את השמירות האלה.

שינויים ב-API

  • הוצאנו משימוש את העזרים לתמונות Material3 לטובת עומסים חדשים שמשתמשים ב-ProtoLayoutScope ובמושג משופר של טיפול במשאבים, שבו אפשר להוסיף את ImageResource ישירות בפריסה עצמה, וכך אין צורך בשיטה onTileResourcesRequest למיפוי משאבים. כדי ליהנות מהחוויה הטובה ביותר, מומלץ להשתמש בה עם androidx.wear.tiles.Material3TileService שנוספה בגרסה Wear Tiles 1.6-alpha04. ‫(I8198c, ‏ b/440376391)

גרסה ‎1.4.0-alpha03

‫17 בדצמבר 2025

androidx.wear.protolayout:protolayout-*:1.4.0-alpha03 מופץ. גרסה ‎1.4.0-alpha03 מכילה את השמירות האלה.

תיקוני באגים

  • השוואה בין שני סוגי משאבים כדי לטפל במשאבים בצורה טובה יותר ולשפר את הביצועים מתבצעת עכשיו באמצעות שיטות הגיבוב והשוואה האופטימליות. (82f21b2f)

גרסה ‎1.4.0-alpha02

‫22 באוקטובר 2025

androidx.wear.protolayout:protolayout-*:1.4.0-alpha02 מופץ. גרסה ‎1.4.0-alpha02 מכילה את השמירות האלה.

תכונות חדשות

  • נוסף מקור חדש של אירועים בפלטפורמה (isInAmbientMode) שמתאר אם המכשיר במצב אווירה או לא (Ief832)

שינויים ב-API

  • התג PendingIntent clickable מקבל עכשיו פעולת גיבוי (LoadAction/LaunchAction) לשימוש במקרים שבהם PendingIntent לא נתמך על ידי רכיב ה-Renderer‏ ProtoLayout. פעולת הגיבוי תזוהה אוטומטית ותמוקם בפריסה אם גרסת ה-Renderer נמוכה מהגרסה שתומכת ב-PendingIntent. (I6eee2, b/450259727)
  • השדה protoLayoutScope בתוך MaterialScope הוא עכשיו NonNull, כדי שיהיה קל יותר להשתמש בו כשיוצרים את MaterialScope באמצעות materialScopeWithResources. בנוסף, יש פונקציה hasProtoLayoutScope לבדיקה אם הוא קיים. (I1858f, ‏ b/450067019)

גרסה ‎1.4.0-alpha01

‫24 בספטמבר 2025

androidx.wear.protolayout:protolayout-*:1.4.0-alpha01 מופץ. גרסה ‎1.4.0-alpha01 מכילה את השמירות האלה.

תכונות חדשות

  • נוספה שיטת עזר ל-LayoutModifier שגורמת לרכיב לדהות פנימה כשהמשבצת הופכת לגלויה. (I38531, ‏ b/390345969)
  • הוספנו את materialScopeWithResources כדי לתמוך במושג M3 MaterialScope שגם מטפל ברישום אוטומטי של משאבים. בנוסף, הוספנו שיטות עזר חדשות לתמונות (backgroundImage avatarImage וסמל) שמבטלות את הצורך לרשום משאבים באופן ידני ב-onTileResourceRequest כשמשתמשים בהן. (I525bd, b/428692714)
  • ProtoLayout Kotlin helpers for Image and ImageResources for usage with ProtoLayoutScope and automatic resource registration. (Iada82, ‏ b/430584304)
  • נוספה פונקציית getter כדי לקבל את מספר מאפייני Lottie שמותרים בהתאמה אישית של אנימציית Lottie אחת. (I73733, b/436532706)
  • הוספת API ב-AndroidLottieResourceByResId כדי לאפשר התאמה אישית של אנימציית Lottie באמצעות מאפיינים, והוספת API ליצירת מאפיין עבור משבצת של ערכת נושא עם מזהה המשבצת לצבע שצוין. (I301b3, b/423581481)
  • הוספת ממשקי API של ספקים לקבלת PendingIntent כפעולת קליק (I01978, ‏ b/433802488)
  • הוספת API חדש ב-Image.BuildersetImageResource כדי להגדיר אובייקט משאב ישירות לתמונה ב-onTileRequest, בלי צורך לרשום אותו במיפוי ב-onTileResourcesRequest. ‫(Ifa69a, ‏ b/428693523)
  • הוספנו את הרעיון של ProtoLayoutScope כדי להתכונן לטיפול טוב יותר במשאבים ב-Tiles. (I132ce, ‏ b/428692423)
  • ProtoLayout Material3 MaterialScope חושף עכשיו את השדה Context כציבורי, לשימוש בשיטות במסגרת, ללא צורך בהעברתו. (I0e5cc, b/414559956)
  • הפיכת ממשקי API סמנטיים של כותרות לציבוריים (I75299, b/413653475)
  • חשיפת קבועי ARC_DIRECTION_* כציבוריים לשימוש ב-Arc/ArcLine/ArcText/DashedArcLine. (I83959, b/427556439)

שינויים ב-API

  • הוצאנו משימוש את השיטות Image.Builder() ו-Image.Builder.setResourceId לטובת ה-API החדש לרישום אוטומטי של משאבים, שזמין בממשקי ה-API‏ Image.Builder(ProtoLayoutScope) ו-Image.Builder.setImageResource. ה-API החדש מבטל את הצורך בהחלפת השיטה onTileResourcesRequest. (I7bfe6, b/432758526)
  • העברנו ממשקי API ליצירת ProtoLayoutScope ממוגבלים לציבוריים. עם זאת, לא צריך להשתמש בהם כי המערכת כבר מטפלת בשיחות האלה. (I1d8e8, b/432758251)

תיקוני באגים

  • הוספת הטמעה לתמיכה ב-PendingIntent ב-ProtoTiles (I38167, ‏ b/430610429)
  • מוסיפים את אמצעי התשלום invalidateLayout. (Ief898)
  • העברת ברירת המחדל של minSdk מ-API 21 ל-API 23 (Ibdfca, ‏ b/380448311, ‏ b/435705964, ‏ b/435705223)
  • ImageResource כולל עכשיו את השיטות hashCode ו-equals. (I650ee, ‏ b/428692423, ‏ b/428693523)
  • הוספת הודעת proto חדשה PendingIntentAction ו-wrapper builder שלה (Ie2aca, ‏ b/427643502)
  • להקטין את התדירות שבה נוצרת מכונת ZoneId. (I284d3)
  • החלת תיאור תוכן שמוגדר כברירת מחדל על המשבצת היחידה textButton. ‫(I0dc8a, b/415001534)
  • תיקון החישובים להתאמת מספר השורות המקסימלי בצד הרנדר. (I933bc, ‏ b/414353620)

גרסה 1.3

גרסה 1.3.0

‫4 ביוני 2025

androidx.wear.protolayout:protolayout-*:1.3.0 מופץ. גרסה 1.3.0 מכילה את השמירות האלה.

שינויים חשובים מאז גרסה 1.2.0

  • עיצוב Material 3 מגיע לשעון, עם רכיבים ופריסות שעברו אופטימיזציה לתצוגה העגולה וניתנים להתאמה בצורה מתאימה מגודל מסך קטן לגדול
    • זה כולל ספריית protolayout-material3 בלבד ב-Kotlin עם ממשקי API דומים יותר ל-Compose לרכיבים ולתכונות הבאים:
    • עיצוב של צבע דינמי שמגיע מהמערכת ומתצוגת השעון עם העיצוב העדכני ביותר של Material3 לצבעים, לצורות ולטיפוגרפיה
    • MaterialScope כדי לטפל בכל ברירות המחדל המבוססות על דעות ולהתאים אישית בקלות רבה יותר
    • iconEdgeButton, textEdgeButton
    • iconButton, textButton, button, imageButton, avatarButton, compactButton
    • titleCard, appCard, graphicDataCard, iconDataCard, textDataCard
    • circularProgressIndicator, segmentedCircularProgressIndicator
    • primaryLayout, buttonGroup
    • כל הרכיבים פועלים בכל רמות ה-SDK ובכל גרסת ProtoLayout Renderer, ומספקים חלופות סבירות במקרים הרלוונטיים
  • ממשקי API ידידותיים יותר ל-Kotlin, דומים ל-Compose, לרכיבי ProtoLayout בסיסיים
    • LayoutModifier עם אפשרות להוסיף את רוב התנאים כפונקציות משורשרות (padding, ‏ contentDescription (כולל clearSemantics), ‏ background, ‏ clip, ‏ opacity וכו'), שאפשר להמיר לאובייקט Modifiers הקיים
    • LayoutColors ו-LayoutString כסוגים עם תמיכה קלה יותר בשימוש בשדות ובאילוצים דינמיים
    • text וגם fontStyle
    • תמיכה משופרת במפות עבור StateBuilder, כולל DynamicDataMap ושיטות ליצירת אובייקטים כמו intAppDataKey, כדי ליצור אובייקטים של AppDataKey בקלות רבה יותר
  • אנימציות Lottie תומכות באפשרות להגדיר טריגרים שונים להפעלת האנימציה, למשל כשהפריסה נטענת או כשהפריסה הופכת לגלויה
    • תמיכה משופרת בגרדיאנטים:
    • ‫Linear gradient API כחלק מ-Brush שאפשר להשתמש בו בשינויים של Background לרכיבים כמו Box,‏ Spacer וכו' …
    • הגדרה שמאפשרת שימוש בערכי צבע דינמיים ב-ColorStop שמשמשים להדרגתיות לינארית ולהדרגתיות של מעגל
    • התכונה 'מעבר צבעים קשתי' באובייקטים קשתיים תומכת עכשיו בצבעים דינמיים ובזוויות התחלה וסיום
  • ‫Platform data binding ב-protolayout-expression כדי לקבל מידע בכל פעם שמשתנה הנראות של הפריסה. למשל, אפשר להשתמש בזה כדי להסתיר חלקים מסוימים של הפריסה בזמן שמחליקים את האריח
  • ספריית הבדיקות – protolayout-testing – נוספה כדי לתמוך בכיסוי קל יותר של בדיקות יחידה לכל רכיבי ProtoLayout
  • רכיב חדש DashedArcLine עם קבוצת תכונות משופרת, כך שאפשר להשתמש במקפים בקו, בניגוד לרכיב הקיים ArcLine
  • תמיכה בהגדרת האורך של ArcSpacer במימד DP במקום במעלות
  • נוסף ציר העיגול FontSetting שרלוונטי לחלק מהגופנים

גרסה ‎1.3.0-rc01

‫20 במאי 2025

הגרסה androidx.wear.protolayout:protolayout-*:1.3.0-rc01 יוצאת ללא שינויים מהגרסה הקודמת. גרסה ‎1.3.0-rc01 מכילה את השמירות האלה.

גרסה ‎1.3.0-beta02

‫7 במאי 2025

androidx.wear.protolayout:protolayout-*:1.3.0-beta02 מופץ. גרסה ‎1.3.0-beta02 מכילה את השמירות האלה.

תיקוני באגים

  • ביצענו שיפור חשוב בערכי העיצוב של הטיפוגרפיה שחלים על API 36 ומעלה. הסיבה לכך היא שמה-API ברמה 36, כל הרכיבים של Tiles יהיו בפונט המערכת, ולכן השינוי הזה משפר את העקביות בקרוסלת Tiles. (If316f)
  • הפונקציות ליצירת Text,‏ Spacer, ‏ ArcLine ו-DashedArcLine לא יפעילו חריגה אם לא מוגדרים ערכים דינמיים ל-layoutConstraints. שימו לב: במעבדי תצוגה ישנים עדיין נדרשת הגדרה של layoutConstraints, והם יתעלמו מכל ערך דינמי שלא הוגדר בו layoutConstraints. (Ic52e8)
  • מוסיפים את משנה הסמנטיקה של הכותרת כדי לציין שרכיב פריסה הוא כותרת לקטע תוכן למטרות נגישות, ומסמנים את הטקסט במשבצת הכותרת של primaryLayout ככותרת נגישות כברירת מחדל. (Iae1fb)
  • שיפורים אחרונים בחוויית המשתמש של primaryLayout, שבהם המרווח בין משבצת הכותרת למשבצת הראשית קטן יותר במסכים קטנים – 4dp במקום 6dp. (I0e056)
  • החלת תיאור תוכן ברירת מחדל על textEdgeButton. (Ifaf8b)
  • עדכון קל של הריווח הפנימי של avatarButton. (I0910b)

גרסה ‎1.3.0-beta01

‫9 באפריל 2025

androidx.wear.protolayout:protolayout-*:1.3.0-beta01 מופץ. גרסה ‎1.3.0-beta01 מכילה את השמירות האלה.

תכונות חדשות

גרסה 1.3.0-beta01 של Wear ProtoLayout מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול (למעט במקרים שבהם הוא מסומן כניסיוני). ‫Wear ProtoLayout 1.3 כולל את הפונקציות והממשקי API החדשים הבאים:

  • עיצוב Material 3 מגיע לשעון, עם רכיבים ופריסות שעברו אופטימיזציה לתצוגה העגולה וניתנים להתאמה בצורה מתאימה מגודל מסך קטן לגדול
    • זה כולל ספריית protolayout-material3 בלבד ב-Kotlin עם ממשקי API דומים יותר ל-Compose לרכיבים ולתכונות הבאים:
    • עיצוב של צבע דינמי שמגיע מהמערכת ומתצוגת השעון עם העיצוב העדכני ביותר של Material3 לצבעים, לצורות ולטיפוגרפיה
    • MaterialScope כדי לטפל בכל ברירות המחדל המבוססות על דעות ולהתאים אישית בקלות רבה יותר
    • iconEdgeButton, textEdgeButton
    • iconButton, textButton, button, imageButton, avatarButton, compactButton
    • titleCard, appCard, graphicDataCard, iconDataCard, textDataCard
    • circularProgressIndicator, segmentedCircularProgressIndicator
    • primaryLayout, buttonGroup
    • כל הרכיבים פועלים בכל רמות ה-SDK ובכל גרסה של ProtoLayout Renderer, ומספקים חלופות סבירות במקרים הרלוונטיים
  • ממשקי API ידידותיים יותר ל-Kotlin, דומים ל-Compose, לרכיבי ProtoLayout בסיסיים
    • LayoutModifier עם אפשרות להוסיף את רוב התנאים כפונקציות משורשרות (padding, ‏ contentDescription (כולל clearSemantics), ‏ background, ‏ clip, ‏ opacity וכו'), שאפשר להמיר לאובייקט Modifiers הקיים
    • LayoutColors ו-LayoutString כסוגים עם תמיכה קלה יותר בשימוש בשדות ובאילוצים דינמיים
    • text וגם fontStyle
    • תמיכה משופרת במפות עבור StateBuilder, כולל DynamicDataMap ושיטות ליצירת אובייקטים כמו intAppDataKey, כדי ליצור אובייקטים של AppDataKey בקלות רבה יותר
  • אנימציות Lottie תומכות באפשרות להגדיר טריגרים שונים להפעלת האנימציה, למשל כשהפריסה נטענת או כשהפריסה הופכת לגלויה
    • תמיכה משופרת בגרדיאנטים:
    • ‫Linear gradient API כחלק מ-Brush שאפשר להשתמש בו בשינויים של Background לרכיבים כמו Box,‏ Spacer וכו' …
    • הגדרה שמאפשרת שימוש בערכי צבע דינמיים ב-ColorStop שמשמשים להדרגתיות לינארית ולהדרגתיות של מעגל
    • התכונה 'מעבר צבעים קשתי' באובייקטים קשתיים תומכת עכשיו בצבעים דינמיים ובזוויות התחלה וסיום
  • ‫Platform data binding ב-protolayout-expression כדי לקבל מידע בכל פעם שמשתנה הנראות של הפריסה. למשל, אפשר להשתמש בזה כדי להסתיר חלקים מסוימים של הפריסה בזמן שמחליקים את האריח
  • ספריית הבדיקות – protolayout-testing – נוספה כדי לתמוך בכיסוי קל יותר של בדיקות יחידה לכל רכיבי ProtoLayout
  • רכיב חדש DashedArcLine עם קבוצת תכונות משופרת, כך שאפשר להשתמש במקפים בקו, בניגוד לרכיב הקיים ArcLine
  • תמיכה בהגדרת האורך של ArcSpacer במימד DP במקום במעלות
  • נוסף ציר העיגול FontSetting שרלוונטי לחלק מהגופנים

גרסה ‎1.3.0-alpha10

‫12 במרץ 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha10 מופץ. גרסה ‎1.3.0-alpha10 מכילה את השמירות האלה.

תכונות חדשות

  • הוספת כלי עזר למברשת ב-kotlin Background Modifier. (I995de)
  • שדה ההקשר של Android, שהוא שדה חובה, הפך לציבורי ב-MaterialScope כדי לאפשר שימוש קל יותר בפונקציות של מפתחים שיוצרים רכיבים לאריחים של Material3. (I7df73)

שינויים ב-API

  • שינוי השם של api platformVisibilityStatus ל-PlatformEventSources.isLayoutVisible והוספה של API ניסיוני חדש PlatformEventSources.isLayoutUpdatePending. (Ie1e04)

תיקוני באגים

  • השוליים של primaryLayout מעוגלים עכשיו כלפי מעלה בצורה נכונה, מה שיכול להשפיע על פריסות מסוימות עד 2dp פחות במקום העיקרי. (I8f5d3)
  • הבהרה לגבי עיצוב ברירת המחדל של צבעים דינמיים ברכיבי ProtoLayout Material3. (Iff5f3)
  • הגופנים Typography.NUMERAL_* כבר לא מוגדרים כברירת מחדל כגופנים טבלאיים או כגופנים ברוחב קבוע. אם הטקסט מונפש, מומלץ מאוד להוסיף לו את ההגדרה FontSetting.tabularNum(). בכל המקרים האחרים, אין צורך באפשרות הזו של גופן ברוחב קבוע, ואם לא משתמשים בה יהיו יותר תווים זמינים. (Id3cd9)
  • הבהרה לגבי עיצוב ברירת המחדל של צבעים דינמיים ברכיבי ProtoLayout Material3. (I9d831)

גרסה ‎1.3.0-alpha09

‫26 בפברואר 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha09 מופץ. גרסה ‎1.3.0-alpha09 מכילה את השמירות האלה.

תכונות חדשות

  • נוספו משנים ניסיוניים ל-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 tiles renderer. (I88190)

גרסה ‎1.3.0-alpha08

‫12 בפברואר 2025

androidx.wear.protolayout:protolayout-*:1.3.0-alpha08 מופץ. גרסה ‎1.3.0-alpha08 מכילה את השמירות האלה.

תכונות חדשות

  • הוספת פרמטר של רשימה FontSetting לטקסט Material3. (Ic102d)
  • הוספנו את המחלקה DynamicDataMap שStateBuilder תומכת עכשיו בממשק API משופר של Kotlin עם בטיחות סוגים למצבי אפליקציה (I012ba)
  • נוספו שיטות ליצירת אובייקטים, כמו intAppDataKey, כדי ליצור אובייקטים של AppDataKey בקלות רבה יותר (Icea2a)
  • ל-DynamicDataValue יש עכשיו method hasValueOfType(Class<?>) בנוסף ל-method hasInt/hasColor/.... (I4f7a6)
  • הוספנו את errorDim ל-Material3 ProtoLayout ColorScheme, לשגיאות בעדיפות גבוהה או לפעולות חירום כמו התראות בטיחות. (Ia17bb)
  • הוספנו אמצעי הגנה מפני קריסה כשניגשים להגדרה הגלובלית של הפחתת התנועה, שהופעלה בפלטפורמות מסוימות שבהן ההגדרה הזו לא סופקה. (I01e2c)

שינויים ב-API

  • השם של addKeyToValueMapping שונה ל-addToStateMap והוסרו השיטות DynamicDataMap.put כי הן היו מיותרות. (Ibe9dd)
  • הטיפוגרפיה של Material3 תומכת עכשיו בציר משתנה של עיגול עבור גופני מערכת שתומכים בציר הזה. ‫ProtoLayout FontSetting תומך בציר העיגול עבור גופנים שתומכים בציר הזה. (I33eb5)
  • השם של multilineAlignment שונה ל-alignment בשיטת הטקסט Material3. (I2b66b)
  • עדכון האינדיקטור של ההתקדמות המעגלית לסוג Box, וגם ציון mainContent ב-constructGraphic כסוג Box ‏ (I5a3dc)
  • שיפור התמיכה בשימוש באינדיקטור של התקדמות מעגלית בתרשים (I039db)

תיקוני באגים

  • הגדרה של ערכים דינמיים ב-ColorStop וגם לזוויות ההתחלה והסיום ב-SweepGradient. (I0146d)
  • תיקונים ב-Docs. (I4a63a)
  • רכיבי Material 3 עודכנו (graphicCard ו-avatarButton) כדי לספק חלופה כשאין תמיכה במימד ההרחבה weight (למשל, בגרסאות שמתחת ל-API 33). רכיב הטקסט עודכן כך שיחזור ל-TEXT_OVERFLOW_ELLIPSIZE_END אם TEXT_OVERFLOW_ELLIPSIZE לא נתמך על ידי רכיב הרינדור. (I19e2c)
  • עדכון של Docs ל-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)
  • עכשיו אפשר להתאים אישית את השוליים (בצדדים ובמקרים מסוימים גם למטה) ב-Material3 primaryLayout. (Ib22f6)
  • מוסיפים את הגרסה המפולחת של אינדיקטור ההתקדמות המעגלי. (I6a648)
  • הוספנו רכיב כפתור קומפקטי ל-ProtoLayout Material3. (Ia3c5c)
  • נוספו רכיבים של לחצן בצורת גלולה ולחצן תמונה ל-ProtoLayout Material3. (Ifb88a)

שינויים ב-API

  • השם של LayoutModfier.foldIn שונה ל-foldRight כדי לשקף טוב יותר את ההתנהגות הצפויה שלו (Idf242)
  • הטריגר VisibleOnce נמצא עכשיו בשלב ניסיוני. (Ib2d26)
  • הסרה של withOpacity מה-API הציבורי כי יש חלופה של ספריית גרפיקה. (I030c2)
  • שמות השיטות ברמה העליונה ב-LayoutString.kt וב-LayoutColor.kt שונו לשמות שמתאימים ל-Java. (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 מכילה את השמירות האלה.

תכונות חדשות

  • LayoutColor כדי לתמוך בסוגי צבעים סטטיים ודינמיים (I4c89b)
  • נוסף רכיב ProtoLayout Material3 textButton. (Id680d)
  • מוסיפים את הרכיב iconButton ProtoLayout Material3. (Ica3f0)
  • הוספנו רכיב של מאגר לחצנים מסוג Material3 של ProtoLayout. (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)
  • נוסף רכיב ProtoLayout Material3 appCard. (Id4c57)
  • הפשטה של EdgeButtonColors ל-ButtonColors. (I83624)
  • נוסף רכיב ProtoLayout Material3 titleCard. (I2dc72)

שינויים ב-API

  • ‫ProtoLayout Material3 API מקבל עכשיו LayoutString כדי לתמוך בטקסטים סטטיים ודינמיים. (I9c24a)

תיקוני באגים

  • הוספת הטמעה של רכיב עיבוד לניפוח DashedArcLine (I0c700)
  • שינוי ב-Renderer כדי לאפשר ל-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)

תיקוני באגים

  • הספרייה הזו משתמשת עכשיו בהערות לגבי ערכי null של JSpecify, שהן הערות לשימוש בסוג. מפתחים ב-Kotlin צריכים להשתמש בארגומנט המהדר הבא כדי לאכוף שימוש נכון: -Xjspecify-annotations=strict (זו ברירת המחדל החל מגרסה 2.1.0 של מהדר Kotlin). (Id1f9b, b/326456246)

גרסה ‎1.3.0-alpha04

‫13 בנובמבר 2024

androidx.wear.protolayout:protolayout-*:1.3.0-alpha04 מופץ. גרסה ‎1.3.0-alpha04 מכילה את השמירות האלה.

תכונות חדשות

  • הצורה של Material3 עודכנה כך שתהיה מחלקה עם שדות שמכילים את הערך בפועל של הפינה, כמו ב-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 מכילה את הקודים האלה.

תכונות חדשות

  • גרסה ראשונית של ספריית 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.

External Contribution

גרסה ‎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 Tile. (I08e94)

גרסה 1.2

גרסה 1.2.1

‫16 באוקטובר 2024

androidx.wear.protolayout:protolayout-*:1.2.1 מופץ. גרסה 1.2.1 מכילה את השמירות האלה.

תיקוני אבטחה

  • החל מהשינוי הזה, 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 עתידיים.
  • תמיכה נוספת בשינויים:
    • משנה את המאפיינים של הרכיב, כולל תרגום, סיבוב ושינוי גודל, עם או בלי אנימציות.
    • ציון ערכים שונים (אופקיים ואנכיים) לכל רדיוס פינה.
  • שיפרנו את הנגישות של כל יעדי המגע על ידי הרחבת האזור שניתן להקשה של כל אלמנט שמשתמש בשינוי Clickable כך שיהיה לפחות 48dp על 48dp.
  • שיפרנו את PrimaryLayout וEdgeContentLayout על ידי הוספת setResponsiveContentInsetEnabled כדי לתמוך טוב יותר בהתנהגות רספונסיבית של הפריסות האלה בגדלים שונים של מסכים, וכדי לשפר את העקביות של האריחים.
  • שיפור ההגדלה או ההקטנה של טקסט Material ב-Android 14, כדי להתאים להגדלה או להקטנה לא לינארית של גופן.
  • שיפרנו את התמיכה בכיוון פריסה מימין לשמאל בכל רכיבי arc.

שינויים נוספים

גרסה ‎1.2.0-rc01

‫24 ביולי 2024

androidx.wear.protolayout:protolayout-*:1.2.0-rc01 מופץ. גרסה ‎1.2.0-rc01 מכילה את השמירות האלה.

תיקוני באגים

  • תיקנו את רכיב Material Chip הרגיל, כך שאפשר להשתמש בו כסמל רק אם לא מועברות בו תוויות ראשיות או משניות. (Iceef9)
  • עדכנו את התיעוד של פריסות Material כדי לכלול רכיבים חזותיים מהדף הרלוונטי, וכך להקל על ההבנה של הפריסות. (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 לבחירת גופנים כדי לתמוך בגופנים גמישים שעתידים לצאת. לשם כך, צריך לציין את השמות המועדפים של משפחות הגופנים שבהן רוצים להשתמש.
  • הרחבנו את משנה המאפיין Corner כדי לתמוך בציון כל CornerRadius עם ערכים נפרדים של אופקי ואנכי, וכך לאפשר בניית רכיבים עם פינות לא סימטריות.
  • נוסף משנה חדש של Transformation שמציע תרגום, סיבוב ושינוי גודל של LayoutElement. אפשר להשתמש בערכים דינמיים כדי להנפיש את השינויים האלה.
  • הוספנו את המאפיין setArcDirection עם האפשרויות Clockwise, CounterClockwise ו-Normal לכל רכיבי הקשת (Arc, ArcLine ו-ArcText) כדי לשפר את התמיכה בכיווני פריסה שונים (כמו LTR ו-RTL).
  • שיפור הנגישות של כל יעדי המגע על ידי הרחבת האזור שאפשר להקיש עליו של כל אלמנט שמשתמש בהרחבה Clickable כך שיהיה לפחות 48dp על 48dp.
  • שיפרנו את PrimaryLayout וEdgeContentLayout על ידי הוספת setResponsiveContentInsetEnabled כדי לתמוך טוב יותר בהתנהגות רספונסיבית של הפריסות האלה בגדלים שונים של מסכים, וכדי לשפר את העקביות של האריחים. הוספנו אזהרה של כלי לבדיקת קוד כדי להציע שימוש בממשקי ה-API האלה עם תיקון מהיר.
  • שיפור ההתאמה של Text Material ל-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 במקום במחלקת ה-Builder שלו. (I06ced)
  • עדכון של FontSetting.weight ו-FontSetting.width API כך שיכללו הערות לגבי טווחים, ושינוי הפרמטר של המשקל כך שיהיה int. ‏(Ia726c)

תיקוני באגים

  • טקסטים שלא ניתן לשנות את הגודל שלהם בספריית Material פועלים עכשיו בצורה תקינה עם שינוי גודל הגופן הלא ליניארי ב-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)
  • הרחבנו את FontSetting API כך שיכלול:
    • הגדרת תכונת גופן, כמו הגדרת הגופן כטבלאי. (If12b7)
    • הגדרה של וריאציות בגופן, כמו הגדרה של רוחב מותאם אישית לגופנים משתנים. (I2b36d)
  • הוספנו API של משפחת גופנים ל-FontStyle כדי לאפשר הגדרה של רשימת סדר של משפחות גופנים שבהן רוצים להשתמש. (Iba9f5)
  • שמות הקבועים של גובה המרווח בין התוכן לתווית המשנית ב-LayoutDefaults של Material, שבתחילה קיבלו את הקידומת Edge content, שונו כדי להיות כלליים יותר, כי אפשר להחיל אותם גם על 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)
  • ב-Material Text אפשר להגדיר אם להשתמש בגודל שניתן לשינוי (גדל כשמשנים את גודל הגופן של המשתמש) או לא. (Ibc849)
  • הוספנו את האפשרות להגדיר את תיאור התוכן ל-TitleChip. (I5d21f)
  • תוקן CompactChip כדי שיפעל בצורה תקינה עם סמל בלבד, וה-API עודכן כדי לאפשר את האפשרות הזו. (I6589e)

תיקוני באגים

  • תוקנה בעיה שגרמה לשכפול פוטנציאלי של נתוני פלטפורמה במהלך האתחול. (Iba0fd)
  • הוספת getter חדש ל-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 תתקן את ההתנהגות שלהם בפריסות מימין לשמאל. (I90699)
  • בוצע עדכון ב-EdgeContentLayout עם פונקציית setter חדשה setResponsiveContentInsetEnabled כדי לשפר את ההתאמה להנחיות בנושא חוויית משתמש, ולשמור על עקביות ב-Tiles על ידי הצגת התווית הראשית במקום קבוע בחלק העליון והוספת שוליים דינמיים לתוויות. (I60175)
  • הוספנו את PrimaryLayout.setResponsiveContentInsetEnabled שמוסיף שוליים דינמיים לתווית הראשית, לתווית המשנית ולצ'יפ התחתון בפריסה הזו, כדי למנוע את יציאת התוכן מקצה המסך. (I0c457)
  • נוספה שיטה להסרת השוליים החיצוניים מ-CircularProgressIndicator כדי שאפשר יהיה להשתמש בו כרכיב קטן יותר. (I55c06)

שינויים ב-API

  • מעכשיו, רכיב ה-renderer של הרכיבים המוטעמים לא כולל כברירת מחדל ריווח בין גופן לבין שוליים בכל רכיבי הטקסט, ואין אפשרות לכלול אותו. (I3e300)

תיקוני באגים

  • תוקנה בעיה ביישור הטקסט כשמשתמשים בקיצוץ, ברווח בין האותיות וביישור למרכז בטקסט. (I716c7)
  • נוסף פתרון עקיף לבעיה בשרטוט קשתות ב-Skia. (I08f09)
  • תיקון כיוון הציור ArcLine בפריסות מימין לשמאל. (I6c141)

גרסה 1.1

גרסה 1.1.0

‫7 בפברואר 2024

androidx.wear.protolayout:protolayout-*:1.1.0 מופץ. גרסה 1.1.0 מכילה את השמירות האלה.

שינויים חשובים מאז גרסה 1.0.0

  • תמיכה בהדרגות וייצוג טוב יותר של אורכים גדולים מ-360 מעלות ב-ArcLine.
  • פורמט התאריך והשעה תומך באזורי זמן שונים עבור סוגי נתונים דינמיים.
  • אפשרויות טובות יותר להתאמת גודל הטקסט באופן אוטומטי ולהוספת סימן השמטה, כדי לטפל בטקסט שנקטע.
  • רכיב ה-Spacer תומך במאפיינים מורחבים עם משקל אופציונלי.
  • הוספת הערה לגבי דרישת גרסת הסכימה לכל ממשקי ה-API של ProtoLayout.
  • הגדלת אזור המטרה לכל אלמנט Clickable ל-48dp x 48dp, כדי לעמוד בדרישות הנגישות.
  • הריווח הפנימי של הגופן מושבת כברירת מחדל, והוא ההתנהגות היחידה בכל רכיבי הטקסט ורכיבי Material שמכילים טקסט.

שינויים נוספים

גרסה ‎1.1.0-rc01

‫24 בינואר 2024

androidx.wear.protolayout:protolayout-*:1.1.0-rc01 מופץ. גרסה 1.1.0-rc01 כוללת את הקומיטים האלה.

תיקוני באגים

  • הסימון PlatformTimeUpdateNotifierImpl מופיע מיד אחרי שמפעילים את העדכון. (I77145)
  • CircularProgressIndicator תוקן בפריסות מימין לשמאל. מעכשיו, בכל המקרים, הכיוון יהיה עם כיוון השעון. (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 של 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 ב-renderer, כדי לתמוך טוב יותר בדרישות הנגישות.
  • בעקבות רכיבים אחרים של Material ויוזמות של Compose, השבתנו עכשיו כברירת מחדל את המרווח הפנימי של הגופן בכל רכיבי Text. בנוסף, הוסרו מה-API הציבורי AndroidTextStyle ופונקציות ה-setter שקשורות אליו. בוצעו תיקוני הבאגים הבאים:
  • נוסף setter למיקום התוכן בקצה ב-EdgeContentLayout כדי שיהיה אפשר למקם אותו לפני תוכן אחר.
  • הפונקציה זורקת חריגה באופן עקבי כשהיא נתקלת בערך enum לא מזוהה.
  • הפונקציה מבטלת את התוקף של תוצאת ביטוי אם היא מחזירה ערך מספרי לא תקין (NaN או אינסופי) או אם היא מחזירה שגיאה ArithmeticException.

שינויים ב-API

  • עדכונים ב-SweepGradient API כדי לאפשר קבלת צבעים או ColorStops בבונה. (I6676f)

תיקוני באגים

  • הוספנו API מוגבל ותמיכה ברכיב renderer להגדרת כיוון שבו מצוירים רכיבי קשת. (Idef5a)
  • אם לא מציינים ערך לפרמטר RoundMode ב-FloatToInt32Node, ברירת המחדל היא Floor. הצומת עדיין יציג חריגה אם הערך של 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

  • האפשרות להצגת טקסט שחורג מהגבולות TEXT_OVERFLOW_ELLIPSIZE_END הוצאה משימוש. אפשר להשתמש ב-API החדש TEXT_OVERFLOW_ELLIPSIZE, שההתנהגות שלו דומה מאוד. (I822d8)
  • בעקבות רכיבי Material אחרים ויוזמות Compose, השבתנו עכשיו את המרווח הפנימי של הגופן כברירת מחדל בכל רכיבי הטקסט. בנוסף, הוסרו מה-API הציבורי AndroidTextStyle ופונקציות setter קשורות. (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3)
  • Modifier.hidden הוחלף ב-Modifier.visible (I56902)
  • הפונקציה FontStyle#setSizes מקבלת עכשיו ארגומנטים מסוג int במקום SpProp. (I02b37)

תיקוני באגים

  • הפעלת חריגה כשנתקלים בערך לא מוגדר או לא מזוהה של enum. (I9d2cf)
  • שינוי מבנה הקוד 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)
  • הוספת הערה לגבי דרישת גרסת סכימה ל-API‏ ProtoLayout (I0f03c)
  • הוספנו ל-API‏ TextOverflow אפשרות חדשה להוספת שלוש נקודות בסוף הטקסט במאגר הנתונים הקבוע של ההורה, גם אם לא הושגה כמות השורות המקסימלית (אבל אין מספיק מקום לטקסט). (I110a9)
  • הוספנו שיטת עזר DimensionBuilders.weight לבניית ExpandedDimensionProp עם משקל. (I4f72b)
  • אפשר להשתמש ב-DynamicInstant וב-DynamicDuration כסוגי נתונים של מצב או פלטפורמה. (I6819f)

שינויים ב-API

  • עדכון ה-API כדי להסתיר את DynamicZonedDateTime ולהעביר את כל הפעולות שלו אל DyanamicInstant (I34b94)
  • רכיב ה-Spacer תומך עכשיו במאפיין Expanded dimension (מאפיין מורחב של מידות) לרוחב ולגובה. (Ie7c94)
  • תמיכה בתוסף של אזור היעד לקליקים ב-Renderer ‏ (I39c79)

גרסה ‎1.1.0-alpha02

‫15 בנובמבר 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha02 מופץ. גרסה ‎1.1.0-alpha02 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו שדה ArcLine StrokeCap Shadow ל-API. (I830ec)
  • הרחבת ה-API כדי לאפשר לציין את הרוחב או הגובה של Spacer להרחבה. (I757ca)
  • הוספנו API ניסיוני כדי לשנות את גודל הטקסט באופן אוטומטי בהתאם לשטח שהוא תופס בתוך הרכיב העליון. (Ibbe63)
  • תמיכה בגודל מינימלי של אזור שאפשר ללחוץ עליו (I178e3)
  • הוספנו תמיכה ב-StrokeCap Shadow במעבד התצוגה. (I48b17)
  • הוספנו תמיכה ב-Renderer לטווח צבעים מתמשך ב-ArcLine. (I4d5bb)

גרסה ‎1.1.0-alpha01

‫18 באוקטובר 2023

androidx.wear.protolayout:protolayout-*:1.1.0-alpha01 מופץ. גרסה ‎1.1.0-alpha01 מכילה את השמירות האלה.

תכונות חדשות

  • נוספה אפשרות של מברשת ל-Arcline, עם תמיכה ב-SweepGradient. (Ie7ce3)
  • נוספה תמיכה בעיצוב של תאריך ושעה לפי אזור זמן. (Ibfae0)
  • נוספו פרוטוקולים ועטיפות Java שנדרשים לעיצוב של תאריך ושעה באזור זמן מסוים. (I97126)
  • נוספו שיטות getter לקריאת הערך שמאוחסן ב-DynamicDataValue. (Ie6cea)
  • נוסף setter למיקום התוכן בקצה ב-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 ליצירת פריסות וביטויים שאפשר להשתמש בהם בפלטפורמות שונות של Wear OS. לדוגמה, ספריית Tiles משתמשת בממשקי ה-API האלה כדי לתמוך בקישור נתונים לפלטפורמה (לעדכוני נתונים מהירים יותר של רכיבי Tiles) ובאנימציות.

גרסה ‎1.0.0-rc01

‫26 ביולי 2023

androidx.wear.protolayout:protolayout-*:1.0.0-rc01 מופץ. גרסה ‎1.0.0-rc01 מכילה את השמירות האלה.

  • כדי לעבור מ-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. HEART_RATE_ACCURACY_X קבועי int משמשים עכשיו ישירות ב-DynamicHeartRateAccuracy.constant() וב-DynamicHeartRateAccuracy.dynamicDataValueOf() במקום בקבוע ערך. (I82ff5)
  • הכיתה PlatformHealthSources.Constants הייתה ניתנת ליצירת מופע בטעות. הבעיה הזו תוקנה. (Icb849)
  • עכשיו PlatformTimeUpdateNotifier#setReceiver מקבל Runnable במקום פונקציית Supplier וExecutor כדי לשלוח התראות. (I9d938)
  • שינינו את סוג הפרמטר בעמודה PlatformTimeUpdateNotifier#setReceiver מ-Callable ל-Supplier. (I664bf)
  • עכשיו אפשר להוסיף סמל ל-CompactChip ול-TitleChip. (I5a01e)

תיקוני באגים

  • עדכון הודעות Prop עם שדות דינמיים לשימוש ב-oneof במקום זאת (I81739)
  • שימוש חוזר בהטמעה של פונקציות setter לעומסים שכוללים פונקציות setter‏ (Ied70c)
  • הקלטה נכונה של טביעות אצבע בפונקציות setter עם עומס יתר (I86ed2)

גרסה ‎1.0.0-alpha11

‫7 ביוני 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha11 מופץ. גרסה ‎1.0.0-alpha11 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו 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], השם getExcludeFontPadding השתנה ל-hasExcludeFontPadding. (Iea01d)
  • נוסף setter ליישור מושלם של התווית לכל רכיבי הצ'יפ. החלנו עכשיו על כל הצ'יפים את גודל היעד המינימלי שאפשר להקיש עליו. (I8ae92)
  • השם של LayoutDefaults#BUTTON_MAX_NUMBER שונה ל-MAX_BUTTONS. (I84788)
  • השם של DAILY_DISTANCE השתנה לDAILY_DISTANCE_M. (I4f758)

תיקוני באגים

  • עדכון מסמכי Prop types כדי להבהיר למה הערך הסטטי נאכף. מציינים את ערך ברירת המחדל שבו המערכת תשתמש אם לא צוין ערך סטטי. (I155aa)
  • שמות של מרחבי שמות PlatformDataKey צריכים להיות בסגנון Java. (I47bda)

גרסה ‎1.0.0-alpha10

‫24 במאי 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha10 מופץ. גרסה ‎1.0.0-alpha10 מכילה את השמירות האלה.

תכונות חדשות

  • הוספת 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 ומעדכנים את ממשקי ה-API של המצב לשימוש ב-DynamicDataKey (If1c01)
  • אנחנו מגבילים את מספר הערכים שמותרים ב-StateStore כדי לוודא שהשימוש בזיכרון וזמן עדכון המצב מוגבלים ומבוקרים בכל מופע של StateStore. לכן, המפתח צריך לוודא שלא יהיו יותר מ-MAX_STATE_ENTRY_COUNT רשומות במפה, אחרת הוא יקבל את השגיאה IllegalStateException כשהוא יוצר או מעדכן את StateStore. (Ibadb3)
  • הסתרה של כיתות OnLoadTrigger ו-OnConditionMetTrigger, ושינוי השם של כיתה setTrigger ל-setCondition עבור OnConditionMetTrigger. (Ibf629)
  • מטעמי ביצועים ותאימות, רכיבי העיבוד של ProtoLayout לא יתמכו בכל התכונות במשאבי AnimatedVectorDrawable. אנחנו מסמנים את ממשקי ה-API האלה כניסיוניים עד שנוכל להגדיר את קבוצת ממשקי ה-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 ב-Material Text. התכונה הזו נתמכת במעבדי רינדור שתומכים בגרסה 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 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו רכיב פריסה ניסיוני של תוסף. שימו לב: אי אפשר להשתמש בזה כברירת מחדל, ונדרשת הרחבה של מעבד שיכולה להבין את רכיב הפריסה. (I6581d)
  • הוספנו תמיכה ב-StrokeCap עבור ArcLine. (I94951)
  • הוספנו תמיכה בפעולה מותנית מיידית. (I489a7)
  • הוספנו תמיכה בפעולה Conditional Duration (משך מותנה). (Iab469)
  • הוספנו תמיכה ביצירת משך זמן משניות. (Ib5fa1)

שינויים ב-API

  • הוסרו מהקבוצה DynamicTypeEvaluator השיטות enable/disablePlatformSource. המתקשר צריך להיות אחראי לעדכונים. (I78c6d)
  • אפשרות להגביל את הגודל של סוגי נתונים מאוגדים. (Ie2966)
  • הוספת תמיכה בתיאור דינמי של תוכן ב-protolayout-material. (I62c8e)
  • משתמשים בערכים ארוכים וב-@IntRange עבור משך והשהיה ב-AnimationParameters. (I388b6)

גרסה ‎1.0.0-alpha08

‫19 באפריל 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha08 מופץ. גרסה ‎1.0.0-alpha08 מכילה את השמירות האלה.

תכונות חדשות

  • AndroidTextStyle נוסף ל-LayoutElementBuilders. (I8d967)
  • הוספנו תמיכה בהגדרת ריווח גופנים ללא החרגה ב-ProtoLayout Material Text. (I17f5d)
  • יש עכשיו תמיכה ב-ARGB_8888 לתמונות מוטבעות. (I18c1e)
  • DynamicColor תומך עכשיו בפעולה onCondition. (I10927)

שינויים ב-API

  • תמיכה במשך זמן מותאם אישית לאנימציה הפוכה (I3251f)
  • הוספנו את התוסף SemanticDescription. בנוסף, אי אפשר לקשר את ContentDescription. (I3f1d)
  • ה-method DynamicBool.isFalse() הוחלפה ב-DynamicBool.negate() וה-DynamicBool.isTrue() הוסר. בנוסף, ערכי NaN DynamicFloat וצמצום של DynamicInt32 ל-DynamicFloat יוצרים עכשיו תוצאה דינמית לא תקינה. (I6ac1e)
  • מעכשיו, מעצבי פורמט של מספרים שלמים ומספרים עשרוניים משתמשים בתבנית Builder. (Ieb213)

תיקוני באגים

  • הוסר ערך סטטי של חזרה למצב הקודם משדות שאפשר להוסיף להם אנימציה. (Ifcb01)
  • DynamicTypeValueReceiver#onPreUpdate הוסר. (I2dc35)
  • האורך של מחרוזות בביטויים דינמיים מוגבל עכשיו. (I4c93)
  • התלות ב-Gradle מוגדרת עכשיו בצורה נכונה ל-api במקום ל-implementation כשנדרש. (I40503)

גרסה ‎1.0.0-alpha07

‫5 באפריל 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha07 מופץ. גרסה ‎1.0.0-alpha07 מכילה את השמירות האלה.

תכונות חדשות

  • הוספת תמיכה בערכים דינמיים ל-StringProp (I04342)
  • סימון רכיבי פריסה שניתנים לקישור (Ia110b)

שינויים ב-API

  • sensorGateway#registerSensorGatewayConsumer מקבלת את סוג הנתונים כפרמטר במקום כשיטה ב-Consumer. (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 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו API ניסיוני לשימוש בדופק ובצעדים יומיים בביטויים דינמיים (Ifd711)
  • הוספנו תמיכה בהשהיה קדימה ואחורה של אנימציות. (Ic25f7)
  • הוספנו תמיכה ב-DynamicColor ל-Border ול-Background
  • הוספנו תמיכה בערכים דינמיים לסוגים ב-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 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו אנימציה ניסיונית של 'עדכון תוכן' לאובייקט Modifiers. האנימציה הזו תופעל בכל פעם שהרכיב (עם התוסף הזה) או אחד מרכיבי הצאצא שלו ישתנה במהלך עדכון הפריסה. (bd03e5d)

שינויים ב-API

  • הוספנו את forwardRepeatDelayMillis ואת reverseRepeatDelayMillis אל Repeatable. בנוסף, שינינו את השם של delayMillis ב-AnimationSpec ל-startDelayMillis (Ifb266)
  • DynamicTypeEvaluator.bind methods מקבלים עכשיו Executor. (I346ab)
  • הוספנו את השיטה startEvaluation ל-BoundDynamicType כדי להפעיל את ההערכה אחרי שהסוג הדינמי משויך. (I19908)

תיקוני באגים

  • אובייקט ה-Animator ישמש שוב להנפשות הבאות של רכיב יחיד. (Ia3be9)

גרסה ‎1.0.0-alpha04

‫22 בפברואר 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha04 מופץ. גרסה ‎1.0.0-alpha04 מכילה את השמירות האלה.

תכונות חדשות

  • מעכשיו ObservableStateStore מודיע למאזינים גם כשמסירים מפתח.
  • הוספנו את גרסת סכימת הרכיב Renderer ואת קנה המידה של הגופן אל DeviceParameters (שאפשר להשתמש בו כדי ליצור פריסות באופן מותנה בתגובה לגרסאות שונות ולהגדרות גופן שונות).
  • הוספנו תמיכה בהנפשת ערכי DynamicInt32 (I05485)
  • הוספנו טריגרים של OnLoad ושל OnConditionalMet. אפשר להשתמש בהם כדי להפעיל אנימציות שתומכות בטריגר.
  • הוספנו משקל פריסה למאפיינים מורחבים וגודל מינימלי למאפיינים שעברו גלישת שורות.
  • הוספנו סוגים של משך ושל דינמיות מיידית. אפשר להשתמש בהם כדי לייצג רגע בזמן או משך זמן בביטוי דינמי.
  • הוספנו תמיכה ב-AnimatedVectorDrawable וב-SeekableAnimatedVectorDrawable כמשאבי פריסה.

שינויים ב-API

  • נתוני חיישנים דורשים API בגרסה 29 ומעלה. (I8099e)
  • הוספנו שתי launchAction שיטות עזר (להפעלת פעילויות).

תיקוני באגים

  • שינוי השם של set/getSpec ל-set/getAnimationSpec באנימציה של Tiles‏ (I3d74b)

גרסה ‎1.0.0-alpha03

‫8 בפברואר 2023

androidx.wear.protolayout:protolayout-*:1.0.0-alpha03 מופץ. גרסה ‎1.0.0-alpha03 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו את toByteArray() ואת fromByteArray() לסוגים דינמיים בספריית protolayout-express.
  • הוספנו את toString() לסוגים דינמיים בספריית protolayout-expression.
  • הוספנו תמיכה בהערכה של סוגים דינמיים. אפשר להשתמש במחלקה DynamicTypeEvaluator מהספרייה protolayout-expression-pipeline כדי להעריך (ולקבל ערכים מעודכנים) סוג דינמי שנוצר בעבר (DynamicString,‏ DynamicFloat וכו')
  • אם אי אפשר להפעיל את האנימציות (כי הן מושבתות על ידי המעריך, או כי מספר האנימציות הפועלות הגיע למגבלה שהוגדרה), המערכת תשתמש בערכים הסטטיים שהוגדרו בצומת שאפשר להנפיש כדי להחליף את האנימציה.

גרסה ‎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 מכילה את השמירות האלה.

תכונות חדשות

  • כלי בניית פריסות מ-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 מכילה את השמירות האלה.

תכונות חדשות

  • בגרסה הזו מוצגת ספרייה חדשה, ProtoLayout Expression, ליצירת ביטויים ממשתנים דינמיים.