אנחנו שמחים להודיע שגרסה Jetpack WindowManager 1.5.0 יציבה עכשיו!
הגרסה הזו מבוססת על היכולת הגבוהה של WindowManager להתאמה, ומאפשרת ליצור בקלות רבה יותר ממשקי משתמש מלוטשים ודינמיים שנראים מצוין בכל גודלי המסך. מערכת Android ממשיכה להתפתח, והמשתמשים מפעילים אפליקציות במגוון רחב יותר של מכשירים מאי פעם: מטלפונים ומכשירים מתקפלים ועד טאבלטים, מסכים מחוברים, מכשירי Chromebook ואפילו מסכים ברכב במצב חניה.
ב-WindowManager 1.5 התמקדנו במתן כלים טובים יותר לסביבת המכשירים המגוונת הזו.
מה חדש ב-WindowManager 1.5
בגרסה היציבה הזו הוספנו נקודות עצירה חדשות למסכים גדולים מאוד, שיפרנו את ה-API להטמעת פעילות וסיפקנו יותר גמישות בחישוב מדדי החלונות.
סיווגים חדשים של גודל החלון: גדול וגדול מאוד
העדכון הכי משמעותי בגרסה 1.5 הוא הוספה של שתי קטגוריות חדשות של גודל חלון ברוחב: Large ו-Extra-large.
סיווגי גודל החלון הם קבוצה רשמית של נקודות עצירה (breakpoints) של אזור התצוגה, שנועדה לעזור לכם לעצב ולפתח פריסות מותאמות. בגרסה 1.5, אנחנו מרחיבים את ההנחיות האלה גם למסכים שהם מעבר לטאבלטים רגילים.
אלה נקודות עצירה חדשות לרוחב:
- גדול: לרוחבים בין 1,200dp ל-1,600dp
- גדול במיוחד: לרוחבים של ≥1600dp
הסיווגים השונים של גודל החלון על סמך רוחב התצוגה.
למה זה חשוב?
החל מ-Android 16 QPR1 Beta 2, Android תומך במסכים מחוברים, ומאפשר למשתמשים לחבר מסך חיצוני למכשיר ולהפוך אותו לכלי דמוי מחשב עם מסך גדול.
טלפון שמחובר למסך חיצוני, עם סשן של ממשק מחשב במסך החיצוני.
התכונה החדשה הזו זמינה, ולכן חשוב לספק הנחיות מבוססות-דעות לגבי הכללת תצוגות גדולות יותר.
במשטחים גדולים מאוד כאלה, הגדלה פשוטה של הפריסה המורחבת של טאבלט לא תמיד מספקת את חוויית המשתמש הטובה ביותר. לדוגמה, תוכנת אימייל יכולה להציג בנוחות שני חלוניות (תיבת דואר והודעה) בגודל חלון מורחב. אבל במסך מחשב גדול במיוחד, תוכנת האימייל יכולה להציג בצורה מסודרת שלוש או אפילו ארבע חלוניות – אולי תיבת דואר, רשימת הודעות, את התוכן המלא של ההודעה וחלונית של יומן או משימות, והכול בבת אחת.
הגרסה WindowManager 1.5 מספקת נקודות עצירה רשמיות לגדלים גדולים מאוד של מסכים, וכך מאפשרת לכם להציג פריסות שמיועדות במיוחד לחוויית שימוש פרודוקטיבית במחשב עם הרבה מידע.
אפשר לחשב את סיווגי גודל החלון באמצעות computeWindowSizeClass(), שהיא פונקציית הרחבה של ספריית androidx.window.core.layout שמרחיבה את הסוג Set<WindowSizeClass>.
כדי לכלול את הסוגים החדשים של גודל החלון בפרויקט, פשוט קוראים לפונקציה מהקבוצה WindowSizeClass.BREAKPOINTS_V2 במקום WindowSizeClass.BREAKPOINTS_V1:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
אחר כך, כשבטוחים שיש לאפליקציה לפחות את המקום הזה, מחילים את הפריסה הנכונה:
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}ספריות מותאמות
הספרייה Compose Material 3 Adaptive עוזרת לכם ליצור ממשקי משתמש דינמיים שמותאמים אוטומטית להגדרות החלון הנוכחיות, כמו גדלים של חלונות או מצבי מכשיר.
החדשות הטובות הן שהספרייה כבר מעודכנת עם נקודות ההפסקה החדשות. החל מגרסה 1.2 (שנמצאת עכשיו בשלב Release Candidate), פונקציות ברירת המחדל של הנחיית ה-scaffold של החלונית תומכות ברוחב חלון גדול וגדול במיוחד.
כדי להפעיל את התכונה, צריך להצהיר בקובץ ה-build של Gradle שרוצים להשתמש בנקודות העצירה החדשות:
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
שיפורים נוספים
- הטמעה של פעילות – שמירה ושחזור אוטומטיים: מעכשיו אפשר לשמור ולשחזר באופן אוטומטי את המצב של פיצולי הטמעת הפעילות ב-WindowManager. כך ניתן לשמור על הפריסה של המשתמשים גם אחרי יצירה מחדש של התהליך, מה שמוביל לחוויה יציבה ועקבית יותר. המפתחים לא צריכים יותר לשמור ולשחזר את המצב באופן ידני, אלא יכולים פשוט להפעיל את השמירה האוטומטית על ידי הגדרת המאפיין EmbeddingConfiguration#isAutoSaveEmbeddingState.
- הרחבת WindowMetrics: עכשיו אפשר לחשב WindowMetrics מהקשר Application, ולא רק מהקשר Activity. כך אפשר לגשת למידע על חלון מחלקים שונים באפליקציה בצורה גמישה יותר.
איך מתחילים
כדי להתחיל להשתמש במחלקות הגודל החדשות Large ו-Extra-large וב-1.5 תכונות אחרות בפרויקטים של Android, צריך לעדכן את יחסי התלות של האפליקציה ב-build.gradle.kts לגרסה היציבה האחרונה:
dependencies {
implementation("androidx.window:window:1.5.0")
// or, if you're using the WindowManager testing library:
testImplementation("androidx.window:window-testing:1.5.0")
}WindowManager 1.5 הוא עוד צעד קדימה לקראת יצירה של אפליקציות מותאמות באופן מלא שפועלות בכל סוגי המכשירים עם Android. הרשימה המלאה של השינויים ותיקוני הבאגים מופיעה בנתוני הגרסה הרשמיים.
שיהיה בהצלחה בכתיבת הקוד!
להמשך הקריאה
-
חדשות על מוצרים
אנחנו שמחים להכריז על אבן דרך משמעותית בקירוב בין מחשוב בנייד למחשוב במחשב ב-Android: תמיכה במסך מחובר הגיעה לזמינות לכלל המשתמשים (GA) עם הגרסה Android 16 QPR3!
Francesco Romano • משך הקריאה: 7 דקות
-
חדשות על מוצרים
באירוע Google I/O 2026, הצגנו את השינוי ב-Android ממערכת הפעלה למערכת חכמה. הדגמנו גם איך אפשר ליצור חוויות חכמות באופן מקורי באמצעות המערכת, ולשלב את היכולות של ה-AI של Google באפליקציות שלכם.
Jingyu Shi • משך הקריאה: 2 דקות
-
חדשות על מוצרים
אנחנו שמחים להודיע על השקת תמיכה רשמית ב-Unreal Engine וב-Godot ל-Android XR. אנחנו משיקים גם כלים חדשים שנועדו לשפר את הפרודוקטיביות ולאפשר יכולות XR חדשות: Android XR Engine Hub ו-Android XR Interaction Framework.
Luke Hopkins, Ryan Bartley • משך הקריאה: 4 דקות
כדאי תמיד להיות בעניינים
רוצים לקבל טיפים עדכניים לפיתוח Android ישירות לאימייל כל שבוע?