ארכיון הגרסאות של ספריית התמיכה

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

גרסה 26.0.0 בטא 2

(יוני 2017)

לתשומת ליבך, גרסה 26.0.0-beta2 היא גרסת טרום-השקה. פלטפורמת ה-API שלה כפוף לשינויים, והוא לא בהכרח כולל תכונות או תיקוני באגים מהגרסאות היציבות האחרונות של ספריית התמיכה.

חשוב: ספריות התמיכה זמינות עכשיו באמצעות מאגר Maven של Google. אין צורך להוריד את דף התמיכה מ-SDK Manager. מידע נוסף זמין במאמר הבא: הגדרה של ספריית התמיכה

ממשקי API חדשים

הבדלים ב-API

תיקוני באגים

  • ירידה ב-Android O SDK גורמת לאובדן ההטיה ב-TextViews
  • חריגה של מצביע null בעת התחברות ל-MediaBrowserServiceCompat
  • TextInputLayout חייב להגדיר רמזים ב-onProvideAutofillStructure()
  • גלישת מקבצים כשמשתמשים בגודל אוטומטי של TextView ב-O

גרסה 26.0.0 בטא 1

(מאי 2017)

לידיעתך, 26.0.0-beta1 היא גרסת טרום-השקה. פלטפורמת ה-API שלה כפוף לשינויים, והוא לא בהכרח כולל תכונות או תיקוני באגים מהגרסאות היציבות האחרונות של ספריית התמיכה.

חשוב: ספריות התמיכה זמינות עכשיו באמצעות מאגר Maven של Google. אין צורך להוריד את דף התמיכה מ-SDK Manager. מידע נוסף זמין במאמר הבא: הגדרה של ספריית התמיכה

שינויים חשובים

  • FragmentActivity.setSupportMediaController() והקבוצה FragmentActivity.getSupportMediaController() הוסרו. יש להשתמש בשיטות הסטטיות החדשות MediaControllerCompat.setMediaController() ו-MediaControllerCompat.getMediaController().
  • BottomNavigationView מתקשר עכשיו onNavigationItemReselected() כשפריט שכבר נבחר, במקום להתקשר onNavigationItemSelected().
  • כל המופעים של השיטה findViewById() מחזירים עכשיו את הערך <T extends View> T במקום View. השינוי הזה יש את ההשלכות הבאות:
    • כתוצאה מכך, יכול להיות שסוג ההחזרה לא ברור לקוד הקיים, לדוגמה אם יש גם someMethod(View) וגם someMethod(TextView) שמעביר את התוצאה של הקריאה אל findViewById().
    • כשמשתמשים בשפת המקור של Java 8, צריך להפעיל Cast מפורש אל View כשסוג ההחזרה לא מוגבל (לדוגמה, assertNotNull(findViewById(...)).someViewMethod()).
    • שינויים של findViewById() methods שאינן סופיות (עבור לדוגמה, Activity.findViewById()) יצטרך להחזיר את המוצר הסוג עודכן.

ממשקי API חדשים

  • ל-FragmentManager ול-Fragment יש isStateSaved() כדי לאפשר לשלוח שאילתות, תהיה אפשרות לבצע עסקה בלי הפסדים מהמדינה. זה שימושי במיוחד כדי לבדוק מתי מטפלים באירוע onClick() לפני שמבצעים העסקה.
  • תנועת הנתיב נתמכת בפונקציה AnimatedVectorDrawableCompat. תנועת נתיב מאפשרת אנימטור אחד של אובייקט לשנות שני מאפיינים באותו זמן זמן לפי נתיב אחד; הנתיב מצוין בתור android:pathData ב-XML של האנימציה).
  • מבוססים על פיזיקה אנימציה:
    • FlingAnimation חדש שתומך באנימציה עם במהירות הראשונית ומאטה בצורה חלקה.
    • מחלקות המשנה של DynamicAnimation תומכות באנימציה בהתאמה אישית של כל אובייקט.
    • גם SpringAnimation וגם FlingAnimation יכולים מוסיפים אנימציה לערך מסוג מספר ממשי (float) ללא צורך ב-View או Object ישויך אליו.

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

  • גופן תמיכה ב-XML:
    • ב-ResourcesCompat.getFont אפשר לטעון את הגופן — כולל משפחת גופנים בפורמט XML, — שניתן להשתמש בהם עם TextView.setTypeface().
    • כשמשתמשים ב-AppCompat, TextView תומך בציון משאב גופן XML משפחת גופנים באמצעות מאפיין ה-XML של android:fontFamily.
    • שימוש במשפחת גופנים בפורמט XML כדי ליצור משפחות של גופנים עם סגנון ומשקל שונות. (אם אתם משתמשים במחלקות של ספריות התמיכה כדי לעשות זאת, השתמשו app: וגם android: .)
  • ניתן להורדה גופנים:
    • קובץ FontsContractCompat חדש שמאפשר לבקש גופנים מספק גופנים במקום לקבץ אותם באפליקציה שלך.
    • אפשר לבקש גופנים גם ב-XML ולהשתמש בהם בפריסות.
  • תאימות לאמוג'י ספרייה:
    • ל-EmojiCompat יש אפשרות לעבד CharSequence נתון ומוסיפים את EmojiSpans.
    • EmojiTextView ווידג'טים אחרים להצגת סמלי אמוג'י.
    • FontRequestEmojiCompatConfig כדי לבקש גופן אמוג'י ספק הגופנים.
  • שינוי אוטומטי של גודל TextView:
    • שיטות חדשות ב-TextViewCompat וגם במאפייני XML כדי לשלוט בשינוי האוטומטי ב-TextView.
  • פקדי הפעלה ב-Leanback עם תמיכה בחיפוש:
    • PlaybackTransportRowPresenter חדש לרינדור ההפעלה באמצעות סרגל דילוג.
    • PlaybackTransportControlGlue חדש שפועל עם PlaybackTransportRowPresenter ותומך בדילוג.
    • מחלקה בסיסית חדשה PlaybackSeekDataProvider לאפליקציה עבור לספק תמונות ממוזערות של הדילוג אל PlaybackTransportControlGlue.
  • מאגר נתוני ההעדפות:
    • עכשיו יש לך אפשרות להשתמש ב-PreferenceDataStore כדי ליישם הגדרות משלך אחסון העדפות, מוגדר בשיטות חדשות ב-Preference ו-PreferenceManager.

בעיות מוכרות

  • שילוב התאימות של גופנים ואמוג'י להורדה עם Google Play השירותים פועלים רק בגרסה 11 ואילך של Google Play Services, שנכון לעכשיו זמינות דרך Google Play תוכנית בטא של שירותים.

תיקוני באגים

  • ה-API של MediaBrowserCompat.search() לא פועל (בעיה ב-AOSP 262170)
  • חריגות ב-ViewCompat.postInvalidateOnAnimation() זמניות (AOSP בעיה 80146)
  • נשלחה קריאה לפעולה של onActivityCreated() עם מקטעים בפעילות שהושחתה
  • הפונקציה RecyclerView.isComputingLayout() אמורה להחזיר את הערך True במהלך שליפה מראש (prefetch)
  • כאשר מעבר של Fade נקטע ומבוטל, View מפעיל את האנימציה מההתחלה. (תיקון ניוד מ: Android Framework).
  • Transition.Fade מתעלמת מגרסת האלפא הראשונית של View (בעיה AOSP 221820)

גרסה 26.0.0 אלפא 1

(מרץ 2017)

לתשומת ליבך, 26.0.0-alpha1 היא גרסת טרום-השקה. פלטפורמת ה-API שלה כפוף לשינויים, והוא לא בהכרח כולל תכונות או תיקוני באגים מהגרסאות היציבות האחרונות של ספריית התמיכה.

שינויים חשובים

הערה: גרסת ה-SDK המינימלית הוגדלה ל-14. כתוצאה מכך, הרבה ממשקי API שהיו קיימים רק לצורך API < תאימות ל-14 הוצא משימוש. לקוחות של ממשקי ה-API האלה צריכים לעבור ל-framework שלהם מקבילים לאלה שצוינו בדף העזר לכל ממשק API שהוצא משימוש.

  • המודול של אחוזי התמיכה הוצא משימוש. לקוחות של המודול הזה לעבור לווידג'ט החדש ConstraintLayout, שניתן ארטיפקט נפרד ב-SDK Manager.
  • המודול של מקטע התמיכה כבר לא תלוי support-media-compat.

ממשקי API חדשים

נוספו הרבה סוגים, שיטות וקבועים חדשים כדי לספק תמיכה תואמת לאחור בממשקי API של הפלטפורמה נוספה ב-O Preview.

  • IME_FLAG_NO_PERSONALIZED_LEARNING: עורכי IME יכולים להאזין ל "לא לומדים" דגלים לאפליקציות עם מצב פרטי, כמו דפדפנים. הזה עוזר לרכיבי IME להבין אם אפליקציה נמצאת במצב פרטי, כדי שהם להשבית את יכולת הלמידה או הפונקציונליות שניתנת להתאמה בזמן שהאפליקציה במצב תצוגה.

לרשימה מלאה של שינויי ה-API בין גרסה 25.2.0 ל-26.0.0-alpha1, ניתן לעיין ב תמיכה ב-Library API בדוח ההבדלים.

תיקוני באגים

  • במקרים מסוימים, פשוט AutoTransition אפשר להפסיק את האנימציה כשצופים ב"דילוגים". (בעיה AOSP 221816)

גרסה 25.4.0

(יוני 2017)

חשוב: ספריות התמיכה זמינות עכשיו באמצעות מאגר Maven של Google. אין צורך להוריד את דף התמיכה מ-SDK Manager. מידע נוסף זמין במאמר הבא: הגדרה של ספריית התמיכה

שינויים חשובים

  • לא ניתן לבצע שיחות של executePendingTransactions(), commitNow(), popBackStackImmediate() ושיחות טלפון דומות במהלך שינויים במצב FragmentManager. מתמודד/ת מחדש ביצוע עסקאות לא בטוח, וההגדרה הזו אוכפת על ידי FragmentManager במצב שלו עכשיו שינויים.
  • במקביל לגרסה הזו של ספריית התמיכה, אנחנו משיקים גם multidex גרסה 1.0.2. הגרסה הזו כוללת את השינויים החשובים הבאים:
    • התרת ריבוי קטעים של APK עם אינסטרומנטציה.
    • מוציא משימוש את MultiDexTestRunner (צריך להשתמש ב-AndroidJUnitRunner) במקום זאת).
    • מספק הגנה טובה יותר מפני חילוץ לא טוב מהארכיון הניהול של האפליקציה.
    • תיקון באג שעלול לגרום להנטשות של קבצים זמניים.
    • ההתקנה מהירה יותר כשמתבצעות במקביל.
    • מתקן באג בהתקנה ב-API 19 ו-20.

ממשקי API חדשים ושינויים

טרנספורמציה של נתיבים ואינטרפולציה של נתיבים נתמכת ב-AnimatedVectorDrawableCompat. טרנספורמציה של נתיבים מאפשרות שינוי של הצורות מנתיב אחד (מצוין כ- android:valueFrom) לנתיב אחר (מצוין כ- android:valueTo), כדי לספק רכיבים חזותיים מורכבים ומושכים באפקטים מיוחדים. אינטרפולציה של נתיב מאפשרת לציין את האינטרפולטורים של AnimatedVectorDrawableCompat כנתיבים (מצוינים כ-android:pathData בקובץ האינטרפולטור) XML).

הבדלים ב-API

בעיות שתוקנו

  • חריגה של מצביע null בעת התחברות ל-MediaBrowserServiceCompat
  • ה-API של MediaBrowserCompat.search() לא פועל (בעיית AOSP 262170)
  • קריאות חוזרות (callbacks) של BrowseFragment onItemClicked מנותקות בגרסה 25.3.0
  • NullPointerהחרגה בזמן גלילה למעלה ולמטה ב-VerticalGridView 25.3.1
  • ClassCast משתתפים ב-SimpleArrayMap.allocArrays()

גרסה 25.3.1

(מרץ 2017)

בעיות שתוקנו

  • ב-SwitchCompat נדרשת ערכת SDK מינימלית גרסה 14 ואילך. (בעיה AOSP 251302)
  • אנימציה מבוססת פיזיקה updateListener מדלגת על הפריים הראשון.
  • אנימציה של התווית BottomNavigationView שבור.

גרסה 25.3.0

(מרץ 2017)

שינויים חשובים

המטא-נתונים של הגרסה של ספריית התמיכה יתווספו אוטומטית אל AndroidManifest.xml כשעובדים מ-Gradle, מה שהופך את התהליך לפשוט יותר למעקב אחרי גרסאות בגרסאות build ציבוריות. לדוגמה:

<meta-data android:name="android.support.VERSION" android:value="25.3.0" />

הוצאה משימוש

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

ExifInterface
השיטה הבוליאנית getLatLong(float[]) הוצא משימוש. במקום זאת, אפשר להשתמש בשיטה החדשה getLatLong(), שלא מקבלת ארגומנטים ומחזירה את הערך double[].
mediacompat
האפשרות
PlaybackStateCompat.Builder.setErrorMessage(CharSequence) הוצאה משימוש. במקום זאת, כדאי להשתמש בשיטה החדשה. setErrorMessage(int, CharSequence), שמעביר קוד שגיאה ותיאור אופציונלי.
האפשרות
EXTRA_SUGGESTION_KEYWORDS הוצאה משימוש. במקום זאת, משתמשים פונקציונליות חיפוש של MediaBrowserCompat.
v7.recyclerview
LinearLayoutManager.getInitialItemPrefetchCount() השם החדש הוא LinearLayoutManager.getInitialPrefetchItemCount(). השם הישן עדיין נתמך, אבל הוא יוסר בגרסה עתידית.

ממשקי API חדשים ושינויים

appcompat-v7
השיטה החדשה ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean) מפשט את האנימציה של סמל החלפת המצב של חלונית ההזזה לניווט.
customtabs
הוספת תמיכה בערוצי הודעות. לצפייה CustomTabsService.requestPostMessageChannel() וגם CustomTabsService.postMessage() לקבלת פרטים.
dynamic-animation
ספריית אנימציה חדשה מבוססת פיזיקה, שמספקת קבוצה של ממשקי API עבור יצירת אנימציות שמגיבות באופן דינמי לקלט של משתמשים.
leanback-v17
הוספת תמיכה לרקעים של פרלקס. לצפייה Parallax לקבלת פרטים.
נוספה TimePicker ווידג'ט לבחירת שעות בממשק טלוויזיה.
mediacompat
הוספת פונקציונליות חיפוש. לצפייה MediaBrowserCompat.search() וגם MediaBrowserServiceCompat.onSearch() לקבלת פרטים.
נוספה תמיכה במצבי אקראי וחזרה. לצפייה MediaSessionCompat.setRepeatMode() וגם setShuffleModeEnabled() לקבלת פרטים.

בעיות שתוקנו

גרסה 25.2.0

(פברואר 2017)

שינויים חשובים

בעיות שתוקנו

  • הגרסה הזו מתקנת בעיה חמורה ב-Mediarouter שבמסגרתה שימוש ב-A2DP. ממשקי API לניתוב מדיה ומכשירים עלולים לגרום למכשיר להפסיק להגיב, נדרשת הפעלה מחדש.
  • FragmentManager.FragmentLifecycleCallbacks עכשיו הוא סטטי.

בעיות שתוקנו

  • הצגת מצגת שקפים עם שיקוף מסך גורמת למכשיר התנתקות מ-Wi-Fi
  • לחצן המדיה לא טיפל כראוי באפליקציות מדיה שלא נרשמו עם setMediaButtonReceiver()
  • שגיאת VectorDrawable במשאב מחרוזת (בעיית AOSP 232407)
  • רמז לשכבת-על של TextInputLayout טקסט אם מוגדר טקסט באמצעות XML (בעיית AOSP 230171)
  • דליפת זיכרון ב-MediaControllerCompat (בעיה ב-AOSP 231441)
  • RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback() קורס
  • RecyclerView קורסת בזמן מיחזור בעלי צפיות (בעיות AOSP 225762)
  • הפונקציה getAllowGeneratedReplies() מחזירה את הערך False באופן שגוי עבור פעולות בתוך רכיב WearableExtender

גרסה 25.1.1

(ינואר 2017)

חשוב: יש באג ידוע ב-android.support.v7.media.MediaRouter בגרסאות 25.1.1 ו-25.1.0 של ספריית התמיכה. אם האפליקציה משתמשת גרסה 7 של MediaRouter, עליך לעדכן לגרסה 25.2.0 של ספריית התמיכה, שמתקנים את הבאג.

שינויים חשובים

  • כעת ניתן לבצע אופטימיזציה של עסקאות מקטעים בתוך עסקאות. אופטימיזציה של פעולות של טרנזקציות קטעים יכולה לבטל פעולות שמתבטלות. לדוגמה, נניח ששתי עסקאות בוצעה יחד, והחלק שמוסיף את מקטע A ואת המקטע השני מחליפה את מקטע A בקטע B. במקרה הזה, הפעולה הראשונה יכולה להתבטל, ויתווסף רק קטע B. כלומר, המקטע ייתכן ש-A לא יעבור את מחזור החיים של יצירה/השמדה.

    תופעת לוואי של אופטימיזציה זו היא שייתכן שמקטעים מכילים מצב שינויים מחוץ לסדר הצפוי. לדוגמה, נניח שעסקה אחת מוסיף את קטע A, השני מוסיף את מקטע B ואז שלישי מסיר את שבר ת. ללא אופטימיזציה, חלק ב' יכול לצפות שבזמן שהוא נוצר, קטע A קיים גם הוא מפני שקטע A יוסר אחרי הוספת מקטע B. בביצוע אופטימיזציה, חלק B לא יכול להיות בטוח שמקטע א' יתקיים בזמן היצירה של מקטע B, כי מקטע א' ייתכן שהאופטימיזציה תבטל את היצירה והשמדה.

    האופטימיזציה הזו מושבתת כברירת מחדל. כדי להפעיל את האופטימיזציה, קוראים לפונקציה FragmentTransaction.setAllowOptimization(true).

  • עכשיו מקטעים יכולים לדחות את המעברים והאנימציות עד שהם מוכנים באמצעות Fragment.postponeEnterTransition() ו-Fragment.startPostponedEnterTransition(). ה-API הזה דומה ל-Activity.postponeEnterTransition() ול-Activity.startPostponedEnterTransition() שמשמשים עם 'מעברי פעילות'.

בעיות שתוקנו

  • MediaSessionCompatTest נכשל עם IllegalArgumentException
  • DetailsFragment.installTitleView() לא נקרא ב-25.1.0
  • טרנזקציית Fragment נשארת כמו 'תצוגת רפאים' ביציאה (בעיית AOSP 230679)
  • צריך להוסיף ריווח בין BottomNavigationView בין סמל הפריט לטקסט (בעיה ב-AOSP 230653)
  • מאזינים שנבחרו חסרים ב-PlaybackFragment וב- PlaybackSupportFragment
  • המיקוד TextInputLayout לא משתנה בצורה תקינה באמולטור מספריית התמיכה גרסה 25.1.0 (בעיית AOSP) 230461)
  • אי אפשר להחליף את התפריט של BottomNavigationView (AOSP בעיה 230343)
  • RecyclerView עם StaggeredGridLayoutManager קריסות עם פריטים בהיקף מלא (בעיית AOSP 230295)
  • קריסת האפליקציה בMediaSessionCompat כשהיא באמצעות setCallback(null)
  • PlaybackGlueHostOld והקבוצה לא תישלח הודעה מ-PlaybackSupportGlueHostOld לשיחות חוזרות כאשר שינויים בשורה של ההפעלה
  • דוגמה אחת (PlaybackOverlayFragment) לא ניתן להפעיל את /test
  • RecyclerViewFocusRecoveryTest נכשל ב-API 15
  • צילומי מסך השורה מתמקדת בחלק העליון של המסך
  • RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback() קריסות ב-API 15
  • המספר setActions() ב-onSubactionClicked() לא תקין
  • RecyclerView קורסת במהלך מיחזור של חלק מבעלי התצוגות

גרסה 25.1.0

(דצמבר 2016)

חשוב: יש באג ידוע ב-android.support.v7.media.MediaRouter בגרסאות 25.1.1 ו-25.1.0 של ספריית התמיכה. אם האפליקציה משתמשת גרסה 7 של MediaRouter, עליך לעדכן לגרסה 25.2.0 של ספריית התמיכה, שמתקנים את הבאג.

שינויים חשובים

  • לקוחות של ווידג'טים בתוך RecyclerView (לדוגמה, רשימת גלילה אנכית ברשימות של גלילה אופקית) יתרונות משמעותיים בביצועים בעזרת רמז למנהלי הפריסה הפנימיים של RecyclerView כמה פריטים שצריך להכין לפני שהם גוללים במסך. שיחת טלפון LinearLayoutManager.setInitialPrefetchItemCount(N), N הוא מספר הצפיות הגלויות לכל פריט פנימי. לדוגמה, אם הרשימות הפנימיות האופקיות מציגות שלוש צפיות וחצי בפריטים לפחות בכל פעם, תוכלו לשפר את הביצועים על ידי התקשרות LinearLayoutManager.setInitialPrefetchItemCount(4) אם עושים את זה מאפשר ל-RecyclerView ליצור את כל צפיות מוקדמות, בעוד RecyclerView החיצונית היא גלילה, וכך מפחיתה באופן משמעותי את כמות הגמגם במהלך גוללים.
  • FragmentActivity.setSupportMediaController() והקבוצה FragmentActivity.getSupportMediaController() הוצאו משימוש. יש להשתמש בגרסה הסטטית החדשה MediaControllerCompat.setMediaController() ו-MediaControllerCompat.getMediaController() שיטות.
  • כשלקוח מציין גוון לווידג'ט באמצעות כוונון כוונון של אפליקציות (לדוגמה, appcompat:buttonTint), הלקוח אחראי לספק את כל המצבים הנחוצים (למשל, "מושבת", "בלחיצה" וכו'). הדבר בהתאם לאופן שבו מציינים את גווני הווידג'ט כשמשתמשים בהגוון של framework.

ממשקי API חדשים ושינויים

בעיות שתוקנו

  • מתג הצגת הסיסמה נכשל בבדיקות הנגישות.
  • תאימות האפליקציה לא מתייחסת לstate_enabled במכשירים במצב טרום-L.
  • מנגנון לשחזור פוקוס נוסף אל RecyclerView. גם העדפת תמיכה קבועה פוקוס מקטעים שבור בעת שימוש בניווט עם מקשי חיצים, כמו ב-Android TV מכשירים.
  • Leanback: קריסות של BrowseFragment עם כותרות מושבתות ומתאם ריק.
  • תאימות: הפורמט AlertDialog רחב מדי.
  • InputContentInfoCompat שיחות requestPermission() כשהיא צריכה לקרוא ל-releasePermission().
  • MediaBrowserCompat קריסות.
  • CoordinatorLayout מודדת/פורס את התצוגות כאשר החשיפה מוגדרת ל: GONE
  • לא ניתן היה לבצע גוון של AnimatedVectorDrawableCompat ברמת ה-API מתחת ל-24
  • ספריית Leanback מפעילה שגיאות איתור שגיאות בקוד (lint)
  • ספריית לוחות הצבעים גרמה לכשלים בבדיקה בכל רמת API
  • RecyclerView בדיקות שנכשלו ב-Leanback
  • RecyclerView קורסת בזמן מיחזור בעלי צפיות (בעיות AOSP 225762)
  • Fragment.onDestroy() לא בוצעה קריאה למקטע ב-backstack
  • הסימן CollapsingToolbarLayout הוא לא משורטט במצב מכווץ
  • זריקות של CoordinatorLayout.offsetChildByInset() IllegalArgumentException
  • ניתוק של RecyclerView פריטים עם אנימציה RecyclerView פנימי, למנוע עתיד שליפות מראש
  • אי אפשר לצרף RecyclerView פריטים שליפה מראש (prefetch)
  • אחזור נתונים מראש עבור RecyclerView בתצוגת עץ הפריטים נמחקים במהלך הפריסה הראשונה
  • השליפה מראש (prefetch) של RecyclerView תיכשל אם תתבצע גרירה של שתי גרירה האירועים מגיעים לאותו מיקום
  • RecyclerView צריך להיות ספקולטיבי בזמן עיבוד של RenderThread
  • במקרים מסוימים, משאבי צבע בהגדרת לילה שהומרו ל'פריטים להזזה' נמחקו באופן סופי מהמטמון של המשאבים
  • FloatingActionButton: הגדרה פרוגרמטית של BackgroundTintList לא פועלת כמו שצריך (AOSP בעיה 227428)
  • TextInputLayout: הגופן אינו מקבל הגדרה ל-ErrorView (בעיה AOSP 227803)
  • TextInputLayout תמיד נופלת לצבע שגיאה בהיר מתחת ל-API 23 (בעיית AOSP 221992)
  • FloatingActionButton מוצג בתור בוצעה לחיצה כשהסמן עוזב

רשימה מלאה של תיקוני באגים זמינה ב מעקב אחר בעיות ב-AOSP.

הוצאה משימוש

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

גרסה 25.0.1

(נובמבר 2016)

בעיות שתוקנו

  • מתג הסיסמה של TextInputLayout מושבת עכשיו כברירת מחדל כדי למנוע החלפה שלא לצורך פריטי גרפיקה סופיים שצוינו על ידי המפתח. ייתכן שהיא תופעל באופן ידני דרך מאפיין XML passwordToggleEnabled.
  • BottomNavigationView פריטים שורה אחת להתאמה למפרט Material.
  • RecyclerView קריסות במהלך שליפה מראש (prefetch) אם מנהל הפריסות אינו null.
  • הגובה של BottomNavigationView הוא מוגדר כראוי. (בעיה AOSP 226182)
  • האפליקציה BottomNavigationView קורסת בזמן להוסיף אפשרויות בתפריט באופן פרוגרמטי. (בעיה AOSP 225731)
  • תיקון ל-TextInputLayout שמאל+ימין רכיבים מורכבים. (בעיה AOSP 225836)
  • RecyclerView קורסת בזמן מיחזור בעלי צפיות. (בעיה AOSP 225762)
  • Leanback: TalkBack אומר לעיתים קרובות את המילה "null" בתצוגות מסך מפוצל.
  • RecyclerView: בעיות רינדור ב: ב-Android Studio. (בעיה AOSP 225753)
  • BottomNavigationView עדיין מופיע/ה האפשרות בתפריט שנבחרה אחרי onNavigationItemSelected() מחזירה False. (בעיה AOSP 225898)
  • ArchiveListener זורק את NoSuchMethodError. (AOSP) בעיה 225647)
  • TextInputEditText לא מוצג רמזים במצב חילוץ IME. (בעיה AOSP 221880)

רשימה מלאה של תיקוני באגים זמינה ב מעקב אחר בעיות ב-AOSP.

גרסה 25.0.0

(אוקטובר 2016)

שינויים חשובים

  • constructor של ContextCompat מוגן. אין ליצור מופע של הקטגוריה הזו באופן ציבורי, אבל יכול להיות הרחבה על ידי ספריות תמיכה שמטרגטות רמות API חדשות יותר.
  • ה-constructor של ActivityCompat נוצר מוגן. אין ליצור מופע של הקטגוריה הזו באופן ציבורי, אבל יכול להיות הרחבה על ידי ספריות תמיכה שמטרגטות רמות API חדשות יותר.
  • היצירה של getReferrer(Activity) בוצעה סטטי.
  • android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V) הוסר. כל הטמעה של השיטה הזו על ידי הלקוח צריך להסיר אותן.
  • android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object) הוסר. צריך להחליף את השימושים שיטה עם שם תקין fromMediaSession()
  • android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object) הוסר. צריך להחליף את השימושים כך שיתאימו יותר שיטה בעלת שם MediaSessionCompat.QueueItem#fromQueueItem
  • android.support.v7.widget.Space הוסר. שימושים צריך להחליף את הערך ב-android.support.v4.widget.Space.

ממשקי API חדשים

  • כיתה אחת (android.support.design.widget.BottomNavigationView) מיישם את הכותרת מהמפרט של Material Design.
  • החבילה החדשה של android.support.v13.view.inputmethod כוללת כיתות על גישה לתכונות של android.view.inputmethod.InputConnection שהושקו אחרי API רמה 13.
  • כיתה אחת (android.v7.widget.RecyclerView.DividerItemDecoration) מספק הטמעה בסיסית לקווים מפרידים אנכיים או אופקיים בין פריטים.
  • סגנונות עיצוב חדשים בקטגוריה android.support.v7.app.NotificationCompat, DecoratedCustomViewStyle והקבוצה DecoratedMediaCustomViewStyle, כיתות שיקוף נוספו ב- Platform API 24.

בעיות שתוקנו

רשימה מלאה של תיקוני באגים זמינה ב מעקב אחר בעיות ב-AOSP.

גרסה 24.2.1

ספטמבר 2016

בעיות שתוקנו:

רשימה מלאה של תיקוני באגים זמינה ב מעקב אחר בעיות ב-AOSP.

גרסה 24.2.0

אוגוסט 2016

גרסה 24.2.0 כוללת את השינויים הבאים:

הערה: גרסה 24.2.0 מסירה את התמיכה ב- Android מגרסה 2.2 (רמת API 8) ומטה. כיתות ושיטות שקיימות רק עבור להציג את גרסאות המערכת האלה מסומנות עכשיו כגרסאות שהוצאו משימוש ולא אמורות להיות מוקצות להן יותר . יכול להיות שהכיתות והשיטות האלה שהוצאו משימוש יוסרו בעתיד גרסה חדשה.

פיצול ספריית התמיכה לגרסה 4

בגרסה הזו, ספריית התמיכה של גרסה 4 כוללת שפוצלו לכמה מודולים קטנים יותר:

support-compat
הוא מספק wrappers לתאימות לממשקי API חדשים של framework, כמו Context.getDrawable() והקבוצה View.performAccessibilityAction().
support-core-utils
קיימים כמה סוגי שירותים, כמו AsyncTaskLoader ו-PermissionChecker.
support-core-ui
הטמעת מגוון רכיבים שקשורים לממשק המשתמש, כמו ViewPager, NestedScrollView ו-ExploreByTouchHelper.
support-media-compat
חלקים חוזרים ב-framework של המדיה, כולל MediaBrowser ו-MediaSession.
support-fragment
ביצוע העברה לאחור של המקטע . המודול הזה תלוי ב-support-compat, support-core-utils, support-core-ui וגם support-media-compat

בתאימות לאחור, אם מציינים support-v4 סקריפט Gradle, ה-APK יכלול את כל המודולים האלה. אבל כדי לצמצם גודל ה-APK, מומלץ לציין רק את המודולים הספציפיים שדרושים לאפליקציה.

עדכונים באמצעות API

  • לקוחות שמשתמשים בכרטיסיות מותאמות אישית יכולים לקבוע אם אפליקציות ללא התקנה ייפתחו. (לתשומת ליבכם: אפליקציות ללא התקנה עדיין לא). זמינים לכלל המשתמשים.) כדי להפעיל או להשבית אפליקציות ללא התקנה, התקשרו אל CustomTabsIntent.Builder.setInstantAppsEnabled() או פרט EXTRA_ENABLE_INSTANT_APPS כברירת מחדל, עבור כרטיסיות מותאמות אישית הוא ברירת המחדל להפעלת אפליקציות ללא התקנה, כאשר התכונה הזו הופכת לזמינה.
  • הוספת תמיכה של TextInputLayout ה מתג להצגת סיסמאות ממפרט עיצוב התוכן.
  • הממשק החדש של android.support.transition מבצע העברה חוזרת של חבילה במסגרת המעברים לרמות 14 של API גבוהה יותר. אפשר לקרוא מידע נוסף בחומר העזר בנושא android.support.transition.
  • ספריית התמיכה של כרטיסיות מותאמות אישית מוסיף תמיכה לשימוש ב-RemoteViews במחלקה המשנית בסרגל הכלים. הנכס הקיים setToolbarItem() שהוצאה משימוש.
  • AppCompatResources מוסיף את יכולת לטעון <vector> (ב-API ברמה 9 ומעלה) או <animated-vector> (ברמת API 11 ומעלה) מזהה משאב, באמצעות ה-method החדש getDrawable().
  • CoordinatorLayout תומך עכשיו שמגדירות תצוגות מוטמעות ומציינים שתצוגות אחרות צריכות להתחמק מהמערך צפיות. ההגדרה הזו מאפשרת לאפליקציות לשכפל דפוסי התנהגות בדומה לאופן שבו FloatingActionButton יוצא מתוך דרך Snackbar, אבל וצופים שרירותיים ככל האפשר. מידע נוסף זמין במאמר LayoutParams.insetEdge ו LayoutParams.dodgeInsetEdges מאמרי עזרה.
  • המחלקה החדשה DiffUtil יכולה לחשב את ההבדל בין אוספים, ויכולים לשלוח רשימה של פעולות עדכון שמתאימות לצריכה על ידי RecyclerView.Adapter.
  • האתר RecyclerView.OnFlingListener נוסף לתמיכה בהתאמה אישית בתגובה לשלטים. SnapHelper מספק יישום ספציפי לתיעוד צפיות של ילדים, LinearSnapHelper class מרחיב את היישום הזה כדי לספק הצמדה (Snapping) מיושרה למרכז התנהגות שדומה ל-ViewPager.
  • ספריית הכרטיסיות המותאמות אישית מאפשרת עכשיו ללקוחות לבקש ממשק משתמש של הדפדפן, במקום ממשק המשתמש של כרטיסיות מותאמות אישית, על ידי קריאה ל- CustomTabsIntent.setAlwaysUseBrowserUI() מה קורה? שימושי במקרים שבהם ברירת המחדל של הדפדפן היא ממשק המשתמש של כרטיסיות מותאמות אישית, אבל המשתמש מבטא העדפה לממשק המשתמש הרגיל של הדפדפן.

שינויים בהתנהגות

  • אם אתם משתמשים בפונקציונליות היומית/לילה של ספריית האפליקציות, המערכת יוצר מחדש באופן אוטומטי את הפעילות בכל פעם שמצב היום/הלילה משתנה (בגלל השעה ביום או בגלל שיחה אל AppCompatDelegate.setLocalNightMode()).
  • Snackbar תיקח עכשיו מאחורי סרגל ניווט אם שורת הסטטוס שקופה.

ספריית MediaRouter

מכשירי Bluetooth כבר לא רשומים כנתיבי מדיה. מתבצע ניתוב של האודיו אל מכשירי Bluetooth מנוהלים עכשיו רק ברמת מערכת Android.

הוצאה משימוש

מחלקות ושיטות שהוצאו משימוש עשויות להיות מוסרות בגרסה עתידית. עליך לבצע את המעבר מממשקי ה-API האלה בהקדם האפשרי.

  • כמה שיטות במחלקות הבאות היו נדרשות רק ל-API 8 נמוכה יותר, וכבר לא צריך להשתמש בו. במקום זאת, משתמשים ב-framework בפועל.
    • android.support.v4.view.KeyEventCompat: החלפה ב-KeyEvent
    • android.support.v4.view.MotionEventCompat: שימוש ב-MotionEvent
    • android.support.v4.view.ViewCompat: שימוש ב-View
    • android.support.v4.view.ViewConfigurationCompat: שימוש ב-ViewConfiguration
  • AccessibilityServiceInfoCompat.getDescription() הוצאה משימוש לטובת AccessibilityServiceInfoCompat.loadDescription(), שתחזיר תיאור שמותאם לשוק המקומי.
  • אסור ליצור את המחלקה ActivityCompat ישירות. ה-method הלא סטטי getReferrer(Activity) תהיה סטטיים במהדורה עתידית.
  • האפשרות CoordinatorLayout.Behavior.isDirty() הוצאה משימוש ולא שנקראה על ידי CoordinatorLayout. כלשהו יש להסיר וכל קריאות לשיטה הזו.
  • הממשק MediaSessionCompat.obtain() הוצא משימוש והוחלף באמצעות השיטה עם השם המתאים יותר fromMediaSession().
  • הממשק MediaSessionCompat.QueueItem.obtain() הוצא משימוש והוחלף ב- השיטה עם השם המתאים יותר fromQueueItem().
  • כמה כיתות מופשטות הוצאו משימוש והוחלפו ב- ממשקים שמשקפים בצורה מדויקת יותר את המקבילה להם ב-framework.
  • CustomTabsSession.setToolbarItem() הוצא משימוש והוחלף ב- מבוססת-תצוגות מרוחקות setSecondaryToolbarViews().

תיקוני באגים

הבעיות הידועות הבאות תוקנו בגרסה 24.2.0:

  • מוודאים שהאינדיקטור SwipeRefreshLayout מוצג קוראים לפונקציה setRefreshing(true) לפני מעבר המדידה הראשון (AOSP) בעיה 77712)
  • TabLayout לא להבהב במהלך החלפת דפים (AOSP) בעיה 180454)
  • נמנעים מClassNotFoundException כשמבטלים תכנון SavedState ברמת API 11 ומטה (בעיה ב-AOSP) 196430)

רשימה מלאה של תיקוני באגים זמינה ב מעקב אחר בעיות ב-AOSP.

גרסה 24.1.1

יולי 2016

בעיות שתוקנו:

  • תיקון בעיה בגרסה 24.1.0 שהשפיעה על מזהי המשאבים שמשותף בין ספריות תמיכה. הבעיה גרמה לאפליקציות שהסתמכו על לתמוך בספריות עם משאבים (כמו עיצוב ותאימות) כדי בעיות שנגרמות עקב אי-התאמות של מזהי משאבים.

גרסה 24.1.0

יולי 2016

שינויים בתמיכה בגרסה 4 ספרייה:

בעיות שתוקנו:

  • תוצאות של TabLayout.setCustomView(null) ב-NullPointer וגם (AOSP) בעיה 214753)
  • פריסת Tab מדגישה באופן שגוי כרטיסיות מותאמות אישית (בעיה מס' 214316 של AOSP)
  • AppCompatTextHelper משתמש במערך מאפיינים שממוין באופן שגוי (בעיה AOSP 214366)
  • לא ניתן להפנות ל-VectorDrawable מ-XML של קונטיינר שניתן לשרטוט כשמשתמשים ContextWrapper בהתאמה אישית (בעיה AOSP 214055)
  • ViewDragHelper.saveLastMotion() גורם ל-ArrayIndexOutOfBounds וגם (AOSP) בעיה 212945)
  • העמודה BottomSheetBehavior מתרחבת לגובה התוכן הישן במהלך השימוש setState(STATE_expANDED) (בעיה ב-AOSP) 213660)
  • כיווץ סרגל הכלים של Google לא מטפל בילדים שניתן להצמיד עם שוליים תחתונים (בעיה ב-AOSP) 213001)
  • כותרת הגלישה של Leanback אינה תומכת ביישור RTL (בעיית AOSP) 213461)
  • PagerTabStrip נעלם כי חסרה הערה שעברה בירושה (בעיה ב-AOSP) 213359)
  • קישור נתונים גורם ל-NullPointer וגם להשתמש בערך בוליאני להגדרה סימונים מותנים (בעיית AOSP) 191841)
  • CoordinatorLayout לא מגיב ל-setFitsSystemWindows() (בעיית AOSP 212720)
  • BottomSheetBehavior קורס בזמן הגדרת המצב הראשוני (בעיית AOSP) 203114)
  • ViewPager מדלג על דפים אם אינדקס הדף הוא ערך גדול (בעיית AOSP) 211734)
  • התכונה BottomSheetBehavior לא פועלת עם פריסות דינמיות (בעיית AOSP) 205226)

גרסה 24.0.0

יוני 2016

שינויים בתמיכה בגרסה 4 ספרייה:
  • הכתובת Fragment.commitNow() התווספה לשמירה סנכרונית
  • הכתובת NotificationCompat.MessagingStyle התווספה לשיחות עם משתמשים מרובים
  • הכתובת NotificationManagerCompat.areNotificationsEnabled() התווספה ו-getImportance()
  • MediaSessionCompat משקף עכשיו את הפונקציונליות של MediaSession ולא קורא יותר אל setMediaButtonReceiver() באופן אוטומטי

הערה: רק MediaBrowserServiceCompat בגרסה 24.0.0 תהיה תואמת ל-'Android' בגרסאות עתידיות של Android מעבר ל-API 24. אם משתמשים בגרסאות קודמות, צריך לעדכן לגרסה הזו כדי להבטיח תאימות.

שינויים ב-v7 appcompat library:
  • נוספה תמיכה בהפניה לאובייקטים של ColorStateList מ-XML
שינויים בתמיכה בעיצוב ספרייה:
שינויים בספריית Leanback v17:
  • הוספת את OnboardingFragment כדי להביע היכרות עם הפעלה ראשונה ואת תהליך ההגדרה.
שינויים בכרטיסיות מותאמות אישית:
  • נוספה תמיכה בציון RemoteViews ההיררכיה של סרגל הכלים המשני
  • הכתובת CustomTabsClient.connectAndInitialize() התווספה לחימום בשורה אחת

גרסה 23.4.0

מאי 2016

שינויים בתמיכה בגרסה 4 ספרייה:
  • תוקנה בעיה שבה מקטעים נוספו בסדר שגוי. (בעיה 206901)
  • תוקנה בעיה שגרמה לכך שסרגל האפליקציות לא מוצג לאחר גלילה מחוץ למסך. (בעיה 178037)
שינויים ב-v7 appcompat library:
שינויים בתמיכה בעיצוב ספרייה:
שינויים בספרייה וקטורית שניתנת להזזה:

גרסה 23.3.0

אפריל 2016

שינויים בתמיכה בגרסה 4 ספרייה:
  • הוספת את AppLaunchChecker כדי לעזור במעקב אחר אופן השימוש באפליקציה הושק על ידי המשתמש בעבר. hasStartedFromLauncher() מיידע אותך אם המשתמש הפעילו את האפליקציה ממסך הבית בעבר, או אם רק בוצעה באמצעים אחרים (לדוגמה, כדי להציג דפי אינטרנט ספציפיים כתובות URL).
  • תוקנה דליפת זיכרון ב- MediaBrowserServiceCompat.mConnections (בעיה 205220)
  • תוקנה בעיה שבה ViewPager לא לוקחת בחשבון את שולי הדף כאשר עוברים בין דפים. (בעיה 203816)
  • הפריט Fragment.onRequestPermissionsResult() נמסר עכשיו לילד או לילדה של קטעים שונים.
שינויים ב-v7 appcompat library:
שינויים ב-v7 ספריית mediarouter:
שינויים בהעדפה לגרסה 7 ספרייה:
שינויים ב-v7 ספריית recyclerview:
שינויים בתמיכה בעיצוב ספרייה:

גרסה 23.2.1

מרץ 2016

שינויים בתמיכה בגרסה 4 ספרייה:
שינויים ב-v7 appcompat library:
  • בוטלה התלות בנכסי וקטורים, כך שמפתחים שמשתמשים תאימות לא מאולצות להשתמש ב-VectorDrawable וב דגלי ה-build שמשויכים אליו.
  • תוקנה בעיית תאימות למצב לילה ולרמת API 23. (בעיה 201910)
  • תוקנה בעיית תאימות עם SwitchCompat ורמת API 7. (גיליון 201942)
  • תוקנה בעיה בהפצת ערכי תצורה באובייקטים של משאבים גיליון 201928
  • תוקנה בעיית תאימות שבה android.support.v7.app.NotificationCompat.MediaStyle לחצן הביטול הופך לבלתי נראה ברמת ה-API 21 ומטה. (גיליון 202156)
  • תוקנה קריסה של תאימות עם AppCompatSpinner ברמת API 21 ומטה. (גיליון 202246)
  • תוקנה בעיה שבה הסגנון app:textAllCaps = "false" לא הצליח בעבודה. (גיליון 202117)
  • תוקנה קריסה במהלך השחזור של SearchView. (בעיה 201836)
  • תוקנה דליפת זיכרון שמתרחשת במהלך צביעת משאבים שניתנים להזזה באמצעות AppCompat. (גיליון 202379)
  • תוקנה בעיה עם KeyEvent ברמת API 11 ו- נמוכה יותר. (גיליון 202939)
שינויים בתצוגת כרטיס v7 ספרייה:
שינויים ב-v7 ספריית recyclerview:
  • תוקנו באגים שקשורים לשיטות שונות של מפרט מדידה. (בעיה 201856)
  • קיצרנו את תקופת הנעילה שבה RecyclerView לא מאפשר שימוש במתאם בזמן החישוב של הפריסה או הגלילה. (בעיה 202046)
  • תוקנה קריסה במהלך קריאה ל-notifyItemChanged() בפריט שלא מופיע בתצוגה. (בעיה 202136)
  • תוקנה קריסה שאירעה כאשר RecyclerView.LayoutManager מוסיף ומסיר תצוגה אחת באותה תצוגה של מדידת התחזקות המותג. (בעיה 193958)
שינויים ב-v7 ספריית mediarouter:
שינויים בגרסה 17 ספריית Leanback:
  • תוקנה בעיה עם GridLayout.onAddFocusables() ש גרמה לבחירה בפריט הלא נכון.
  • תוקנה בעיה ב-GuidedStepFragment פעולות נעלמת אחרי שפעולה מכווצת.
שינויים בתמיכה בעיצוב ספרייה:
שינויים ב-VectorDrawableCompat:
  • תוקן באג שבו נקרא משתנה שגוי עבור android:tintMode. (בעיה 201907)

גרסה 23.2.0

פברואר 2016

שינויים בספריית התמיכה של v4:
  • הוספת MediaBrowserCompat לתמיכה ב-MediaBrowser ו-MediaBrowserServiceCompat לתמיכה ב-MediaBrowserService. זה מועיל כשמחברים שירות רקע של אפליקציית מדיה באמצעות רכיבי ממשק המשתמש, ושילוב עם Android Auto ו-Android Wear ללא צורך רמת API: 21 ומעלה.
  • המערכת קוראת עכשיו ל-onActivityResult() ל FragmentActivity בתצוגת עץ.
שינויים ב-v7 AppCompat ספרייה:
  • נוספה הפונקציונליות של מצב לילה לרמת API 14 ואילך. לביצוע ההעברה בין חומר עיצובים כהים בהירים ואיכותיים לפי השעה ביום או הגדרה ספציפית לאפליקציה.
    • ניתן למצוא עיצובי יום ולילה כאן: <sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
    • AppCompatDelegate.setDefaultNightMode(): מגדיר את את מצב ברירת המחדל של האפליקציה באמצעות העברת אחד מהקבועים הבאים:
      • MODE_NIGHT_AUTO
      • MODE_NIGHT_NO
      • MODE_NIGHT_YES
      • MODE_NIGHT_FOLLOW_SYSTEM
    • AppCompatDelegate.setLocalNightMode(): שינויים מברירת המחדל הגדרת מצב לילה של רכיב האפליקציה המקומי.
    • AppCompatDelegate.getDefaultNightMode(): החזרות מצב ברירת המחדל של לילה.
שינויים ב-mediarouter v7 ספרייה:
  • MediaRouteControllerDialog עכשיו מחילה בצורה נכונה צבעי עיצוב מותאמים אישית של אפליקציה.
שינויים בספריית התמיכה לעיצוב:
  • נוספה תמיכה בתחתית גיליונות אלקטרוניים. פלאגין אינטראקציה, BottomSheetBehavior, מאפשר תצוגת צאצא של CoordinatorLayout לפעול בתור גיליון תחתון. מחלקת הבסיס, BottomSheetCallback, מספקת קריאות חוזרות (callback) למעקב אחר אירועים בגיליון התחתון.
שינויים בתמיכה של CustomTabs ספרייה:
  • Chrome עכשיו התכונה 'כרטיסיות מותאמות אישית' מאפשרת לאפליקציות לכלול סרגל תחתון עם פעולה בנוסף ללחצן הפעולה העליון הקיים.
  • CustomTabsIntent.Builder.addToolBarItem(): הוספת פעולה לכרטיסייה מותאמת אישית. ניתן להשתמש בו כדי להוסיף לחצנים מרובים.
  • CustomTabsSession.setToolBarItem(): עדכון הרכיבים החזותיים לפריטים בסרגל הכלים. השיטה הזו תצליח רק אם תינתן לה מזהה חוקי והסשן של הדפדפן בחזית.
נוספה ספריית התמיכה של VectorDrawable:
  • כיתות שנוספו:
    • VectorDrawableCompat
    • AnimatedVectorDrawableCompat
  • הוספת תמיכה ב-VectorDrawable נכסים לאפליקציות ברמת API 7 ומעלה. AnimatedVectorDrawable נכסים דיגיטליים נתמכים גם ברמת API 11 ומעלה. נכסים וקטוריים יכולים להיות קטן באופן משמעותי מנכסי תמונות, והוא אמור לצמצם את השימוש גודל באמצעות הפחתת מספר הנכסים הנדרשים כדי לתמוך את מסכי המכשיר.
  • הספרייה הזאת תלויה עכשיו בספריית v7 AppCompat, מפתחים ו-AppCompat כדי להשתמש בקלות בפריטים גרפיים וקטוריים. כדי להשתמש ב-VectorDrawableCompat בתוך ImageButton או ImageView, צריך להשתמש ב-XML של app:srcCompat מאפיין או setImageResource() .
  • כדי להמשיך להפנות למזהי מאפיינים ברמת API 20, או נמוך יותר, מוסיפים את הדגל appt הבא לקובץ build,gradle:
    • אם אתם מפתחים עם הפלאגין Android ל-Gradle 1.5.0 או נמוכה יותר, יש להוסיף את הטקסט הבא לקובץ build.gradle:
    • android {
        defaultConfig {
          // Stops the Gradle’s automatic rasterization of vectors
          generatedDensities = []
        }
         // Flag that tells aapt to keep the attribute ids
        aaptOptions {
          additionalParameters "--no-version-vectors"
        }
      }
      
    • אם אתם מפתחים עם הפלאגין Android ל-Gradle 2.0.0 או גבוהה יותר, יש להוסיף את הטקסט הבא לקובץ build.gradle:
    • android {
        defaultConfig {
          vectorDrawables.useSupportLibrary = true
        }
      }
      
שינויים ב-Leanback של v17 ספרייה:
  • נוספו יכולות חדשות ל-GuidedStepFragment, רכיב שמנחה את המשתמשים בקבלת החלטה או סדרה של החלטות:
    • פעולות של לחצנים נוספו לGuidedAction:
      • GuidedStepFragment.setButtonActions(): מגדירה רשימה של GuidedAction לחצנים המשתמש יכול לבחור מתוך התצוגה 'פעולות'.
    • עכשיו אפשר לערוך את שדות התיאור:
      • GuidedAction.Builder.descriptionEditable(): כשמעבירים את העכבר true, מגדיר את תיאור הפעולה כך שניתן לערוך אותו.
      • GuidedAction.getEditDescription(): מחזירה את הערך שניתן לעריכה בתור CharSequence.
    • נוספו רשימות נפתחות של פעולות משנה:
      • GuidedAction.setSubActions(): מגדירה רשימה של GuidedAction כתפריט נפתח תפריט פעולות משנה.
  • נוסף הווידג'ט GuidedDatePickerAction לפונקציונליות של DatePicker:
    • התאריך נבחר באמצעות העמודות של שנה, חודש ויום, והוא כולל טווח ניתן להתאמה אישית.
    • GuidedDatePickerAction.Builder: המחלקה של ה-builder לאובייקט GuidedDatePickerAction.
    • GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat): כדי להגדיר את פורמט התאריך הרצוי, מעבירים את String באורך שלוש תווים מתאים, למשל “YMD” או “MDY”. לחלופין, צריך להשתמש במאפיין ה-XML מסוג datePickerFormat.
שינויים ב-RecyclerView בגרסה 7 ספרייה:
  • RecyclerView הביעו הסכמה עכשיו שנקראת AutoMeasure שמאפשרת ל-RecyclerView.LayoutManager לארוז בקלות או לטפל במפרטי מדידה שונים שמסופקים על ידי ההורה של RecyclerView. הוא תומך בכל יכולות האנימציה הקיימות של RecyclerView.
    • אם יש לכם RecyclerView.LayoutManager בהתאמה אישית, התקשרו למספר setAutoMeasureEnabled(true) כדי להתחיל להשתמש Automeasure API. כל האובייקטים RecyclerView.LayoutManager המובנים הפעלת המדידה האוטומטית כברירת מחדל.
    • RecyclerView.LayoutManager לא מתעלם יותר מהגדרות מסוימות של RecyclerView.LayoutParams, למשל MATCH_PARENT בכיוון הגלילה.

      הערה: המגבלות האלה עלולות לגרום או בלתי צפויה בפריסות שלך. הקפידו לציין את הפרמטרים הנכונים של הפריסה.

  • כשמעדכנים RecyclerView.ViewHolder עם מטען ייעודי (payload) מידע, DefaultItemAnimator משבית את שינוי האנימציות.
  • עכשיו אפשר לשנות את מהירות היציאה של ItemTouchHelper ל- שליטה ברגישות להחלקה. כדי שיהיה קל או קשה יותר להחליק, לשנות את getSwipeEscapeVelocity(float defaultValue) ולשנות את defaultValue.

גרסה 23.1.1

נובמבר 2015

שינויים בספריית recyclerview בגרסה 7:
  • תוקנה קריסה שמתרחשת כשביצעת פעולת החלקה לסגירת עסקה מחלקת השירות של ItemTouchHelper מספקת, ולאחר מכן מוסיפים פריט. (גיליון 190500)
שינויים בספריית ההעדפות של גרסה 7:
שינויים בספריית התמיכה ל-Leanback v17:
  • תוקנו מספר בעיות פנימיות בספרייה הזו.
שינויים בספריית התמיכה של העיצוב:
  • השיטה getHeaderView נוספה לכיתה NavigationView.
  • תוקנה בעיית רקע שקוף באובייקט FloatingActionButton ב- מכשירים שבהם פועלת Android 4.0 (רמת API 15) ומטה. (גיליון 183315)

גרסה 23.1.0

אוקטובר 2015

שינויים בספריית התמיכה של גרסה 4:
  • נוספה תמיכה בממשק OnScrollChangedListener ל הווידג'ט NestedScrollView. הוא מאפשרת לקבל קריאות חוזרות (callback) כשמיקומי הגלילה X או Y משתנים.
  • נוספה כיתה MediaButtonReceiver כדי להעביר את פקדי ההפעלה שהתקבלו לשירות שמנהל את הכיתה MediaSessionCompat. בכיתה אחת (MediaSessionCompat) יש שיכול למצוא באופן אוטומטי מקלט של לחצני מדיה במניפסט. א' מקלט לחצני המדיה הוא חלק מרכזי בטיפול פקדי הפעלה מרכיבי חומרה או מפקדי Bluetooth.
שינויים בספריית האפליקציה של גרסה 7:
  • נוסף ווידג'טים של עיצוב חומר Seekbar ו-ImageButton.
  • הווידג'ט ImageView עודכן כדי שיתמוך בתכונת הגוון.
  • המראה והסגנון של הווידג'ט SwitchCompat עודכנו.
שינויים בספריית Mediarouter של v7:
  • הוספנו את התכונות הבאות לכיתה MediaRouteChooserDialog:
    • הצגת דף טעינה בזמן חיפוש ספקים של נתיבי מדיה.
    • כולל סמל של סוג מכשיר לזיהוי קל יותר של המכשיר.
    • ממיינת המסלולים לפי תדירות השימוש באפליקציה הנוכחית.
    • תמיכה בפריסה לרוחב.
  • הוספנו את התכונות הבאות לכיתה MediaRouteControllerDialog:
    • זיהוי של העברת מסך ומספק תיאור מתאים.
    • תומכת במגוון גדלים ויחסי גובה-רוחב של עטיפת האלבום, וטוענת את הגרפיקה באופן אסינכרוני.
    • צבע התוכן נבחר אוטומטית על סמך הצבע הראשי של האפליקציה.
    • שינוי הפריסה של תיבת הדו-שיח בהתאם לשטח הזמין במסך במכשיר.
    • תמיכה בפריסה לרוחב.
שינויים בספריית לוח הצבעים 7:
  • נוספה השיטה setRegion() כדי לתמוך בחילוץ צבע ממאפיין ספציפי של אובייקט Bitmap.
שינויים בספריית recyclerview בגרסה 7:
  • הוספנו לכיתה ItemAnimator ממשק API משופר של אנימציה כדי לשפר את הביצועים התאמות אישיות:
    • שינוי האנימציות כבר לא אוכף שני עותקים של האובייקט ViewHolder, שמאפשר להפעיל אנימציות של תוכן הפריט. בנוסף, האובייקט ItemAnimator מחליט אם הוא רוצה להשתמש שוב באותו אובייקט ViewHolder או ליצור חדש.
    • ה-API החדש לרשומות מידע מעניק למחלקה ItemAnimator גמישות כדי לאסוף נתונים בנקודה הנכונה במחזור החיים של הפריסה. המידע הזה מופיע בהמשך מועברות לקריאות החוזרות (callback) המונפשות.
  • סיפקה תוכנית מעבר קלה לשינוי הזה ב-API, שאינו תואם לאחור:
    • אם בעבר הארכית את הכיתה ItemAnimator, אפשר לשנות זאת במחלקה הבסיסית SimpleItemAnimator והקוד אמור לפעול כמו קודם. המחלקה SimpleItemAnimator מספקת את ה-API הישן על ידי גלישת ה-API החדש.
    • חלק מהשיטות הוסרו מהכיתה ItemAnimator. הבאים לא יהיה יותר הידור:
    • Kotlin

      recyclerView.itemAnimator.supportsChangeAnimations = false
      

      Java

      recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
      

      אפשר להחליף אותו ב:

      Kotlin

      val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator
      animator?.supportsChangeAnimations = false
      

      Java

      ItemAnimator animator = recyclerView.getItemAnimator();
      if (animator instanceof SimpleItemAnimator) {
         ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
      }
      
שינויים ב-v7, v14, וגם ספריית התמיכה בהעדפות v17:
  • הוסרו ממשקי API לשליטה בתיבות דו-שיח של EditText.
שינויים בספריית התמיכה ל-Leanback v17:
  • נוספה גרסה של המחלקה GuidedStepFragment לספריית התמיכה (מרחיב android.support.v4.app.Fragment), ואנימציות משופרות ומשופרות מעברים שונים.
  • הכיתה GuidedStepFragment עודכנה כדי שניתן יהיה להציב אותה מעל תוכן קיים
  • נוספה האפשרות להוסיף הערות לסוגים שונים של השלמות חיפוש כיתה אחת (SearchFragment).
  • נוספה תמיכה במעבר בין שקפים זזים ל-VerticalGridFragment בכיתה.
שינויים בספריית התמיכה של העיצוב:
  • בוצעה הוספה של תמיכה בספירת תווים בווידג'ט TextInputLayout.
  • נוספה תמיכה בהצמדת קצה למחלקה AppBarLayout על ידי הוספת קבוע SCROLL_FLAG_SNAP. בסיום הגלילה, אם התצוגה היא בלבד גלויה חלקית, היא מצולמת וגוללת אל הקצה הקרוב ביותר שלה.
  • נוספה תמיכה בתצוגות בהתאמה אישית לכיתה NavigationView באמצעות מאפיין app:actionLayout או MenuItemCompat.setActionView() .
שינויים בספריית התמיכה בכרטיסיות מותאמות אישית:
  • השיטה enableUrlBarHiding() נוספה אל CustomTabsIntent בכיתה. המדיניות מאפשרת ללקוח לקבוע אם יש להסתיר את סרגל כתובות ה-URL באופן אוטומטי כשגוללים למטה.
  • השיטה setActionButton() נוספה אל CustomTabsSession בכיתה. היא מאפשרת ללקוח לשנות את הסמל של לחצן פעולה מותאמת אישית בכרטיסיית מותאמת אישית שכבר הושקה.
  • הקבועים TAB_SHOWN ו-TAB_HIDDEN נוספו כאירועים חדשים ל-method onNavigationEvent של CustomTabsCallback בכיתה.

גרסה 23.0.1

ספטמבר 2015

שינויים ב-v7 וב- ספריית התמיכה בהעדפות v14:
  • נוספה הפריסה של עיצוב חומר וסגנון קבצים. (גיליון 183376)
שינויים בספריית האפליקציה של גרסה 7:
  • תוקנו בעיות קריסה בכיתה Fragment על ידי הגבלת השימוש ב- ל-Android מגרסה 4.1 (רמת API 16) ואילך. (גיליון 183896)
  • תוקנה בעיה שבה לחצני החומרה לא פעלו כאשר פעילות הגדירה את הכיתה Toolbar שתוגדר בתור ActionBar באמצעות השיטה setSupportActionBar(). (גיליון 183334)
  • הכיתה AppCompatDialogFragment עודכנה לא יקפיץ יותר את Windows feature must be requested before adding content שגיאה. (גיליון 183186)
שינויים בספריית התמיכה של העיצוב:
  • תיקנו את כיתה אחת (AppBarLayout), כך שמעכשיו היא תשורטט נכון אחרי בסבב. (גיליון 183109)
  • תיקנו את כיתה אחת (TabLayout), כך שעכשיו היא פועלת כראוי כאשר המשתמש לוחץ אחרי החלקה. (גיליון 183123)
שינויים בספריית התמיכה בכרטיסיות מותאמות אישית:

גרסה 23

אוגוסט 2015

ספריות תמיכה חדשות שנוספו:

לרשימה המלאה של השינויים בספריית התמיכה, תמיכה דוח ההבדלים ב-Library API.

גרסה 22.2.1

יולי 2015

שינויים בספריית התמיכה של העיצוב:
  • נוספו השיטות hide() ו-show() אל כיתה FloatingActionButton להצגה פרוגרמטית הקפצה של אנימציות.
  • הוספנו את הקבוע LENGTH_INDEFINITE אל שיעור Snackbar להצגת סרגל אינטראקטיבי עד שסוגרים אותו או שמוצג סרגל אינטראקטיבי אחר. כמו כן, הוספתי setActionTextColor(int) והקבוצה setActionTextColor(ColorStateList) שיטות.
  • השיטה getSelectedTabPosition() נוספה אל המחלקה TabLayout לאחזור המחלקה הנוכחית הכרטיסייה שנבחרה.
  • לספק ממשק API שוטף לחלוטין סיווג אחד (android.support.v7.app.NotificationCompat.MediaStyle) ל-method יצירת שרשרת.
  • הוספנו שיטות נוחות RecyclerView להכנסת פריטים בכמות גדולה.

לרשימה המלאה של השינויים בספריית התמיכה, תמיכה דוח ההבדלים ב-Library API.

גרסה 22.2.0

מאי 2015

נוספה ספריית תמיכת העיצוב:
  • הוספת את TextInputLayout להצגת EditText רמז וטקסט שגיאה כתוויות צפות.
  • הוספת את FloatingActionButton ליישום הפעולה הראשית בממשק שלכם לחצן פעולה צף, שתומך בגודל ברירת מחדל או בגודל מיני.
  • הוספת את Snackbar כי סופקה לך גרסה קלילה משוב עם פעולה אופציונלית בסרגל אינטראקטיבי מונפש.
  • הוספת את TabLayout ליישום של התיקונים והתיקונים ניתן לגלילה וכרטיסיות שילוב עם ViewPager
  • הוספת את NavigationView ליישום חלונית הזזה לניווט תכנים שונים, כולל יכולת להגדיל את האפשרויות בתפריט באמצעות מקור המידע על התפריט.
  • נוסף CoordinatorLayout, למטרה כללית משמשת לבניית יחסי תלות בין תצוגות אחות ומאפשרות תגובות גלילה בקלות בין הרכיבים באמצעות CoordinatorLayout.Behavior. הרבה מהעיצוב רכיבי ספרייה מסתמכים על כך שהם צאצאים של CoordinatorLayout
  • נוסף AppBarLayout, מאגר של Toolbar ותצוגות אחרות (כמו TabLayout) עבור מגיבים לאירועים נגללים על ידי גלילה אל מחוץ למסך, והופכים להיות גלויים בתגובה לגלילה למטה, או לכיווץ/ביטול כיווץ לפני שגוללים אל המסך או עוברים אליו.
  • הוספת את CollapsingToolbarLayout לצורך שליטה האופן שבו Toolbar מתכווץ. סרגל כלים עשוי להתכווץ על ידי: להצמיד רכיבים לחלק העליון של המסך בזמן שהוא מתכווץ, גלילת פרלקס של רכיבים כמו ImageView, או הוספת רצועת תמונות של התוכן כשהתצוגה מכווצת חלקית.
שינויים בספריית התמיכה של גרסה 4:
שינויים בספריית האפליקציה של גרסה 7:

לרשימה המלאה של השינויים בספריית התמיכה, תמיכה דוח ההבדלים ב-Library API.

גרסה 22.1.0

אפריל 2015

שינויים בספריית ההערות:
  • נוספה ספריית ההערות כדי לספק תמיכה בבדיקות קוד משופרות. הערות מתווספות כתגי מטא נתונים שאתם מצרפים למשתנים, לפרמטרים ולהחזיר ערכים כדי לבדוק את ערכי ה-method, את הפרמטרים שהועברו משתנים ושדות.
שינויים בספריית התמיכה של גרסה 4:
שינויים בספריית האפליקציה של גרסה 7:
שינויים בספריית leanback v17:
שינויים בספריית recyclerview בגרסה 7:
  • נוספו SortedList כיתות כדי להציג פריטים ב סדר רשימה ולספק הודעה לגבי שינויים ברשימה.
  • הכיתה SortedListAdapterCallback נוספה שיכולה לקשר רשימה ממוינת כיתה אחת (RecyclerView.Adapter).
שינויים בספריית הרנדרים של v8:

גרסה 22

מרץ 2015

שינויים בספריית התמיכה של גרסה 4:
  • השיטה getDrawable() עודכנה כדי להחזיר אובייקט שניתן להזזה לפי מזהה משאב ספציפי שצוין, דחיסות המסך והעיצוב.
  • נוספה השיטה setImportantForAccessibility() כדי שתהיה לך אפשרות לציין אם צפייה צריכה לפעול אירועי נגישות.
  • השיטה getStatusBarBackgroundDrawable() נוספה כדי לקבל את הרקע של שורת הסטטוס פריט גרפי שניתן להזזה.
  • נוספו שיטות אל NotificationCompat.CarExtender.UnreadConversation כדי שאפליקציות להעברת הודעות ב-Android Auto יוכלו לאחזר נתונים נוספים של התראות.
  • נוספה השיטה getProgressCircleDiameter() כדי להחזיר את הקוטר של פריסת מעגל.
  • בוצע שינוי בברירת המחדל DrawerLayout הצבע של שורת הסטטוס ל-colorPrimaryDark.
שינויים בספריית האפליקציה של גרסה 7:
שינויים בספריית leanback v17:
  • הוספתי את getRecycledPoolSize() וגם setRecycledPoolSize() שיטות שמאפשרות להתאים אישית את הגדלים של בריכות ממוחזרות.
  • המאפיין WRAP_CONTENT נוסף אל הגדרת רוחב הפריסה כדי לתמוך בתוכן עטוף עבור סמלי כותרת.
  • הוגדר R.transition ב-XML ל- לשפר את עדכוני המעברים.
  • הופעלה תמיכה בפריסות מימין לשמאל.
  • נוספה תמיכה בהפעלה ובהשהיה של אירועים מרכזיים במדיה כיתה אחת (PlaybackOverlayFragment).
  • נוספו מעברי כניסה והחזרה אל כיתה אחת (BrowseFragment) וגם כיתה אחת (DetailsFragment).
  • נוספה השיטה replace() כדי להחליף פריטים במערך המתאם של אובייקט.
שינויים בספריית mediarouter:
  • סמלים של Google Cast עודכנו כדי להשתמש ב- סגנון של Material Design.
  • כל הסמלים שנמצאים בשימוש בתיבות הדו-שיח של MediaRouter עודכנו ועכשיו הם משתמשים סגנון עיצוב חומר.
שינויים בספריית recyclerview בגרסה 7:

גרסה 21.0.3

דצמבר 2014

שינויים בספריית התמיכה של גרסה 4:

גרסה 21.0.2

נובמבר 2014

שינויים בספריית התמיכה של גרסה 4:
שינויים בספריית האפליקציה של גרסה 7:
  • נוסף ה-constructor של PopupMenu כדי לתמוך בחלון קופץ חדש תפריטים.
  • נוספה תמיכה בתיאור של סמל הכיווץ בToolbar בכיתה.
  • הווידג'ט SearchView עודכן כדי לתמוך בהצגה commitIcon.
  • המאפיין buttonGravity הוסר כיתה אחת (Toolbar).
שינויים בספריית v7 Cardview:
שינויים ב-recyclerview בגרסה 7 ספרייה:
שינויים בספריית leanback v17:
  • נוספה תמיכה ביצירת קטעי קוד v4.
  • הצבע המשני של הטקסט השתנה בתאריך CardView.

גרסה 21.0.1

נובמבר 2014

תאריך ההוספה ספריית תמיכה multidex שתומכת בריבוי Dalvik קובצי הפעלה (DEX) עבור תמיכה בקובצי multi-dex בגרסאות שקודמות ל-Android 5.0.

גרסה 21

אוקטובר 2014

שינויים בספריית התמיכה של גרסה 4:
  • נוספה תמיכה עבור Fragment מעברים למכשירים שמותקנת בהם מערכת ההפעלה Android 5.0 (רמת API 21). חשוב לזכור שלמעברים אין השפעה על מכשירים שפועלים Android מגרסה 4.4 ומטה.
  • הוספת את DocumentFile כדי שיהיה קל המעבר מFile בזמן עבודה עם עצי מסמכים. אבל הכיתה הזאת דורשת יותר תקורת עיבוד בהשוואה לתקורת הפלטפורמה ממשק API אחד (DocumentsContract) נוסף ב- Android 4.4 (רמת API 19). לכן כדאי לעבור לשימוש ב-DocumentsContract בעת הפעלה ב-Android 4.4 גבוהה יותר.
שינויים בתאימות לגרסה 7 ספרייה:
  • נוספה תמיכה בחומר לעצב ממשקי משתמש.
  • נוסף Toolbar, שמתייחס להכללה הפונקציונליות של ActionBar עבור לשימוש בפריסות של אפליקציות.
  • עודכן בתאריך ActionBarDrawerToggle, שמכיל את האנימציה של תפריט-לחץ
  • עודכנו ווידג'טים נפוצים בממשק המשתמש כדי לאפשר גוון דרך עיצוב מאפיינים בזמן ההפעלה שלהם במכשירים עם מערכת הפעלה ישנה יותר מ-Android 5.0
  • בוצעה הוספה של SwitchCompat, העברה אחורית של הווידג'ט Switch שנוסף Android 4.0 (רמת API 14).
ספריית Cardview חדשה: גרסה 7
  • נוסף הווידג'ט CardView, מספקת הטמעה תואמת לעיצוב חומר להצגה פריטי נתונים.
recyclerview חדש לגרסה 7 ספרייה:
  • הוספת את הווידג'ט RecyclerView, שמספק תצוגת רשימה גמישה שמאפשרת חלון מוגבל למערך נתונים גדול
ספרייה חדשה של לוחות v7:
  • נוספה כיתה אחת (Palette), שמאפשר לחלץ צבעים בולטים מהתמונה.
ספריית leanback חדשה בגרסה 17:

גרסה 20

יולי 2014

שינויים בספריית התמיכה של גרסה 4:
  • נוספה תמיכה בהתראות מורחבת ל-Android Wear ב- NotificationCompat.WearableExtender, שמאפשר לך כדי לציין תכונות ספציפיות לגאדג'טים לבישים בהתראות.
  • ההוספה של NotificationCompat.Action.WearableExtender בוצעה בהצלחה שמאפשר להוסיף פעולות בהתראות לבישים.
  • נוספה NotificationManagerCompat, שמאפשרת לך כדי לשלוח התראות שתומכות באופן תקין בתכונות של גאדג'טים לבישים.
  • נוספה RemoteInput, שמאפשרת להשתמש במכשיר ידני כדי לקבל קלט קולי מהתראה שמופיעה במכשיר לביש.
  • שיפרתי את הטיפול במשוב מגע SwipeRefreshLayout

גרסה 19.1.0

מרץ 2014

שינויים בספריית התמיכה של גרסה 4:
  • הכיתה SwipeRefreshLayout נוספה, שמאפשר למשתמשים לרענן את התוכן של תצוגה באמצעות תנועת החלקה.
  • תוקנו בעיות נגישות בחלונית ההזזה לניווט.
שינויים בספריית האפליקציות בגרסה 7:
  • תוקנו בעיות ברקע בסרגל הפעולות.

גרסה 19.0.1

דצמבר 2013

שינויים בספריית התמיכה של גרסה 4:
שינויים בספריית mediarouter v7:
שינויים בספריית הרנדרים של v8
  • נוספה הפצת שגיאות לשכבת הדחיסה של RenderScript.

גרסה 19

אוקטובר 2013

שינויים בספריית התמיכה של גרסה 4:
  • נוספה תמיכה בממשקי API של אחסון חיצוני באמצעות getObbDirs(), getExternalFilesDirs(), getExternalCacheDirs(), ו-getStorageState(). שיטות העזרה האלה תמיד מחזירות אובייקט יחיד של קובץ במכשירים שמותקנת בהם מערכת Android 4.3 (רמת API 18) ודגמים קודמים. כשמפעילים את מערכת Android בגרסה 4.4 (רמת API 19) ואילך, שיטות אלה עשויות להחזיר יותר מאובייקט קובץ אחד.
  • נוספה כיתה אחת (PrintHelper) שעובדת עם הדפסת ממשקי API כדי להדפיס תמונות עם מינימום קוד.
  • נוספה תמיכה בגרירה ופתיחה של ממשק משתמש עבור תפריטים קופצים. מידע נוסף זמין במאמר הבא: PopupMenuCompat והקבוצה ListPopupWindowCompat.
  • תמיכה משופרת לנגישות בעזרת method אחת (findFocus()) ב- AccessibilityNodeProviderCompat וגם שיטה getLiveRegion() ב- AccessibilityNodeInfoCompat
  • כיתת העזרה ScaleGestureDetectorCompat נוספה עבור גישה לשיטות חדשות לשינוי קנה מידה.
  • תוקנה הבעיה עם ActionBarDrawerToggle ב- מוצגות מימין לשמאל.
  • האפשרות של AutoScrollHelper לצריכה שונתה אירועי מגע או לאפשר העברה שלהם לתצוגות אחרות.
שינויים בספריית mediarouter v7:
  • נוספה תמיכה ביצירת תורים להפעלת מדיה, בהגדרת ערכים של כותרות HTTP ומדיה משך ההפעלה.
  • נוספו פעולות מפורשות של התחלה, קבלה וסיום של סשן לצורך ניהול מפורש של המדיה עם נתב מדיה.

גרסה 18

יולי 2013

שינויים בספריית התמיכה של גרסה 4:
  • ממשק משתמש
    • הוספת את BidiFormatter לטיפול מחרוזות טקסט שמשלבות טקסט בפורמט מימין לשמאל ומשמאל לימין.
    • בוצע שינוי של ViewPager כדי לטפל טוב יותר במקרים שבהם רוחב הדף שנמדד הוא אפס בעיבוד הפריסה הראשוני.
    • תאריך שינוי אחרון: DrawerLayout SlidingPaneLayout כדי לא להקפיץ חריגים עבור מדידה בזמן העריכה של קוד הפרויקט.
  • נגישות
  • תמונות וסרטונים
    • נוספה כיתה עוזרת אחת (TransportMediator) לניהול אמצעי בקרה להעברת מדיה, כמו הפעלה, השהיה, דילוג ופעולות מדיה אחרות.
    • הוספת את DisplayManagerCompat לצורכי ניהול הצגת הפלט במסך מכשיר אחד או יותר.
  • שינויים נוספים
    • נוספה כיתת עזרה אחת (WakefulBroadcastReceiver) עבור הטמעת דפוס נפוץ של זיהוי אירוע יציאה ממצב שינה במכשיר והעברת עבודה אל Service ומובטח שהמכשיר לא חוזר אל לישון לפני שהושלמה ההעברה.
    • הוספנו שני ממשקי API חדשים, commitContentChanged() והקבוצה rollbackContentChanged() עד AsyncTaskLoader עזרה בטיפול בעדכוני רקע לגבי שינויים בנתונים שיבוטלו לאחר מכן.
ספריית אפליקציות חדשה בגרסה 7 של האפליקציה:
ספריית Mediarouter חדשה v7:

נוספה ספריית mediarouter חדשה שמספקת תמיכה בתצוגה המקדימה למפתחים של Google Cast. ממשקי ה-API של ספריית mediarouter בגרסה 7 מספקים אמצעי לשליטה בניתוב ערוצי מדיה וסטרימינג מהמכשיר הנוכחי למסכים חיצוניים, רמקולים ומכשירי יעד אחרים, עם תאימות חזרה ל-Android 2.1 (רמת API 7). ראו V7 ספריית mediarouter לקבלת מידע נוסף.

ממשקי ה-API של ספריית Mediarouter בגרסה 7 שנוספו בתמיכה גרסה r18 של הספרייה כפופה לשינויים בגרסאות מאוחרות יותר של התמיכה ספרייה. בשלב זה מומלץ להשתמש בספרייה רק בחיבור באמצעות Google Cast תצוגה מקדימה למפתחים.

גרסה 13

מאי 2013

שינויים בספריית התמיכה של גרסה 4:
ספריית רשת חדשה בגרסה 7:
  • הוספת את GridLayout כדי לספק תמיכה אובייקט פריסה GridLayout.
  • בוצעה הוספה של android.support.v7.widget.Space, ואפשר להשתמש בו כדי ליצור אזורים ריקים באובייקט פריסה מסוג GridLayout.

גרסה 12

פברואר 2013

שינויים בספריית התמיכה של גרסה 4:
  • התנהגות אינטראקציה משופרת עבור ViewPager.
  • תוקן באג שגרם לאתר ViewPager לבחור דף שגוי.
  • שימוש קבוע בשיטה removeView() במהלך הפריסה של ViewPager.
  • תוקנה בעיה עם SearchViewCompat כאשר השימוש ב- לחצן 'הקודם' לסגירה לא מנקה את הטקסט בחיפוש. התיקון הזה חל רק על מארח רמות API 14 ומעלה.

גרסה 11

נובמבר 2012

שינויים בספריית התמיכה של גרסה 4:
  • ממשק משתמש
    • נוספה תמיכה בכיתות בתוך Fragment.
    • נוספו שיפורים לניפוי באגים ב-FragmentManager.
    • תוקנה הבעיה ב-FragmentTabHost, שבה מקטע ואינטראקציה עם כרטיסיות עלולות לגרום לאובדן של מצב ListView.
    • תוקנה בעיה ברמז גלוי למשתמש FragmentStatePagerAdapter
    • הכתובת PageTransformer התווספה ממשק ל-ViewPager כדי לאפשר לאפליקציות לספק התנהגות מעבר מותאמת אישית לגלילה.
    • נוספו תכונות חדשות ותיקונים ל-TaskStackBuilder מהגרסה הנוכחית.
    • בוצע תיקון של PagerTitleStrip כדי לעקוב בצורה נכונה אחר PagerAdapter בשימוש כרגע.
    • תוקנו בעיות הבהוב במסך, מיקום וחיתוך טקסט עם PagerTitleStrip
    • בוצע תיקון של PagerTabStrip כדי לשמור על המרווח הפנימי כשמשרטטים קו תחתון.
  • נגישות
  • נוספה תמיכה בתנועות עם GestureDetectorCompat.
  • נוספה תמיכה בביצוע פעולות אטומיות על קבצים באמצעות כיתה אחת (AtomicFile).
  • נוספה תמיכה בקבוצה המלאה של make methods ב- IntentCompat.
  • השיטה trimToSize() נוספה ב- מחלקה של LruCache.
  • בוצע עדכון של ConnectivityManagerCompat כדי לקבל נתוני NetworkInfo מCONNECTIVITY_ACTION שידור.

גרסה 10

אוגוסט 2012

שינויים בספריית התמיכה של גרסה 4:
  • נוספה תמיכה בתכונות של התראות שהושקו ב-Android 4.1 (רמת API 16) עם תוספות ל-NotificationCompat.

גרסה 9

יוני 2012

שינויים בספריית התמיכה של גרסה 4:
  • תמיכה בממשק המשתמש
    • נוספה תמיכה של PagerTabStrip, עם תמיכה משופרת פונקציונליות מעבר ל-PagerTitleStrip.
    • תוקנו באגים שונים ב-PagerTitleStrip וב- PagerTabStrip, כולל האפשרות setAllCaps, יישור הכותרת, שיפורים במראה, מגבלות רוחב מינימליות ובעיות בניווט באמצעות מגע.
    • נוספה תמיכה ב-ViewPager דפי מרזב, עוזר למחלקה ViewPager לספק תמיכה בחלוקה לדפים של תוכן טווח גלילה אופקי גדול, כגון מפה.
    • תוקנו מספר באגים ב-ViewPager, כולל הגודל בעיות שקשורות לשינוי בקבוצת הנתונים, מיקום הדף, אינטראקציה של המשתמש, מעקב אחרי גלילה ומקלדת בעיות בניווט.
    • תוקנו באגים רבים עבור Fragment, כולל תיקון טיפול ב-onActivityResult() כאשר מקטע היעד כבר לא קיים, שליחת אירועי בחירה למקטעים בלתי נראים, שיפור התנהגות של FragmentTransaction.replace() והוספנו טיפול טוב יותר במצב של מקטעים שהועברו מהתצוגה.
    • נוספה תמיכה בשיטה postOnAnimation() ב-ViewCompat.
    • עודכן ב-NavUtils לשימוש ב-Android 4.1 (רמת API 16) פונקציית הניווט למעלה, כשהיא זמינה.
  • נגישות
    • סיווגי התמיכה בנושא נגישות שעודכנו, כולל AccessibilityNodeInfoCompat, בהתאם לתיקונים שבוצעו ב-Android 4.1 (רמת API 16).
    • נוספה תמיכה בפעולות גלילה לנגישות ב-ViewPager.
  • שיפורים כלליים

גרסה 8

אפריל 2012

שינויים בספריית התמיכה של גרסה 4:
  • סימוני Intent קבועים עבור PendingIntent אובייקטים שנוצרו מאת TaskStackBuilder.
  • הוסרו מאפיינים שלא נמצאים בשימוש מהפרויקטים של ספריות פריסת רשת כדי לוודא את הספרייה אפשר ליצור עם API ברמה 7 ומעלה.
  • נוספו קבצים .classpath ו-.project לפריסת הרשת בפרויקט הספרייה.

גרסה 7

מרץ 2012

שינויים בספריית התמיכה של גרסה 4:
  • נוסף ShareCompat, שמספק כיתות עוזרים לשליחה ולקבלה של תוכן לאפליקציות לשיתוף חברתי, כולל מטא-נתונים חדשים עבור שיוך נתונים משותפים לאפליקציית המקור. הכיתה הזו מספקת גם שילוב תואם עם ShareActionProvider החדש ב-Android 4.0.
  • נוספו NavUtils ו-TaskStackBuilder כדי לספק תמיכה בהטמעה של הנחיות לניווט שמוצגות על ידי Android Design. האלה תוספות כוללות דרך להטמיע את הלחצן למעלה של סרגל הפעולות בכל הגרסאות. דוגמה להטמעת הדפוס הזה זמינה בקטע AppNavigation לדוגמה: (<em><sdk></em>/samples/<em><platform></em>/AppNavigation).
  • הוספת את NotificationCompat.Builder כדי לספק תאימות לסיווג המסייע Notification.Builder של Android 3.0 ליצירת התראות מערכת רגילות.

גרסה 6

דצמבר 2011

הערה: חומר עזר בנושא ממשקי API של ספריות תמיכה זמין עכשיו עם הפניות ל-framework, לדוגמה: android.support.v4.app.

שינויים בספריית התמיכה של גרסה 4:
  • שינויים ב-ViewPager:
    • נוספה תמיכה בתצוגה דקורטיבית של ViewPager. אפשר לספק תצוגות דקורטיביות כתצוגות צאצא של זימונית בפריסת XML.
    • הוספת את PagerAdapter.getPageTitle() כדי לספק מחרוזות כותרת לדפים. ברירת המחדל היא 'לא' כותרת של כל דף.
    • בוצעה הוספה של PagerTitleStrip, כותרת לא אינטראקטיבית שניתן להוסיף כצאצא של ViewPager. מפתחים יכולים לספק טקסט מראה וצבע, וכן מידע על גודל הפריסה ועל כוח הכבידה.
    • עודכנו PagerAdapter שיטות כדי להשתמש ב-ViewGroup אובייקטים, במקום תצוגה כדי למנוע העברה של מחלקה בהטמעות מתאמים.
    • בוצע עדכון של ViewPager לשימוש בסגנון מרכז האפליקציות התנהגות של החלקה.
    • תיקוני באגים באינטראקציה עם ממשק המשתמש ובאוטומציה של בדיקות.
  • תמיכה ב-Fragments:
    • השיטה setStartDeferred() שונתה ל-setUserVisibleHint(boolean).
    • נוספה הגדרה מראש של זמן התחלה בדפים שלא מופיעים במסך כדי לשפר את הביצועים.
  • תמיכה בממשקי API לנגישות:
    • עודכנו AccessibilityDelegateCompat שיטות כדי להחזיר רשימות ריקות במקום להזין null.
    • נוספו ממשקי API חדשים שדרושים לדוגמאות גרסה 4.

גרסה 5

דצמבר 2011

שינויים בספריית התמיכה של גרסה 4:

גרסה 4

אוקטובר 2011

שינויים בספריית התמיכה של גרסה 4:
  • הוספת את EdgeEffectCompat אל תמיכה ב-EdgeEffect.
  • הוספת את LocalBroadcastManager כדי לאפשר לאפליקציות לבצע בקלות להירשם ולקבל כוונות באפליקציה יחידה ללא לשדר אותם בכל העולם.
  • נוספה תמיכה ב-ViewCompat כדי לבדוק אם יש גלילת יתר ולהגדיר אותה מצבים עבור View ב-Android 2.3 ואילך.
  • שינויים בממשקי API של Fragment:
    • נוספו ממשקי API חדשים כדי לשלוט בחשיפה של תפריטים חדשים.
    • נוספו ממשקי API לאנימציה בהתאמה אישית.
    • נוספו ממשקי API ב-FragmentActivity כדי לשמור על התאמה אישית, נתוני מכונה ללא הגדרות אישיות.
    • תיקוני באגים שונים.
  • תוקן באג ב-Loader שגרם לבעיות ב- ביטול של AsyncTask במהלך הפעלה ב-Froyo ובגרסאות ישנות יותר של הפלטפורמה. התמיכה הקוד משתמש עכשיו בגרסה משלו של AsyncTask כדי לשמור בכל גרסאות הפלטפורמות.

גרסה 3

יולי 2011

שינויים בספריית התמיכה של גרסה 4:
  • הוספת תמיכה עבור Fragment.SavedState
  • הוספה של MotionEventCompat לתמיכה בממשקי API חדשים של MotionEvent
  • הוספה של VelocityTrackerCompat לתמיכה בממשקי API חדשים יותר של VelocityTracker
  • הוספה של ViewConfigurationCompat לתמיכה בממשקי API חדשים יותר של ViewConfiguration
  • כל ממשקי ה-API החדשים (זמינים רק בספריית התמיכה) שמאפשרים ליצור ממשקי משתמש בעזרת דפים אופקיים, שמאפשרים למשתמשים להחליק ימינה ושמאלה בין תצוגות התוכן. כיתה ל- שכוללות:
    • ViewPager: ViewGroup שמנהל את פריסה של תצוגות הצאצא, והמשתמשים יכולים להחליק ביניהן.
    • PagerAdapter: מתאם שמאכלס את ViewPager עם תצוגות שמייצגות כל דף.
    • FragmentPagerAdapter: תוסף של PagerAdapter להיפוך בין מקטעים.
    • FragmentStatePagerAdapter: סיומת של PagerAdapter בשביל לעבור בין מקטעים שמשתמשים בתמיכה של הספרייה ב-Fragment.SavedState.
ספריית תמיכה חדשה של v13:
  • כולל FragmentPagerAdapter וFragmentStatePagerAdapter כדי לתמוך בהחלפה האופקית.

    אלה זהים לממשקי ה-API שנוספו לספריית התמיכה של v4, אבל הם מסתמכים על רכיבי פלטפורמה אחרים ב-Android 3.2. השתמשו בספרייה הזו במקום ב-v4 אם אתם מפתחים Android 3.2 ואילך (כל ממשקי ה-API האחרים בספריית גרסה 4 כבר זמינים ברמת API 13).

גרסה 2

מאי 2011

שינויים בספריית גרסה 4:

גרסה 1

מרץ 2011

גרסה ראשונית עם ספריית גרסה 4.