این صفحه جزئیاتی در مورد آخرین نسخه های بسته کتابخانه پشتیبانی ارائه می دهد. برای نسخههای قبلی، به آرشیو ویرایشهای کتابخانه پشتیبانی مراجعه کنید.
نسخه 28.0.0 تولید
(21 سپتامبر 2018)
این نسخه پایدار پشتیبانی کتابخانه 28.0.0 است و برای استفاده در تولید مناسب است. این آخرین ویژگی منتشر شده تحت بسته بندی android.support
خواهد بود و توسعه دهندگان تشویق می شوند به AndroidX مهاجرت کنند.
ویژگی های جدید
-
AnimatedStateListDrawableCompat
انتقال متحرک بین حالت های قابل ترسیم را فراهم می کند. -
VectorDrawableCompat
از gradient وColorStateList
پر و استروک پشتیبانی می کند.
نسخه 28.0.0 RC 2
(27 اوت 2018)
این نامزد انتشار از کتابخانه پشتیبانی، ویژگی کامل در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه بهعنوان نسخه پایدار نهایی ارسال میشود و از هرگونه مشکل مهمی که ممکن است رخ دهد جلوگیری میکند. این نسخه باید برای استفاده در تولید بی خطر باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
مسائل رفع شد
- Proguard سازنده View Model Application را حذف می کند (نسخه عمومی 112230489 )
- وضعیت ثابت «AnimatedStateListDrawableCompat» ثابت شد
- وابستگی media2 از mediarouter 1.0.0 حذف شد
- «Fragment.getViewLifecycleOwner()» با فشار دادن دکمه صفحه اصلی متوقف نمیشود (نسخه عمومی 113070421 ) ([شماره عمومی 113070421](https://issuetracker.google.com/issues/113070421))
نسخه 28.0.0 RC 1
(6 اوت 2018)
این نامزد انتشار از کتابخانه پشتیبانی، ویژگی کامل در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه بهعنوان نسخه پایدار نهایی ارسال میشود و از هرگونه مشکل مهمی که ممکن است رخ دهد جلوگیری میکند. این نسخه باید برای استفاده در تولید بی خطر باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
توجه: برخی از کتابخانه ها، مانند media2، در مرحله آلفا باقی مانده اند زیرا سطوح API آنها هنوز نهایی نشده است. ما استفاده از کتابخانه های آلفا را در تولید توصیه نمی کنیم. کتابخانه ها باید به شدت از وابستگی به کتابخانه های آلفا در تولید خودداری کنند، زیرا سطوح API آنها ممکن است به روش های ناسازگار با منبع و باینری تغییر کند.
مسائل رفع شد
- منوی BottomNavigationView به درستی در کتابخانه پشتیبانی طراحی مقداردهی اولیه نشده است
- PositionalDataSource موارد درج شده از قبل در پایگاه داده را به درستی مدیریت نمی کند
- اسلایدرها بینظیر هستند و پاسخگو نیستند
- «SlicesProviderCompat.getPinnedSpecs()» شناسه های کاربر را به URI اضافه نمی کند
- RoutePlayer2: پخش از راه دور به پخش محلی باز نمی گردد
- تجزیه برش ذخیره شده در حافظه پنهان در عملکردها خراب می شود
- خرابی برنامه جستجوی Google در رندر کردن Slice ثابت
- ConcurrentModificationException در کتابخانه انتخاب RecyclerView زمانی که مجموعه داده ها با حذف انتخاب تغییر کرد
- PreferenceThemeOverlay به جدیدترین موضوع مواد به روز شده است. اگر تم سفارشی ارائه نشده باشد، PreferenceThemeOverlay به عنوان تم پیشفرض استفاده میشود.
- تمهای PreferenceThemeOverlay.v14 و PreferenceThemeOverlay.v14.Material به نفع PreferenceThemeOverlay منسوخ شدهاند.
- قابلیت مشاهده PreferenceGroup اکنون به فرزندان آن گره خورده است - پنهان کردن یک گروه والدین همچنین از نمایش فرزندان آن در سلسله مراتب جلوگیری می کند. از Preference.isShown() برای دریافت اینکه آیا یک Preference واقعاً در سلسله مراتب به کاربر نمایش داده می شود یا خیر استفاده کنید.
- Preference.onSetInitialValue(بولی، Object) منسوخ شده و با onSetInitialValue(Object) جایگزین شده است. PreferenceDataStore اکنون مقادیر پیش فرض را نیز به درستی بازیابی می کند.
نسخه 28.0.0 بتا 1
(ژوئیه 2018)
این نسخه بتا از کتابخانه پشتیبانی بهعنوان ویژگی کامل در نظر گرفته میشود و سطح API عمومی آن پایدار است و از هرگونه مشکل مهمی که ممکن است پیش بیاید جلوگیری میکند. اگرچه این نسخه برای استفاده در تولید ایمن است، اما ممکن است همچنان دارای اشکال باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
مسائل رفع شد
- رویدادهای غذا خوردن GestureSelectionHelper در موارد غیر قابل انتخاب
- وقتی مقدار لغزنده بهروزرسانی میشود، برشهای لغزنده میتوانند نماد انگشت شست تکراری داشته باشند
- IconCompat نمادهای TYPE_URI را شکست
- با استفاده از Seekbar با تنظیمات برگزیده خراب شود
- خرابی در Slice.toString()
- OffsettingListUpdateCallback.onMoved() mCallback.onRemoved() را به جای mCallback.onMoved() (نسخه 110711937 )
ویرایش 27.1.1
(آوریل 2018)
مسائل رفع شد
- AsyncListDiffer getChangePayload را صدا نمیزند (نسخه AOSP 73961809 )
- Fragment ViewModel's onCleared فراخوانی نشد (AOSP شماره 74139250 )
- RecyclerView.setRecycledViewPool() attachCount را حتی زمانی که آداپتور خالی است افزایش می دهد
- RecyclerView NPE if SmoothScroller.onStop فراخوانی stop() یا startSmoothScroller()
- تراکنش جایگزینی قطعه باعث می شود قطعه قبلی پس از نمایش قطعه جدید سوسو بزند (AOSP شماره 74051124 )
- تغییر شکستن تماس مجدد لودر در 27.1.0 (نسخه AOSP 74135998 )
- وقتی ستون مجموعه نمای شبکه عمودی > 1 باشد، طرحبندی RTL کار نمیکند
- onLoadFinished چندین بار در ViewPager با FragmentPagerAdapter فراخوانی شد
- AsyncListDiffer باید پس از تنظیم لیست فعلی به روز رسانی ها را ارسال کند (نسخه AOSP 74003309 )
- ShareActionProvider ClassCastException را در 27.1.0 قرار می دهد
- تغییر چرخه عمر قطعه با ViewPager (نسخه AOSP 73976255 )
نسخه 28.0.0 آلفا 1
(مارس 2018)
توجه: 28.0.0-alpha1 یک نسخه پیش از انتشار برای پشتیبانی از پیش نمایش برنامه نویس Android P است. سطح API آن در معرض تغییر است و لزوماً شامل ویژگیها یا رفع اشکال از آخرین نسخههای پایدار کتابخانه پشتیبانی نمیشود.
تغییرات مهم
- همانطور که قبلاً در اطلاعیه Android KTX ذکر شد، ما همچنان به استفاده از پیشوند بسته
androidx
در سراسر کتابخانه های خود ادامه می دهیم. مجموعه ای از کتابخانه های کاملاً جدید، از جملهheifwriter
وrecyclerview-selection
، در این بسته جدید شروع به کار می کنند. ما امیدواریم که تقسیمبندی بینandroid.*
وandroidx.*
واضحتر شود که کدام API با پلتفرم همراه است و کدام یک کتابخانه ثابت برای توسعهدهندگان برنامه هستند که در نسخههای مختلف Android کار میکنند. - ما بخش هایی از support-core-ui، support-core-utils و support-compat را به کتابخانه های کوچکتر تقسیم کرده ایم. این تغییر به ما کمک میکند تا وابستگیهای کتابخانه پشتیبانی را در آینده جدا کنیم. اکنون کتابخانه های جدید زیر را داریم:
- asynclayoutinflater (از support-core-ui)
- مجموعه ها (از support-compat)
- هماهنگ کننده (از طراحی)
- مکان نما (از support-core-ui)
- نمای سفارشی (از support-core-ui)
- فایل سند (از support-core-utils)
- کشو (از support-core-ui)
- interpolator (از support-core-ui)
- لودر (از support-fragments و core-utils)
- localbroadcastmanager (از support-core-utils)
- چاپ (از support-core-utils)
- slidingpanelayout (از support-core-ui)
- swiperfreshlayout (از support-core-ui)
- نمایشگر (از support-core-ui)
API های جدید
-
recyclerview-selection
از انتخاب آیتم برایRecyclerView
پشتیبانی می کند. بسته ارائه می دهد:- پشتیبانی از ایجاد، اصلاح، بازرسی و نظارت بر تغییرات مجموعه ای از موارد انتخاب شده در لیست RecyclerView.
- پشتیبانی از اقدامات بصری چند انتخابی:
- انتخاب مبتنی بر لمس به کاربران اجازه میدهد تا محدودههایی از آیتمها را با یک حرکت بصری فشار و کشیدن طولانی انتخاب کنند.
- انتخاب باند مبتنی بر ماوس به کاربران این امکان را میدهد تا با استفاده از اقدامات سنتی نوار اشاره گر ماوس، بلوکی از آیتمها را در فهرست RecyclerView انتخاب کنند.
- پشتیبانی از دستگاههای لمسی، از جمله تلفن و لپتاپهای لمسی، و همچنین دستگاههای اشارهگر محور.
- HEIF Writer برای نوشتن تصاویر ثابت با فرمت HEIF پشتیبانی می کند.
- کتابخانه طراحی
- ما یک موضوع برنامه کاربردی جدید،
Theme.MaterialComponents
، با ویژگیهای جدید و سبکهای بهروز شده برای کامپوننتها، معرفی کردهایم. - ما اجزای زیر را اضافه کرده ایم:
- BottomAppBar
- تراشه
- ChipGroup
- دکمه مواد
- MaterialCardView
- ما یک موضوع برنامه کاربردی جدید،
- Slices چارچوبی را برای برنامهها فراهم میکند تا محتوای قالبشده را از برنامههای دیگر جاسازی کنند.
- slices-builders شامل روش هایی برای ساخت محتوا در قالب قالب است.
- slices-view شامل روش هایی برای ارائه آن محتوا است.
- اقدامات مرورگر پروتکلی را برای توسعه دهندگان برنامه فراهم می کند تا یک منوی زمینه ثابت (اما قابل تنظیم) را برای URL ها راه اندازی کنند. این ویژگی به وجود یک برنامه مرورگر (مانند Chrome، جایی که این ویژگی هنوز در حال توسعه است) بستگی دارد که از اقدامات مرورگر پشتیبانی میکند.
-
ContextCompat.getSystemService()
وgetSystemServiceName()
اجازه جستجوی سرویس سیستم را بر اساس نوع در تمام سطوح API می دهند.
رفع اشکال
- Fragment ViewModel's onCleared فراخوانی نشد (AOSP شماره 74139250 )
- ()onLoadFinished چندین بار در ViewPager با FragmentPagerAdapter فراخوانی شده است (نسخه AOSP 74182171 )
- RecyclerView's LinearLayoutManager's smoothScrollToPosition() حرکت نامنظم (به جلو و عقب) را تحت شرایط خاص نمایش می دهد (AOSP شماره 71567765 )
نسخه 27.1.0 انتشار
(فوریه 2018)
تغییرات مهم
- اجرای اساسی Loader برای استفاده از چرخه حیات بازنویسی شده است. در حالی که API بدون تغییر باقی می ماند، تعدادی از تغییرات رفتاری وجود دارد:
-
initLoader()
،restartLoader()
، وdestroyLoader()
اکنون فقط می توانند در thread اصلی فراخوانی شوند. - هنگامی که FragmentActivity/Fragment حاوی FragmentActivity/Fragment شروع و متوقف می شود، اکنون ()
onStartLoading()
وonStopLoading()
یک Loader فراخوانی می شوند. -
onLoadFinished()
فقط بینonStart()
وonStop
فراخوانی می شود. در نتیجه، تراکنش های Fragment اکنون می توانند با خیال راحت درonLoadFinished()
انجام شوند. - متدهای FragmentController مربوط به Loader اکنون منسوخ شده اند.
-
-
getDialog()
DialogFragment اکنون تاonDestroyView()
غیر تهی خواهد بود، به جای اینکه درdismiss()
null شود. اکنون می توانید تعیین کنید که آیا Dialog به صورت دستی درonStop()
رد شده است یاgetDialog().isShowing()
API های جدید
-
ListAdapter
برایRecyclerView
(همراه باAsyncListDiffer
) محاسبه تفاوت های لیست را در یک رشته پس زمینه آسان تر می کند. اینها می توانند به RecyclerView شما کمک کنند تا با کمترین کار روی رشته UI، محتوای متحرک به طور خودکار تغییر کند. آنها ازDiffUtil
در زیر کاپوت استفاده می کنند. -
SortedList.ReplaceAll
بهروزرسانی همه دادهها را در SortedList فعال میکند، که همه انیمیشنهای مناسب برای درجها، حذفها، تغییرات و جابهجاییها را اجرا میکند (حرکات به عنوان حذف و درج در نظر گرفته میشوند). - FragmentActivity و Fragment اکنون
ViewModelStoreOwner
پیاده سازی می کنند و اکنون می توانند با سازندهViewModelProvider
به عنوان جایگزینی برای استفاده ازViewModelProviders.of()
- فرگمنتها اکنون متدهای
requireContext()
،requireActivity()
،requireHost()
وrequireFragmentManager()
دارند که یک شیNonNull
از متدهای get معادل را برمی گرداند یا یکIllegalStateException
پرتاب می کند. -
requireViewById()
، یک نسخه سازگار@NonNull
ازfindViewById()
بهWindowCompat
،ActivityCompat
وViewCompat
اضافه شده است، که زمانی که هدف پیدا نمی شود، یکIllegalArgumentException
پرتاب می کند. - روشهای
LoaderCallbacks
اکنون دارای حاشیهنویسی مناسب@Nullable
و@NonNull
هستند. -
FileProvider
اکنون ازgetExternalMediaDirs()
در API 21 و دستگاه های بالاتر از طریق عنصر<external-media-path>
جدید پشتیبانی می کند.
رفع اشکال
- قطعه ای که Loader را در onCreate مقداردهی اولیه می کند، چرخه حیات را در ViewPager شکسته است
- LoaderManager IllegalStateException را در onLoadFinished قرار می دهد
- LoaderViewModel لودرهای خود را در onCleared پاک نمی کند
- فایل کلاس برای android.arch.lifecycle.ViewModelStoreOwner یافت نشد
- DialogFragment onDisiss بلافاصله پس از رد کردن فراخوانی نمی شود()
- هنگام استفاده از فونتهای قابل دانلود، شکلکهای پرچم کشور روی دستگاههای کلید انتشار کار نمیکنند
- کتابخانه Preferences از ویژگیهایی استفاده میکند که در نسخههای قدیمی Android کار نمیکنند
- انواع مصنوع testlib MediaCompat به اشتباه مستند شده اند (AOSP شماره 71559905 )
- Google Sans در TypefaceCompatUtil خراب می شود
- سازنده ArraySet که مجموعه را می گیرد را در معرض نمایش قرار دهید.
- updateApi فایل های .ignore را که باید حفظ شوند را حذف می کند
- MainFragment های اضافی ایجاد شده در BrowseFragment
- استفاده از بازتاب را از CarRecyclerView حذف کنید
- java.lang.IllegalStateException در FragmentManagerImpl.checkStateLoss
- هنگام استفاده از android.support.v4.content.PermissionChecker.checkSelfPermission، java.lang.SecurityException (بدون سند) دریافت کردم
- RecyclerView IndexOutOfBoundsException زیرا State.mPreviousLayoutItemCount در setAdapter پاک نشده است (AOSP شماره 37657125 )
- قطعه ای که Loader را در onCreate مقداردهی اولیه می کند، چرخه حیات را در ViewPager شکسته است (AOSP شماره 34831613 )
- FragmentManagerImpl.execSingleAction خراب می شود
نسخه 27.0.2 انتشار
(نوامبر 2017)
رفع اشکال
-
EmojiEditTextHelper
NullPointerException
پرتاب می کند. -
IllegalStateException
: بخش هنوز پیوست نشده است. - نمیتوان با ضربه زدن روی هر نقطهای از صفحه، نماد بازشو «Cast» را رد کرد.
-
MediaMetadataCompat
BadParcelableException
را پرتاب می کند.
نسخه 27.0.1 انتشار
(نوامبر 2017)
رفع اشکال
- پس از فراخوانی
startActivityForResult()
LifecycleRegistry در وضعیت اشتباهی قرار دارد. (مسأله 65665621 ) - رنگ دکمه های غیرفعال در سطوح API قدیمی خیلی روشن است.
- پس از پیمایش کاربر، نمیتواند روی یک مورد در
RecyclerView
کلیک کند. (AOSP شماره 66996774 ) - در Talkback ، کلیک کردن روی گزینههای بیشتر باعث نمیشود که سیستم پنجره جدید را اعلام کند یا به گزینههای جدید تمرکز کند.
نسخه 27.0.0 منتشر شد
(اکتبر 2017)
تفاوت های API
تغییرات API
- حاشیهنویسیهای پوچپذیری به انواع APIها از جمله موارد زیر اضافه شدند: این می تواند باعث ایجاد خطاهای کامپایل Kotlin شود، زمانی که انواع بازگشتی تهی به درستی مدیریت نمی شوند.
-
Fragment
میتواند از نسخههای کتابخانه پشتیبانیTransition
برای انتقال قطعه، از جمله انتقال عناصر مشترک استفاده کند. - کتابخانه صفحهبندی محتوا (
android.support.content.ContentPager
) از محتوای صفحهبندی که از طریق یکContentProvider
در معرض دید قرار میگیرد، پشتیبانی میکند. استفاده از این کتابخانه به مشتری این امکان را می دهد که از "تعویض پنجره مکان نما" گران قیمت بین پردازشی در رشته UI اجتناب کند و یک کتابخانه سازگاری برای ویژگی Android 8.0 فراهم می کند. -
ViewCompat
اکنون برای متدهای تکمیل خودکار، از جملهgetImportantForAutofill()
،isImportantForAutofill()
،setAutofillHints()
وsetImportantForAutofill()
اضافه می کند. - Leanback دارای ویژگیها و صیقل دادن جدید است و برخی از کلاسهای منسوخ را از دست میدهد، مانند:
-
Picker
اکنون می تواند از جداکننده های مختلف بین هر ستون با استفاده از متدsetSeparators()
استفاده کند. -
DiffCallback
اضافه شده است تا بهArrayObjectAdapter
امکان استفاده از خروجی ارائه شده توسطDiffUtil
را بدهد. - زیرساخت برای پشتیبانی از پخشکنندههای رسانه با کنترلهای متغیر، اضافه کردن کنترلهای اختیاری برای جلو سریع، تکرار، زدن، بعدی، قبلی و عقب اضافه شده است.
- حذف
MediaControllerGlue
، PlaybackControlGlue،PlaybackControlSupportGlue
، وPlaybackOverlayFragment
.
-
- برای آزمایش، ابزار PollingCheck از AOSP CTS منتقل شده است. این نظرسنجی برای یک وضعیت در یک پنجره زمانی رخ می دهد.
- زیرساخت برای پشتیبانی از مجوزهای زمان اجرا در برنامههای فوری برای Android نسخه 5.0 با استفاده از
PermissionCompatDelegate
اضافه شده است. - اکنون برگه های سفارشی مورد اعتماد همراه با توانایی تعریف رابطه بین یک برنامه کاربردی و یک URI مبدا پشتیبانی می شود.
- پشتیبانی از حالت محیطی Android Wear با استفاده از بخش بدون سرنشین AmbientMode ساده شده است، که همچنین پشتیبانی از حالت محیطی را با استفاده از اجزای معماری سازگار میکند.
- تیم Wear به دنبال بازخورد توسعه دهندگان در مورد این تغییر مهم است. برای اطلاعات بیشتر، به یادداشتهای انتشار Android Wear مراجعه کنید.
- برخی از کلاس های منسوخ با دور شدن از API های قدیمی قبل از V14 حذف شدند، مانند
android.support.v7.NotificationCompat
(به جای آن از v4NotificationCompat
استفاده کنید)،KeyEventCompat
،ParallelExecutorCompat
وSearchViewCompat
. - ثابتهای ابرداده مانیفست لباس منتقلشده همگی اکنون از طریق
android.support.wear.utils.MetadataConstants
در دسترس هستند. - پشتیبانی از حالت محیطی اکنون برای همه فعالیتها در دسترس است، نه فقط WearableActivity. برای اطلاعات بیشتر، به مرجع
AmbientMode
مراجعه کنید. -
RoundedDrawable
اکنون از تورم XML پشتیبانی می کند.
رفع اشکال
- برنامه با کتابخانه پشتیبانی 27 و فونت قابل دانلود خراب می شود
- فونت های قابل دانلود برای پروژه های جدید ایجاد شده پس از به روز رسانی SDK کار نمی کنند
- SpeechRecognizer API در آخرین ارتقاء خراب است
- خرابی مربوط به قطعه در حین قرعه کشی پس از حذف نمای متحرک
- پخش رسانه support-leanback-demo همه خراب هستند
- کتابخانه پشتیبانی Android در حال اضافه کردن <meta-data> به مانیفست است
- FontResourcesParserCompat باید android: attrs را درک کند
- Leanback Glue از کلید ورودی Pause پشتیبانی نمی کند
- نماد حل نشده در IDE زمانی که چندین بسته شناسه مصنوع یکسانی را به اشتراک می گذارند.
- استثنای اشاره گر تهی در CarExtender
- پس از ایجاد MediaController، حالت shuffle / تکرار اشتباه، PlaybackState را تنظیم کرد
- پوسترهای پیشفرض خوشه کتابخانه هنگام پیمایش بر روی خوشه بعدی اجرا میشوند
- فراداده کارت توصیه قطع شده است
- IllegalArgumentException در RecyclerView.attachViewToParent()
- ClassNotFoundException هنگام حذف SavedState (نسخه AOSP 37133281 )
- فوکوس در RecyclerView گیر می کند
- رفع ANR در Leanback LayoutManager
نسخه 26.1.0 انتشار
(سپتامبر 2017)
این یک نسخه ویژه برای ادغام کتابخانه پشتیبانی با چرخه های زندگی از اجزای معماری است. اگر از کتابخانه Lifecycles استفاده نمی کنید، نیازی به به روز رسانی از 26.0.2 ندارید. برای اطلاعات بیشتر، به یادداشتهای انتشار اجزای معماری مراجعه کنید.
تغییرات مهم
-
Fragment
وFragmentActivity
(کلاس پایهAppCompatActivity
) اکنون رابطLifecycleOwner
را از Architecture Components پیاده سازی می کنند.
نسخه 26.0.2 انتشار
(اوت 2017)
رفع اشکال
- نمادهای منو در پشتیبانی کتابخانه 26.0.0 صاف می شوند
-
GuidedAction.multilineDescription
به درستی با Leanback کار نمی کند
نسخه 26.0.1 انتشار
(اوت 2017)
رفع اشکال
- FontCompat 26.0.0 در دستگاه های O-MR1 خراب می شود
- کتابخانه پشتیبانی طراحی 26.0.0 نباید شامل پشتیبانی مولتی دکس باشد ( شماره 63999442 ))
- AppBarLayout اکنون از 26.0.0 دارای 300 پیکسل صفحه سمت چپ است
- PlaybackTransportControl ناوبری خراب است
- Fragment.onCreateView زمانی قبل از اتمام onCreate فراخوانی می شود
- android.os.BadParcelableException: ClassNotFoundException هنگام حذف کردن: android.support.v4.media.MediaMetadataCompat
نسخه 26.0.0 منتشر شد
(ژوئیه 2017)
مهم: کتابخانه های پشتیبانی اکنون از طریق مخزن Maven Google در دسترس هستند. شما نیازی به دانلود مخزن پشتیبانی از مدیر SDK ندارید. برای اطلاعات بیشتر، به راه اندازی کتابخانه پشتیبانی مراجعه کنید.
تغییرات مهم
- حداقل نسخه SDK به 14 افزایش یافته است. در نتیجه، بسیاری از APIهایی که فقط برای سازگاری با سطوح API قبل از 14 وجود داشتند، منسوخ شده اند. مشتریان این APIها باید به معادلهای چارچوب خود همانطور که در صفحه مرجع برای هر API منسوخ شده ذکر شده است مهاجرت کنند.
- کتابخانه Wear UI شامل کلاسهایی است که به شما کمک میکنند الگوها و طرحبندیهایی را که در دستگاههای Wear کار میکنند، پیادهسازی کنید. برای اطلاعات بیشتر، به استفاده از کتابخانه UI Wear مراجعه کنید.
- ماژول پشتیبانی درصد منسوخ شده است. کلاینت های این ماژول باید به ویجت
ConstraintLayout
جدید مهاجرت کنند که به عنوان یک مصنوع جداگانه در SDK Manager ارائه شده است. -
android.support.v7.app.NotificationCompat
و کلاس های حاوی آن منسوخ شده است و در نسخه بعدی حذف خواهد شد:- به جای
v7.app.NotificationCompat.Builder
ازNotificationCompat.Builder
استفاده کنید. عملکردی که قبلاً به استفاده از v7 AppCompat Builder متکی بود، اکنون در v4 Compat Builder قرار گرفته است. -
DecoratedCustomViewStyle
به بستهandroid.support.v4.app
منتقل شده است. -
MediaStyle
وDecoratedMediaCustomViewStyle
اکنون بخشی از کتابخانه media-compat هستند و در بسته android.support.v4.media.app یافت می شوند.
- به جای
API های جدید
- پرچم بولی جدید
fastScrollEnabled
برایRecyclerView
. اگر فعال باشد، بایدfastScrollHorizontalThumbDrawable
،fastScrollHorizontalTrackDrawable
،fastScrollVerticalThumbDrawable
وfastScrollVerticalTrackDrawable
تنظیم شوند.
تفاوت های API
رفع اشکال
- حلقه بی نهایت در RecyclerView.toString()
- ResourceNotFoundException در حال اجرای پروژه Kotlin بر روی API 16 AVD پس از ارتقاء به Canary 6
- java.lang.AssertionError در نمای طراحی با پشتیبانی از کتابخانه 26.0.0-beta2
- پیشنمایش طرحبندی Android Studio برای ویجتهای کتابخانه پشتیبانی خراب شد
- اگر Preference با ویژگی ها ایجاد نشده باشد () Preference.setSingleLineTitle نادیده گرفته می شود
- حاشیه نویسی های DAC "Since" برای ویرایش های 25.3.0 / 25.4.0 کتابخانه پشتیبانی اشتباه است
- ResourcesCompat.getFont() استثنا را ایجاد می کند
- عنوان نوار ابزار با فونت پررنگ نیست
- اندازه خودکار با maxLines نتایج غیرمنتظره ای ایجاد می کند
- NullPointerException در TextView.checkForRelayout()
- AppCompatTextViewAutoSizeHelper.setRawTextSize() requestLayout() را در طول طرح فراخوانی می کند
- EmojiAppCompatTextView خراب می شود
- اندازه خودکار TextView به طور خودکار هنگام تغییر متن تنظیم نمی شود
- خرابی صفحه نمایش در Instacart
- UnsupportedOperationException در MenuItemCompat
- NotificationCompat عملکردهای API 24 یا بالاتر را به طور کامل استخراج نمی کند
- مشکلات لنگر انداختن CoordinatorLayout در بهروزرسانیهای طرحبندی
این صفحه جزئیاتی در مورد آخرین نسخه های بسته کتابخانه پشتیبانی ارائه می دهد. برای نسخههای قبلی، به آرشیو ویرایشهای کتابخانه پشتیبانی مراجعه کنید.
نسخه 28.0.0 تولید
(21 سپتامبر 2018)
این نسخه پایدار پشتیبانی کتابخانه 28.0.0 است و برای استفاده در تولید مناسب است. این آخرین ویژگی منتشر شده تحت بسته بندی android.support
خواهد بود و توسعه دهندگان تشویق می شوند به AndroidX مهاجرت کنند.
ویژگی های جدید
-
AnimatedStateListDrawableCompat
انتقال متحرک بین حالت های قابل ترسیم را فراهم می کند. -
VectorDrawableCompat
از gradient وColorStateList
پر و استروک پشتیبانی می کند.
نسخه 28.0.0 RC 2
(27 اوت 2018)
این نامزد انتشار از کتابخانه پشتیبانی، ویژگی کامل در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه بهعنوان نسخه پایدار نهایی ارسال میشود و از هرگونه مشکل مهمی که ممکن است رخ دهد جلوگیری میکند. این نسخه باید برای استفاده در تولید بی خطر باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
مسائل رفع شد
- Proguard سازنده View Model Application را حذف می کند (نسخه عمومی 112230489 )
- وضعیت ثابت «AnimatedStateListDrawableCompat» ثابت شد
- وابستگی media2 از mediarouter 1.0.0 حذف شد
- «Fragment.getViewLifecycleOwner()» با فشار دادن دکمه صفحه اصلی متوقف نمیشود (نسخه عمومی 113070421 ) ([شماره عمومی 113070421](https://issuetracker.google.com/issues/113070421))
نسخه 28.0.0 RC 1
(6 اوت 2018)
این نامزد انتشار از کتابخانه پشتیبانی، ویژگی کامل در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه بهعنوان نسخه پایدار نهایی ارسال میشود و از هرگونه مشکل مهمی که ممکن است رخ دهد جلوگیری میکند. این نسخه باید برای استفاده در تولید بی خطر باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
توجه: برخی از کتابخانه ها، مانند media2، در مرحله آلفا باقی مانده اند زیرا سطوح API آنها هنوز نهایی نشده است. ما استفاده از کتابخانه های آلفا را در تولید توصیه نمی کنیم. کتابخانه ها باید به شدت از وابستگی به کتابخانه های آلفا در تولید خودداری کنند، زیرا سطوح API آنها ممکن است به روش های ناسازگار با منبع و باینری تغییر کند.
مسائل رفع شد
- منوی BottomNavigationView به درستی در کتابخانه پشتیبانی طراحی مقداردهی اولیه نشده است
- PositionalDataSource موارد درج شده از قبل در پایگاه داده را به درستی مدیریت نمی کند
- اسلایدرها بینظیر هستند و پاسخگو نیستند
- «SlicesProviderCompat.getPinnedSpecs()» شناسه های کاربر را به URI اضافه نمی کند
- RoutePlayer2: پخش از راه دور به پخش محلی باز نمی گردد
- تجزیه برش ذخیره شده در حافظه پنهان در عملکردها خراب می شود
- خرابی برنامه جستجوی Google در رندر کردن Slice ثابت
- ConcurrentModificationException در کتابخانه انتخاب RecyclerView زمانی که مجموعه داده ها با حذف انتخاب تغییر کرد
- PreferenceThemeOverlay به جدیدترین موضوع مواد به روز شده است. اگر تم سفارشی ارائه نشده باشد، PreferenceThemeOverlay به عنوان تم پیشفرض استفاده میشود.
- تمهای PreferenceThemeOverlay.v14 و PreferenceThemeOverlay.v14.Material به نفع PreferenceThemeOverlay منسوخ شدهاند.
- قابلیت مشاهده PreferenceGroup اکنون به فرزندان آن گره خورده است - پنهان کردن یک گروه والدین همچنین از نمایش فرزندان آن در سلسله مراتب جلوگیری می کند. از Preference.isShown() برای دریافت اینکه آیا یک Preference واقعاً در سلسله مراتب به کاربر نمایش داده می شود یا خیر استفاده کنید.
- Preference.onSetInitialValue(بولی، Object) منسوخ شده و با onSetInitialValue(Object) جایگزین شده است. PreferenceDataStore اکنون مقادیر پیش فرض را نیز به درستی بازیابی می کند.
نسخه 28.0.0 بتا 1
(ژوئیه 2018)
این نسخه بتا از کتابخانه پشتیبانی بهعنوان ویژگی کامل در نظر گرفته میشود و سطح API عمومی آن پایدار است و از هرگونه مشکل مهمی که ممکن است پیش بیاید جلوگیری میکند. اگرچه این نسخه برای استفاده در تولید ایمن است، اما ممکن است همچنان دارای اشکال باشد. لطفاً هر گونه مشکل را به ردیاب مسائل عمومی گزارش دهید.
مسائل رفع شد
- رویدادهای غذا خوردن GestureSelectionHelper در موارد غیر قابل انتخاب
- وقتی مقدار لغزنده بهروزرسانی میشود، برشهای لغزنده میتوانند نماد انگشت شست تکراری داشته باشند
- IconCompat نمادهای TYPE_URI را شکست
- با استفاده از Seekbar با تنظیمات برگزیده خراب شود
- خرابی در Slice.toString()
- OffsettingListUpdateCallback.onMoved() mCallback.onRemoved() را به جای mCallback.onMoved() (نسخه 110711937 )
ویرایش 27.1.1
(آوریل 2018)
مسائل رفع شد
- AsyncListDiffer getChangePayload را صدا نمیزند (نسخه AOSP 73961809 )
- Fragment ViewModel's onCleared فراخوانی نشد (AOSP شماره 74139250 )
- RecyclerView.setRecycledViewPool() attachCount را حتی زمانی که آداپتور خالی است افزایش می دهد
- RecyclerView NPE if SmoothScroller.onStop فراخوانی stop() یا startSmoothScroller()
- تراکنش جایگزینی قطعه باعث می شود قطعه قبلی پس از نمایش قطعه جدید سوسو بزند (AOSP شماره 74051124 )
- تغییر شکستن تماس مجدد لودر در 27.1.0 (نسخه AOSP 74135998 )
- وقتی ستون مجموعه نمای شبکه عمودی > 1 باشد، طرحبندی RTL کار نمیکند
- onLoadFinished چندین بار در ViewPager با FragmentPagerAdapter فراخوانی شد
- AsyncListDiffer باید پس از تنظیم لیست فعلی به روز رسانی ها را ارسال کند (نسخه AOSP 74003309 )
- ShareActionProvider ClassCastException را در 27.1.0 قرار می دهد
- تغییر چرخه عمر قطعه با ViewPager (نسخه AOSP 73976255 )
نسخه 28.0.0 آلفا 1
(مارس 2018)
توجه: 28.0.0-alpha1 یک نسخه پیش از انتشار برای پشتیبانی از پیش نمایش برنامه نویس Android P است. سطح API آن در معرض تغییر است و لزوماً شامل ویژگیها یا رفع اشکال از آخرین نسخههای پایدار کتابخانه پشتیبانی نمیشود.
تغییرات مهم
- همانطور که قبلاً در اطلاعیه Android KTX ذکر شد، ما همچنان به استفاده از پیشوند بسته
androidx
در سراسر کتابخانه های خود ادامه می دهیم. مجموعه ای از کتابخانه های کاملاً جدید، از جملهheifwriter
وrecyclerview-selection
، در این بسته جدید شروع به کار می کنند. ما امیدواریم که تقسیمبندی بینandroid.*
وandroidx.*
واضحتر شود که کدام API با پلتفرم همراه است و کدام یک کتابخانه ثابت برای توسعهدهندگان برنامه هستند که در نسخههای مختلف Android کار میکنند. - ما بخش هایی از support-core-ui، support-core-utils و support-compat را به کتابخانه های کوچکتر تقسیم کرده ایم. این تغییر به ما کمک میکند تا وابستگیهای کتابخانه پشتیبانی را در آینده جدا کنیم. اکنون کتابخانه های جدید زیر را داریم:
- asynclayoutinflater (از support-core-ui)
- مجموعه ها (از support-compat)
- هماهنگ کننده (از طراحی)
- مکان نما (از support-core-ui)
- نمای سفارشی (از support-core-ui)
- فایل سند (از support-core-utils)
- کشو (از support-core-ui)
- interpolator (از support-core-ui)
- لودر (از support-fragments و core-utils)
- localbroadcastmanager (از support-core-utils)
- چاپ (از support-core-utils)
- slidingpanelayout (از support-core-ui)
- swiperfreshlayout (از support-core-ui)
- نمایشگر (از support-core-ui)
API های جدید
-
recyclerview-selection
از انتخاب آیتم برایRecyclerView
پشتیبانی می کند. بسته ارائه می دهد:- پشتیبانی از ایجاد، اصلاح، بازرسی و نظارت بر تغییرات مجموعه ای از موارد انتخاب شده در لیست RecyclerView.
- پشتیبانی از اقدامات بصری چند انتخابی:
- انتخاب مبتنی بر لمس به کاربران اجازه میدهد تا محدودههایی از آیتمها را با یک حرکت بصری فشار و کشیدن طولانی انتخاب کنند.
- انتخاب باند مبتنی بر ماوس به کاربران این امکان را میدهد تا با استفاده از اقدامات سنتی نوار اشاره گر ماوس، بلوکی از آیتمها را در فهرست RecyclerView انتخاب کنند.
- پشتیبانی از دستگاههای لمسی، از جمله تلفن و لپتاپهای لمسی، و همچنین دستگاههای اشارهگر محور.
- HEIF Writer برای نوشتن تصاویر ثابت با فرمت HEIF پشتیبانی می کند.
- کتابخانه طراحی
- ما یک موضوع برنامه کاربردی جدید،
Theme.MaterialComponents
، با ویژگیهای جدید و سبکهای بهروز شده برای کامپوننتها، معرفی کردهایم. - ما اجزای زیر را اضافه کرده ایم:
- BottomAppBar
- تراشه
- ChipGroup
- دکمه مواد
- MaterialCardView
- ما یک موضوع برنامه کاربردی جدید،
- Slices چارچوبی را برای برنامهها فراهم میکند تا محتوای قالبشده را از برنامههای دیگر جاسازی کنند.
- slices-builders شامل روش هایی برای ساخت محتوا در قالب قالب است.
- slices-view شامل روش هایی برای ارائه آن محتوا است.
- اقدامات مرورگر پروتکلی را برای توسعه دهندگان برنامه فراهم می کند تا یک منوی زمینه ثابت (اما قابل تنظیم) را برای URL ها راه اندازی کنند. این ویژگی به وجود یک برنامه مرورگر (مانند Chrome، جایی که این ویژگی هنوز در حال توسعه است) بستگی دارد که از اقدامات مرورگر پشتیبانی میکند.
-
ContextCompat.getSystemService()
وgetSystemServiceName()
اجازه جستجوی سرویس سیستم را بر اساس نوع در تمام سطوح API می دهند.
رفع اشکال
- Fragment ViewModel's onCleared فراخوانی نشد (AOSP شماره 74139250 )
- ()onLoadFinished چندین بار در ViewPager با FragmentPagerAdapter فراخوانی شده است (نسخه AOSP 74182171 )
- RecyclerView's LinearLayoutManager's smoothScrollToPosition() حرکت نامنظم (به جلو و عقب) را تحت شرایط خاص نمایش می دهد (AOSP شماره 71567765 )
نسخه 27.1.0 انتشار
(فوریه 2018)
تغییرات مهم
- اجرای اساسی Loader برای استفاده از چرخه حیات بازنویسی شده است. در حالی که API بدون تغییر باقی می ماند، تعدادی از تغییرات رفتاری وجود دارد:
-
initLoader()
،restartLoader()
، وdestroyLoader()
اکنون فقط می توانند در thread اصلی فراخوانی شوند. - هنگامی که FragmentActivity/Fragment حاوی FragmentActivity/Fragment شروع و متوقف می شود، اکنون ()
onStartLoading()
وonStopLoading()
یک Loader فراخوانی می شوند. -
onLoadFinished()
فقط بینonStart()
وonStop
فراخوانی می شود. در نتیجه، تراکنش های Fragment اکنون می توانند با خیال راحت درonLoadFinished()
انجام شوند. - متدهای FragmentController مربوط به Loader اکنون منسوخ شده اند.
-
-
getDialog()
DialogFragment اکنون تاonDestroyView()
غیر تهی خواهد بود، به جای اینکه درdismiss()
null شود. اکنون می توانید تعیین کنید که آیا Dialog به صورت دستی درonStop()
رد شده است یاgetDialog().isShowing()
API های جدید
-
ListAdapter
برایRecyclerView
(همراه باAsyncListDiffer
) محاسبه تفاوت های لیست را در یک رشته پس زمینه آسان تر می کند. اینها می توانند به RecyclerView شما کمک کنند تا با کمترین کار روی رشته UI، محتوای متحرک به طور خودکار تغییر کند. آنها ازDiffUtil
در زیر کاپوت استفاده می کنند. -
SortedList.ReplaceAll
بهروزرسانی همه دادهها را در SortedList فعال میکند، که همه انیمیشنهای مناسب برای درجها، حذفها، تغییرات و جابهجاییها را اجرا میکند (حرکات به عنوان حذف و درج در نظر گرفته میشوند). - FragmentActivity و Fragment اکنون
ViewModelStoreOwner
پیاده سازی می کنند و اکنون می توانند با سازندهViewModelProvider
به عنوان جایگزینی برای استفاده ازViewModelProviders.of()
- فرگمنتها اکنون متدهای
requireContext()
،requireActivity()
،requireHost()
وrequireFragmentManager()
دارند که یک شیNonNull
از متدهای get معادل را برمی گرداند یا یکIllegalStateException
پرتاب می کند. -
requireViewById()
، یک نسخه سازگار@NonNull
ازfindViewById()
بهWindowCompat
،ActivityCompat
وViewCompat
اضافه شده است، که زمانی که هدف پیدا نمی شود، یکIllegalArgumentException
پرتاب می کند. - روشهای
LoaderCallbacks
اکنون دارای حاشیهنویسی مناسب@Nullable
و@NonNull
هستند. -
FileProvider
اکنون ازgetExternalMediaDirs()
در API 21 و دستگاه های بالاتر از طریق عنصر<external-media-path>
جدید پشتیبانی می کند.
رفع اشکال
- قطعه ای که Loader را در onCreate مقداردهی اولیه می کند، چرخه حیات را در ViewPager شکسته است
- LoaderManager IllegalStateException را در onLoadFinished قرار می دهد
- LoaderViewModel لودرهای خود را در onCleared پاک نمی کند
- فایل کلاس برای android.arch.lifecycle.ViewModelStoreOwner یافت نشد
- DialogFragment onDisiss بلافاصله پس از رد کردن فراخوانی نمی شود()
- هنگام استفاده از فونتهای قابل دانلود، شکلکهای پرچم کشور روی دستگاههای کلید انتشار کار نمیکنند
- کتابخانه Preferences از ویژگیهایی استفاده میکند که در نسخههای قدیمی Android کار نمیکنند
- انواع مصنوع testlib MediaCompat به اشتباه مستند شده اند (AOSP شماره 71559905 )
- Google Sans در TypefaceCompatUtil خراب می شود
- سازنده ArraySet که مجموعه را می گیرد را در معرض نمایش قرار دهید.
- updateApi فایل های .ignore را که باید حفظ شوند را حذف می کند
- MainFragment های اضافی ایجاد شده در BrowseFragment
- استفاده از بازتاب را از CarRecyclerView حذف کنید
- java.lang.IllegalStateException در FragmentManagerImpl.checkStateLoss
- هنگام استفاده از android.support.v4.content.PermissionChecker.checkSelfPermission، java.lang.SecurityException (بدون سند) دریافت کردم
- recyclerview indexoutOfBoundSexception زیرا state.mpreviouslayoutitemcount در SetAdapter پاک نشده است (شماره AOSP 37657125 )
- قطعه ای که لودر را در OnCreate آغاز می کند ، چرخه حیات را در ViewPager شکسته است (شماره AOSP 34831613 )
- FragmentManagerImpl.execsingLeaction تصادفات
نسخه 27.0.2 نسخه
(نوامبر 2017)
رفع اشکال
-
EmojiEditTextHelper
NullPointerException
پرتاب می کند. -
IllegalStateException
: قطعه هنوز پیوست نشده است. - با ضربه زدن به هر نقطه روی صفحه ، نماد بازیگران "بازیگران" را رد نمی کند.
-
MediaMetadataCompat
BadParcelableException
را پرتاب می کند.
نسخه 27.0.1 نسخه
(نوامبر 2017)
رفع اشکال
- پس از فراخوانی
startActivityForResult()
حیات زندگی در وضعیت اشتباه قرار دارد. (شماره 65665621 ) - رنگ دکمه های معلول در سطح API قدیمی بسیار سبک است.
- پس از پیمایش کاربر ، آنها نمی توانند روی یک مورد در یک
RecyclerView
کلیک کنند. (شماره AOSP 66996774 ) - در Talkback ، کلیک بر روی گزینه های بیشتر باعث نمی شود سیستم پنجره جدید را اعلام کند یا تمرکز خود را به گزینه های جدید اضافه کند.
نسخه 27.0.0 نسخه
(اکتبر 2017)
API متفاوت است
API تغییر می کند
- حاشیه نویسی های تهی به انواع API ها اضافه شد ، از جمله موارد زیر: این می تواند باعث ایجاد خطاهای تلفیقی کوتلین شود که انواع بازده قابل برگشت به درستی انجام نشود.
-
Fragment
می تواند از نسخه های پشتیبانی کتابخانهTransition
برای انتقال قطعه ، از جمله انتقال عناصر مشترک استفاده کند. - کتابخانه صفحه بندی محتوا (
android.support.content.ContentPager
) پشتیبانی از محتوای صفحه بندی را که از طریق یکContentProvider
در معرض آن قرار دارد ، پشتیبانی می کند. استفاده از این کتابخانه به مشتری این امکان را می دهد تا از پردازش گران قیمت "مبادله پنجره مکان نما" در موضوع UI جلوگیری کند و یک کتابخانه سازگاری را برای ویژگی Android 8.0 فراهم کند. -
ViewCompat
اکنون بسته بندی هایی را برای روش های خودکار ، از جملهgetImportantForAutofill()
،isImportantForAutofill()
،setAutofillHints()
وsetImportantForAutofill()
اضافه می کند. - Leanback ویژگی های جدید و لهستانی می شود و برخی از کلاس های مستهلک شده را از دست می دهد ، مانند:
- اکنون
Picker
می تواند با استفاده از روشsetSeparators()
از جداکننده های مختلف بین هر ستون استفاده کند. -
DiffCallback
اضافه شده است تاArrayObjectAdapter
از خروجی ارائه شده توسطDiffUtil
استفاده کند. - زیرساخت ها برای پشتیبانی از بازیکنان رسانه ای با کنترل متغیر اضافه شده و کنترل های اختیاری را برای سریع جلو ، تکرار ، تغییر ، بعدی ، قبلی و عقب اضافه می کنند.
- حذف
MediaControllerGlue
، PlaybackControlGlue ،PlaybackControlSupportGlue
وPlaybackOverlayFragment
.
- اکنون
- برای آزمایش ، ابزار PollingCheck از CTS AOSP منتقل می شود. نظرسنجی می کند که یک شرط در یک پنجره Timeout اتفاق بیفتد.
- زیرساخت ها برای پشتیبانی از مجوزهای زمان اجرا در برنامه های فوری برای Android 5.0 با استفاده از
PermissionCompatDelegate
اضافه شده است. - زبانه های سفارشی قابل اعتماد اکنون به همراه امکان تعریف رابطه بین یک برنامه و URI مبدا پشتیبانی شده است.
- پشتیبانی از حالت Android Wear Ambient با استفاده از قطعه AmbientMode بدون سر ، ساده می شود ، که همچنین باعث می شود پشتیبانی از حالت محیط با استفاده از اجزای معماری سازگار باشد.
- تیم Wear به دنبال بازخورد توسعه دهنده پیرامون این تغییر قابل توجه است. برای اطلاعات بیشتر ، به یادداشت های انتشار آندروید مراجعه کنید.
- برخی از کلاسهای مستهلک شده از آنجا که از API های قدیمی V14 قدیمی دور می شویم ، مانند
android.support.v7.NotificationCompat
(به جای آن از V4NotificationCompat
استفاده کنید) ،KeyEventCompat
،ParallelExecutorCompat
وSearchViewCompat
حذف شده اند. - سایش سایش مهاجرت از ثابتهای ابرداده مانیفست هم اکنون از طریق
android.support.wear.utils.MetadataConstants
در دسترس است. - پشتیبانی از حالت محیط اکنون برای همه فعالیت ها موجود است ، نه فقط پوشیدنی بودن. برای اطلاعات بیشتر ، به مرجع
AmbientMode
مراجعه کنید. -
RoundedDrawable
اکنون از تورم XML پشتیبانی می کند.
رفع اشکال
- تصادفات برنامه با کتابخانه پشتیبانی 27 و قلم قابل بارگیری
- فونت های قابل بارگیری برای پروژه های جدید که پس از به روزرسانی SDK ایجاد شده اند کار نمی کنند
- API SpeechRecognizer در آخرین نسخه شکسته شده است
- تصادف مربوط به قطعه در هنگام قرعه کشی پس از حذف نمای انیمیشن
- پخش رسانه های پشتیبانی-لاغر-دیموس همه شکسته است
- کتابخانه پشتیبانی Android در حال اضافه کردن <TEA-DATA> به آشکار است
- fontresourcesparserCompat باید Android را درک کند: جاذبه ها
- چسب Leanback از کلید ورودی مکث پشتیبانی نمی کند
- نماد حل نشده در IDE هنگامی که چندین بسته شناسه مصنوعات مشابه را به اشتراک می گذارند.
- استثناء اشاره گر تهی در carextender
- تغییر حالت اشتباه / تکرار حالت تنظیم پخش پس از ایجاد MediaController
- پوسترهای پیش فرض خوشه کتابخانه در حالی که حرکت می کنند روی خوشه بعدی اجرا می شوند
- فوق داده کارت توصیه قطع شده است
- IllugalArgumentException در Recyclerview.attachviewtoparent ()
- ClassNotFoundException هنگام عدم استفاده از SaveDstate (شماره AOSP 37133281 )
- تمرکز در بازیافت گیر می شود
- ANR را در Leanback LayoutManager رفع کنید
نسخه 26.1.0 نسخه
(سپتامبر 2017)
این یک نسخه ویژه برای ادغام کتابخانه پشتیبانی با چرخه عمر از اجزای معماری است. اگر از کتابخانه Lifecycles استفاده نمی کنید ، نیازی به بروزرسانی از 26.0.2 ندارید. برای اطلاعات بیشتر ، به یادداشت های انتشار اجزای معماری مراجعه کنید.
تغییرات مهم
-
Fragment
وFragmentActivity
(کلاس پایه برایAppCompatActivity
) اکنون رابطLifecycleOwner
از اجزای معماری پیاده سازی می کند.
نسخه 26.0.2 نسخه
(اوت 2017)
رفع اشکال
- نمادهای منو در کتابخانه پشتیبانی 26.0.0 مسطح می شوند
-
GuidedAction.multilineDescription
به درستی با Leanback کار نمی کند
نسخه 26.0.1 نسخه
(اوت 2017)
رفع اشکال
- Fontcompat 26.0.0 تصادف در دستگاه های O-MR1
- 26.0.0 کتابخانه پشتیبانی طراحی نباید شامل پشتیبانی Multidex باشد (شماره 63999442 ))
- AppBarlayout اکنون از 26.0.0 300px بالشتک سمت چپ دارد
- ناوبری PlaybackTransportControl خراب است
- fragment.oncreateview مدتی قبل از اتمام onCreate خوانده می شود
- Android.os.badparcelableException: ClassNotFoundException هنگام عدم وجود: android.support.v4.media.MediametAdatacompat
نسخه 26.0.0 نسخه
(ژوئیه 2017)
نکته مهم: کتابخانه های پشتیبانی اکنون از طریق مخزن Maven Google در دسترس هستند. نیازی به بارگیری مخزن پشتیبانی از مدیر SDK نیست. برای اطلاعات بیشتر ، به تنظیم کتابخانه پشتیبانی مراجعه کنید.
تغییرات مهم
- حداقل نسخه SDK به 14 افزایش یافته است. در نتیجه ، بسیاری از API ها که فقط برای سازگاری با سطح API قبل از 14 وجود داشته اند ، کاهش یافته است. مشتریان این API ها باید همانطور که در صفحه مرجع برای هر API مستهلک شده ذکر شده است ، به معادل چارچوب خود مهاجرت کنند.
- کتابخانه UI Wear شامل کلاس هایی است که به شما در اجرای الگوهای و چیدمان هایی که روی دستگاه های Wear کار می کنند ، کمک می کند. برای اطلاعات بیشتر ، به استفاده از کتابخانه Wear UI مراجعه کنید.
- ماژول پشتیبانی درصد کاهش یافته است. مشتریان این ماژول باید به ویجت جدید
ConstraintLayout
، که به عنوان یک مصنوعات جداگانه در SDK Manager ارائه شده است ، مهاجرت کنند. -
android.support.v7.app.NotificationCompat
و کلاسهای حاوی آن کاهش یافته و در نسخه بعدی حذف می شوند:- به جای
v7.app.NotificationCompat.Builder
ازNotificationCompat.Builder
استفاده کنید. عملکردی که قبلاً به استفاده از V7 AppCompat Builder اعتماد داشت ، اکنون در سازنده سازگار V4 قرار گرفته است. -
DecoratedCustomViewStyle
به بستهandroid.support.v4.app
منتقل شده است. -
MediaStyle
وDecoratedMediaCustomViewStyle
اکنون بخشی از کتابخانه رسانه های رسانه ای هستند و را می توان در بسته Android.support.v4.media.app یافت.
- به جای
API های جدید
- پرچم جدید
fastScrollEnabled
برایRecyclerView
. در صورت فعال بودن ،fastScrollHorizontalThumbDrawable
،fastScrollHorizontalTrackDrawable
،fastScrollVerticalThumbDrawable
وfastScrollVerticalTrackDrawable
قابل تنظیم است.
API متفاوت است
رفع اشکال
- حلقه نامتناهی در recyclerview.tostring ()
- ResourcEnotFoundException اجرای پروژه Kotlin در API 16 AVD پس از به روزرسانی به قناری 6
- java.lang.assertionerror در نمای طراحی با کتابخانه پشتیبانی 26.0.0-beta2
- پیش نمایش چیدمان استودیوی Android برای پشتیبانی از ابزارک های کتابخانه
- preference.SetsingLelinetItle () اگر اولویت با ویژگی ها ایجاد نشده باشد نادیده گرفته می شود
- DAC "از آنجا" حاشیه نویسی برای 25.3.0 / 25.4.0 تجدید نظر در کتابخانه پشتیبانی اشتباه است
- ResourcEscompat.getFont () استثنا را پرتاب می کند
- عنوان نوار ابزار نه با قلم جسورانه
- اندازه گیری خودکار با MaxLines نتایج غیر منتظره ای به همراه دارد
- NullPointerException در TextView.CheckforreLayout ()
- AppCompattextViewAutosizeHelper.SetrawTextSize () تماس درخواست layout () در طول طرح
- emojiappcompattextView خراب می شود
- Autosize TextView هنگام تغییر متن به طور خودکار تنظیم نمی شود
- فساد صفحه در Instacart
- عدم پشتیبانی از کار در menuitemcompat
- NotificationCompat اقدامات را در API 24 یا بالاتر به طور کامل استخراج نمی کند
- مشکلات لنگرگاه هماهنگ کننده در به روزرسانی های طرح
این صفحه جزئیات مربوط به جدیدترین نسخه های بسته بندی کتابخانه پشتیبانی را ارائه می دهد. برای نسخه های قبلی ، به بایگانی تجدید نظر در کتابخانه پشتیبانی مراجعه کنید.
تجدید نظر 28.0.0 تولید
(21 سپتامبر 2018)
این انتشار پایدار کتابخانه پشتیبانی 28.0.0 است و برای استفاده در تولید مناسب است. این آخرین نسخه زیر بسته بندی android.support
خواهد بود و توسعه دهندگان تشویق می شوند به Androidx مهاجرت کنند.
ویژگی های جدید
-
AnimatedStateListDrawableCompat
انتقال انیمیشن بین حالتهای قابل ترسیم را فراهم می کند. -
VectorDrawableCompat
پشتیبانی از پر کردن و سکته مغزی شیب وColorStateList
را بدست می آورد.
تجدید نظر 28.0.0 RC 2
(27 اوت 2018)
این نامزد انتشار کتابخانه پشتیبانی کاملاً مناسب در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه به عنوان نسخه پایدار نهایی که مانع از هرگونه مسئله مهم ممکن است بروز شود ، ارسال می شود. این نسخه باید در تولید بی خطر باشد. لطفاً هرگونه مسئله را به ردیاب مسئله عمومی گزارش دهید.
مشکلات ثابت
- Proguard View View Model Application را حذف می کند (شماره عمومی 112230489 )
- ثابت "AnimatedStatelistDrawleCompat" ثابت
- وابستگی Media2 از Mediarouter 1.0.0 حذف شد
- `fragment.getviewlifecycleowner ()` هنگام ضربه زدن به دکمه خانه متوقف نمی شود (شماره عمومی 113070421 ) ([شماره عمومی 113070421] (https://issuetracker.google.com/issues/113070421))
تجدید نظر 28.0.0 RC 1
(6 اوت 2018)
این نامزد انتشار کتابخانه پشتیبانی کاملاً مناسب در نظر گرفته می شود و سطح API عمومی آن پایدار است. این نسخه به عنوان نسخه پایدار نهایی که مانع از هرگونه مسئله مهم ممکن است بروز شود ، ارسال می شود. این نسخه باید در تولید بی خطر باشد. لطفاً هرگونه مسئله را به ردیاب مسئله عمومی گزارش دهید.
توجه: برخی از كتابخانه ها ، مانند Media2 ، در مرحله آلفا باقی مانده اند زیرا سطوح API آنها هنوز نهایی نشده است. ما استفاده از کتابخانه های آلفا را در تولید توصیه نمی کنیم. كتابخانه ها باید بسته به كتابخانه های آلفا در تولید ، از آن جلوگیری كنند ، زیرا سطوح API آنها در روشهای منبع و باینری سازگار با آنها تغییر می كند.
مشکلات ثابت
- منوی BottomNavigationView به درستی در کتابخانه پشتیبانی طراحی آغاز نمی شود
- PositionalDataSource به درستی درج کالاهای از پیش گرفته شده را در پایگاه داده کنترل نمی کند
- لغزنده ها شوخی هستند و پاسخگو نیستند
- `slicesprovidercompat.getpinnedspecs ()` شناسه کاربر را به URIS اضافه نمی کند
- RoutePlayer2: پخش از راه دور به پخش محلی باز نمی گردد
- تجزیه برش بسته بندی شده در حال خراب شدن است
- برنامه جستجوی Google در ارائه برش استاتیک خراب است
- همزمان modificationException در کتابخانه انتخاب بازیافت هنگامی که مجموعه داده با حذف انتخاب تغییر کرده است
- PreferencetheMeOverlay به آخرین موضوع مطالب به روز شده است. اگر موضوع سفارشی ارائه نشده باشد ، از PreferenCeTheMeOverlay به عنوان موضوع پیش فرض استفاده می شود.
- مضامین preferencethemeoverlay.v14 و preferencethemeoverlay.v14. مادی به نفع prefelencethemeoverlay مستهلک شده اند.
- دیدگاه گروه اولی اکنون با فرزندان خود گره خورده است - مخفی کردن یک گروه والدین نیز مانع از نمایش فرزندان خود در سلسله مراتب می شود. برای دریافت این که آیا اولویت در واقع در سلسله مراتب به کاربر نمایش داده می شود ، از preference.isshown () استفاده کنید.
- preference.onsetinitialValue (بولی ، شی) مستهلک شده و با شروع کار (شی) جایگزین شده است. Preferencedatastore اکنون به درستی مقادیر پیش فرض را بازیابی می کند.
تجدید نظر 28.0.0 بتا 1
(ژوئیه 2018)
این نسخه بتا از کتابخانه پشتیبانی کاملاً مناسب در نظر گرفته می شود و سطح API عمومی آن پایدار است و هرگونه مسائل مهم را که ممکن است بوجود بیاید مانع می کند. در حالی که این نسخه برای تولید ایمن است ، اما هنوز هم ممکن است حاوی اشکالات باشد. لطفاً هرگونه مسئله را به ردیاب مسئله عمومی گزارش دهید.
مشکلات ثابت
- GestuveSelectionHelper خوردن رویدادها در مورد موارد غیر انتخابی
- برش های کشویی می توانند در هنگام به روزرسانی مقدار کشویی ، نماد انگشت شست کپی کنند
- IconCompat آیکون های Type_uri را شکست
- سقوط با ترجیحات با استفاده از Seekbar
- Crash in slice.tostring ()
- OffsettListupDateCallback.onmoved () mcallback.onremoved () به جای mcallback.onmoved () (شماره 110711937 ) تماس می گیرد
تجدید نظر 27.1.1
(آوریل 2018)
مشکلات ثابت
- AsynclistDiffer با GetChangePayload تماس نمی گیرد (شماره AOSP 73961809 )
- Fragment ViewModel's Oncleared No Come (شماره AOSP 74139250 )
- recyclerview.setrecycledviewpool () حتی در صورت تهویه آداپتور ، ضمیمه را افزایش می دهد
- recyclerview npe اگر SmoothsCroller.Onstop فراخوان () یا StartsMoothScroller ()
- معامله جایگزینی قطعه باعث می شود که قطعه قبلی پس از نشان دادن قطعه جدید ، تابش قبلی را سوسو بزند (شماره AOSP 74051124 )
- تغییر پشت پاسخ لودر در 27.1.0 (شماره AOSP 74135998 )
- طرح RTL هنگامی کار نمی کند که ستون عمودی ستون تنظیم شده> 1
- OnloadFinished چندین بار در ViewPager با FragmentPagerAdapter خوانده می شود
- AsynclistDiffer پس از تنظیم لیست فعلی باید به روزرسانی ها را اعزام کند (شماره AOSP 74003309 )
- ShareActionProvider ClassCastException را در 27.1.0 پرتاب می کند
- تغییر چرخه عمر قطعه با ViewPager (شماره AOSP 73976255 )
تجدید نظر 28.0.0 آلفا 1
(مارس 2018)
توجه: 28.0.0-alpha1 یک نسخه قبل از انتشار برای پشتیبانی از پیش نمایش Android P Developer است. سطح API آن در معرض تغییر است و لزوماً شامل ویژگی ها یا رفع اشکال از آخرین نسخه های پایدار کتابخانه پشتیبانی نیست.
تغییرات مهم
- همانطور که قبلاً در اعلامیه Android KTX ذکر شد ، ما همچنان پیشوند بسته
androidx
را در کتابخانه های خود اتخاذ می کنیم. مجموعه ای از کتابخانه های کاملاً جدید ، از جمله انتخاباتheifwriter
وrecyclerview-selection
، در این بسته جدید شروع می شود. ما امیدواریم که تقسیم بینandroid.*
وandroidx.*
- ما بخش هایی از پشتیبانی هسته ای ، پشتیبانی هسته ای و پشتیبانی از محفظه را به کتابخانه های کوچکتر تقسیم کرده ایم. این تغییر به ما کمک می کند تا از وابستگی های کتابخانه پشتیبانی در آینده جدا شویم. اکنون کتابخانه های جدید زیر را داریم:
- Asynclayoutinflater (از پشتیبانی-هسته-UI)
- مجموعه ها (از پشتیبانی پشتیبانی)
- هماهنگ کننده (از طراحی)
- مکان نما (از پشتیبانی-هسته-UI)
- CustomView (از پشتیبانی-هسته-UI)
- DocumentFile (از پشتیبانی-هسته)
- DrawerLayout (از پشتیبانی-هسته-UI)
- درون یابی (از پشتیبانی-هسته-UI)
- لودر (از حوزه های پشتیبانی و UTILS)
- LocalBroadcastManager (از پشتیبانی-مدفوع)
- چاپ (از پشتیبانی هسته ای)
- کشویی پانلیاوت (از پشتیبانی-هسته-UI)
- swiperefreshlayout (از پشتیبانی-هسته-UI)
- ViewPager (از پشتیبانی-هسته-UI)
API های جدید
-
recyclerview-selection
پشتیبانی انتخاب مورد را برایRecyclerView
ارائه می دهد. بسته ارائه می دهد:- پشتیبانی از ایجاد ، اصلاح ، بازرسی و نظارت بر تغییرات در مجموعه ای از موارد منتخب در یک لیست بازیافت.
- پشتیبانی از اقدامات چند انتخابی بصری:
- انتخاب لمسی محور به کاربران امکان می دهد دامنه ای از موارد را با ژست بصری مطبوعات و کشش طولانی انتخاب کنند.
- انتخاب باند ماوس محور به کاربران امکان می دهد تا با استفاده از اقدامات سنتی باند ماوس/اقدامات لاسو ، یک بلوک از موارد را در یک لیست بازیافت انتخاب کنند.
- پشتیبانی از دستگاه های لمسی محور ، از جمله فاکتورهای لپ تاپ تلفن و لمسی و همچنین دستگاه های نشانگر محور.
- نویسنده Heif پشتیبانی از نوشتن تصاویر ثابت با فرمت HEIF را ارائه می دهد.
- کتابخانه طراحی
- ما یک موضوع برنامه جدید ،
Theme.MaterialComponents
با ویژگی های جدید و سبک های به روز شده برای قطعات معرفی کرده ایم. - ما اجزای زیر را اضافه کرده ایم:
- نوشابه
- تراشه
- گروه گروه
- ماده
- مادی
- ما یک موضوع برنامه جدید ،
- SLICES چارچوبی را برای برنامه های تعبیه شده از سایر برنامه ها فراهم می کند.
- برش دهنده ها حاوی روش هایی برای ساختن محتوا در قالب الگوی هستند.
- نمای برش شامل روش هایی برای ارائه آن محتوا است.
- اقدامات مرورگر پروتکل را برای توسعه دهندگان برنامه برای راه اندازی منوی زمینه سازگار (اما قابل تنظیم) برای URL فراهم می کند. این ویژگی به حضور یک برنامه مرورگر (مانند Chrome ، جایی که این ویژگی هنوز در دست توسعه است) بستگی دارد که پشتیبانی از اقدامات مرورگر را پیاده سازی می کند.
-
ContextCompat.getSystemService()
وgetSystemServiceName()
اجازه می دهد تا خدمات سیستم را با توجه به نوع در تمام سطوح API جستجو کنید.
رفع اشکال
- Fragment ViewModel's Oncleared No Come (شماره AOSP 74139250 )
- OnloadFinished () چندین بار در ViewPager با FragtmentPagerAdapter (شماره AOSP 74182171 ) نامیده شد
- Smootscrolltoposition LinearLayoutManager LinearLayoutManager () حرکت نامنظم (پشت و عقب) را تحت شرایط خاص نشان می دهد (شماره AOSP 71567765 )
نسخه 27.1.0 نسخه
(فوریه 2018)
تغییرات مهم
- اجرای اصلی لودرها برای استفاده از چرخه عمر بازنویسی شده است. در حالی که API بدون تغییر باقی می ماند ، تعدادی از تغییر رفتار وجود دارد:
-
initLoader()
،restartLoader()
، وdestroyLoader()
اکنون فقط می توانید در موضوع اصلی فراخوانی کنید. - بارگذاری باربری
onStartLoading()
وonStopLoading()
در حال حاضر به ترتیب با شروع و متوقف کردن قطعه قطعه قطعه قطعه () فراخوانی می شود. -
onLoadFinished()
فقط بینonStart()
وonStop
فراخوانی می شود. در نتیجه ، معاملات قطعه ای اکنون با خیال راحت می تواند درonLoadFinished()
انجام شود. - روشهای PragmentController مربوط به لودرها اکنون کاهش یافته است.
-
-
getDialog()
اکنون به جای اینکه تهی شودonDestroyView()
dismiss()
غیرقانونی خواهد بود. اکنون می توانید تعیین کنید که آیا این گفتگو با بررسی اینکه آیاgetDialog().isShowing()
onStop()
به صورت دستی رد کرده است.
API های جدید
-
ListAdapter
forRecyclerView
(همراه باAsyncListDiffer
) باعث می شود تا لیست های لیست در یک موضوع پس زمینه محاسبه کنید. اینها می تواند به شما کمک کند تا با حداقل کار در موضوع UI ، تغییرات محتوای Animate Animate را به صورت خودکار تغییر دهند. آنها ازDiffUtil
در زیر کاپوت استفاده می کنند. -
SortedList.ReplaceAll
به روزرسانی تمام داده ها را در یک طبقه بندی شده امکان پذیر می کند ، که تمام انیمیشن های مناسب را برای درج ، حذف ، تغییرات و حرکت اجرا می کند (حرکات به عنوان حذف و درج رفتار می شوند). - FragmentActivity و Fragment اکنون
ViewModelStoreOwner
پیاده سازی می کنند و هم اکنون می توان با سازندگانViewModelProvider
به عنوان جایگزینی برای استفاده ازViewModelProviders.of()
استفاده کرد. - قطعات در حال حاضر دارای
requireContext()
،requireActivity()
،requireHost()
وrequireFragmentManager()
دارند ، که یک شیءNonNull
از روش های دریافت معادل را برمی گرداند یا یکIllegalStateException
را پرتاب می کند. -
requireViewById()
، یک نسخه سازگار@NonNull
ازfindViewById()
بهWindowCompat
،ActivityCompat
وViewCompat
اضافه شده است ، که وقتی هدف پیدا نشد ، یکIllegalArgumentException
را به دست می آورد. - روش های
LoaderCallbacks
اکنون حاشیه نویسی های مناسب@Nullable
و@NonNull
را دارند. -
FileProvider
اکنون از طریق عنصر جدید<external-media-path>
getExternalMediaDirs()
در API 21 و دستگاه های بالاتر پشتیبانی می کند.
رفع اشکال
- قطعه ای که لودر را در OnCreate آغاز می کند ، چرخه حیات را در ViewPager شکسته است
- LoaderManager غیرقانونی را در OnloadFinished پرتاب می کند
- LoaderViewModel لودرهای خود را در Oncleared پاک نمی کند
- پرونده کلاس برای Android.arch.lifecycle.viewmodelstoreowner یافت نشد
- dialogfragment ondismiss بلافاصله پس از عزل () فراخوانی نشده است ()
- ایموجی های پرچم کشور هنگام استفاده
- کتابخانه ترجیحات از ویژگی هایی استفاده می کند که روی نسخه های قدیمی Android کار نمی کند
- انواع مصنوعات testlib MediaCompat به طور نادرست مستند شده اند (شماره AOSP 71559905 )
- Google Sans در TypefaceCompatutil سقوط می کند
- سازنده Arrayset را که در مجموعه می گیرد ، افشا کنید.
- UpdateApi پرونده های .ignore را که باید حفظ شوند حذف می کند
- اصلی های اضافی ایجاد شده در مرورگر
- استفاده از بازتاب را از carrecyclerview حذف کنید
- java.lang.illegalstateexception در fragmentmanagerimpl.checkstateloss
- java.lang.securityexception هنگام استفاده از android.support.v4.content.permissionchecker.checkselfpermiss
- recyclerview indexoutOfBoundSexception زیرا state.mpreviouslayoutitemcount در SetAdapter پاک نشده است (شماره AOSP 37657125 )
- قطعه ای که لودر را در OnCreate آغاز می کند ، چرخه حیات را در ViewPager شکسته است (شماره AOSP 34831613 )
- FragmentManagerImpl.execsingLeaction تصادفات
نسخه 27.0.2 نسخه
(نوامبر 2017)
رفع اشکال
-
EmojiEditTextHelper
NullPointerException
پرتاب می کند. -
IllegalStateException
: قطعه هنوز پیوست نشده است. - با ضربه زدن به هر نقطه روی صفحه ، نماد بازیگران "بازیگران" را رد نمی کند.
-
MediaMetadataCompat
BadParcelableException
را پرتاب می کند.
نسخه 27.0.1 نسخه
(نوامبر 2017)
رفع اشکال
- پس از فراخوانی
startActivityForResult()
حیات زندگی در وضعیت اشتباه قرار دارد. (شماره 65665621 ) - رنگ دکمه های معلول در سطح API قدیمی بسیار سبک است.
- پس از پیمایش کاربر ، آنها نمی توانند روی یک مورد در یک
RecyclerView
کلیک کنند. (شماره AOSP 66996774 ) - در Talkback ، کلیک بر روی گزینه های بیشتر باعث نمی شود سیستم پنجره جدید را اعلام کند یا تمرکز خود را به گزینه های جدید اضافه کند.
نسخه 27.0.0 نسخه
(اکتبر 2017)
API متفاوت است
API تغییر می کند
- حاشیه نویسی های تهی به انواع API ها اضافه شد ، از جمله موارد زیر: این می تواند باعث ایجاد خطاهای تلفیقی کوتلین شود که انواع بازده قابل برگشت به درستی انجام نشود.
-
Fragment
می تواند از نسخه های پشتیبانی کتابخانهTransition
برای انتقال قطعه ، از جمله انتقال عناصر مشترک استفاده کند. - کتابخانه صفحه بندی محتوا (
android.support.content.ContentPager
) پشتیبانی از محتوای صفحه بندی را که از طریق یکContentProvider
در معرض آن قرار دارد ، پشتیبانی می کند. استفاده از این کتابخانه به مشتری این امکان را می دهد تا از پردازش گران قیمت "مبادله پنجره مکان نما" در موضوع UI جلوگیری کند و یک کتابخانه سازگاری را برای ویژگی Android 8.0 فراهم کند. -
ViewCompat
اکنون بسته بندی هایی را برای روش های خودکار ، از جملهgetImportantForAutofill()
،isImportantForAutofill()
،setAutofillHints()
وsetImportantForAutofill()
اضافه می کند. - Leanback ویژگی های جدید و لهستانی می شود و برخی از کلاس های مستهلک شده را از دست می دهد ، مانند:
- اکنون
Picker
می تواند با استفاده از روشsetSeparators()
از جداکننده های مختلف بین هر ستون استفاده کند. -
DiffCallback
اضافه شده است تاArrayObjectAdapter
از خروجی ارائه شده توسطDiffUtil
استفاده کند. - زیرساخت ها برای پشتیبانی از بازیکنان رسانه ای با کنترل متغیر اضافه شده و کنترل های اختیاری را برای سریع جلو ، تکرار ، تغییر ، بعدی ، قبلی و عقب اضافه می کنند.
- حذف
MediaControllerGlue
، PlaybackControlGlue ،PlaybackControlSupportGlue
وPlaybackOverlayFragment
.
- اکنون
- برای آزمایش ، ابزار PollingCheck از CTS AOSP منتقل می شود. نظرسنجی می کند که یک شرط در یک پنجره Timeout اتفاق بیفتد.
- زیرساخت ها برای پشتیبانی از مجوزهای زمان اجرا در برنامه های فوری برای Android 5.0 با استفاده از
PermissionCompatDelegate
اضافه شده است. - زبانه های سفارشی قابل اعتماد اکنون به همراه امکان تعریف رابطه بین یک برنامه و URI مبدا پشتیبانی شده است.
- پشتیبانی از حالت Android Wear Ambient با استفاده از قطعه AmbientMode بدون سر ، ساده می شود ، که همچنین باعث می شود پشتیبانی از حالت محیط با استفاده از اجزای معماری سازگار باشد.
- تیم Wear به دنبال بازخورد توسعه دهنده پیرامون این تغییر قابل توجه است. برای اطلاعات بیشتر ، به یادداشت های انتشار آندروید مراجعه کنید.
- برخی از کلاسهای مستهلک شده از آنجا که از API های قدیمی V14 قدیمی دور می شویم ، مانند
android.support.v7.NotificationCompat
(به جای آن از V4NotificationCompat
استفاده کنید) ،KeyEventCompat
،ParallelExecutorCompat
وSearchViewCompat
حذف شده اند. - سایش سایش مهاجرت از ثابتهای ابرداده مانیفست هم اکنون از طریق
android.support.wear.utils.MetadataConstants
در دسترس است. - پشتیبانی از حالت محیط اکنون برای همه فعالیت ها موجود است ، نه فقط پوشیدنی بودن. برای اطلاعات بیشتر ، به مرجع
AmbientMode
مراجعه کنید. -
RoundedDrawable
اکنون از تورم XML پشتیبانی می کند.
رفع اشکال
- تصادفات برنامه با کتابخانه پشتیبانی 27 و قلم قابل بارگیری
- فونت های قابل بارگیری برای پروژه های جدید که پس از به روزرسانی SDK ایجاد شده اند کار نمی کنند
- API SpeechRecognizer در آخرین نسخه شکسته شده است
- تصادف مربوط به قطعه در هنگام قرعه کشی پس از حذف نمای انیمیشن
- پخش رسانه های پشتیبانی-لاغر-دیموس همه شکسته است
- کتابخانه پشتیبانی Android در حال اضافه کردن <TEA-DATA> به آشکار است
- fontresourcesparserCompat باید Android را درک کند: جاذبه ها
- چسب Leanback از کلید ورودی مکث پشتیبانی نمی کند
- نماد حل نشده در IDE هنگامی که چندین بسته شناسه مصنوعات مشابه را به اشتراک می گذارند.
- استثناء اشاره گر تهی در carextender
- تغییر حالت اشتباه / تکرار حالت تنظیم پخش پس از ایجاد MediaController
- پوسترهای پیش فرض خوشه کتابخانه در حالی که حرکت می کنند روی خوشه بعدی اجرا می شوند
- فوق داده کارت توصیه قطع شده است
- IllugalArgumentException در Recyclerview.attachviewtoparent ()
- ClassNotFoundException هنگام عدم استفاده از SaveDstate (شماره AOSP 37133281 )
- تمرکز در بازیافت گیر می شود
- ANR را در Leanback LayoutManager رفع کنید
نسخه 26.1.0 نسخه
(سپتامبر 2017)
این یک نسخه ویژه برای ادغام کتابخانه پشتیبانی با چرخه عمر از اجزای معماری است. اگر از کتابخانه Lifecycles استفاده نمی کنید ، نیازی به بروزرسانی از 26.0.2 ندارید. برای اطلاعات بیشتر ، به یادداشت های انتشار اجزای معماری مراجعه کنید.
تغییرات مهم
-
Fragment
وFragmentActivity
(کلاس پایه برایAppCompatActivity
) اکنون رابطLifecycleOwner
از اجزای معماری پیاده سازی می کند.
نسخه 26.0.2 نسخه
(اوت 2017)
رفع اشکال
- نمادهای منو در کتابخانه پشتیبانی 26.0.0 مسطح می شوند
-
GuidedAction.multilineDescription
به درستی با Leanback کار نمی کند
نسخه 26.0.1 نسخه
(اوت 2017)
رفع اشکال
- Fontcompat 26.0.0 تصادف در دستگاه های O-MR1
- 26.0.0 کتابخانه پشتیبانی طراحی نباید شامل پشتیبانی Multidex باشد (شماره 63999442 ))
- AppBarlayout اکنون از 26.0.0 300px بالشتک سمت چپ دارد
- ناوبری PlaybackTransportControl خراب است
- fragment.oncreateview مدتی قبل از اتمام onCreate خوانده می شود
- Android.os.badparcelableException: ClassNotFoundException هنگام عدم وجود: android.support.v4.media.MediametAdatacompat
نسخه 26.0.0 نسخه
(ژوئیه 2017)
نکته مهم: کتابخانه های پشتیبانی اکنون از طریق مخزن Maven Google در دسترس هستند. نیازی به بارگیری مخزن پشتیبانی از مدیر SDK نیست. برای اطلاعات بیشتر ، به تنظیم کتابخانه پشتیبانی مراجعه کنید.
تغییرات مهم
- حداقل نسخه SDK به 14 افزایش یافته است. در نتیجه ، بسیاری از API ها که فقط برای سازگاری با سطح API قبل از 14 وجود داشته اند ، کاهش یافته است. مشتریان این API ها باید همانطور که در صفحه مرجع برای هر API مستهلک شده ذکر شده است ، به معادل چارچوب خود مهاجرت کنند.
- کتابخانه UI Wear شامل کلاس هایی است که به شما در اجرای الگوهای و چیدمان هایی که روی دستگاه های Wear کار می کنند ، کمک می کند. برای اطلاعات بیشتر ، به استفاده از کتابخانه Wear UI مراجعه کنید.
- ماژول پشتیبانی درصد کاهش یافته است. مشتریان این ماژول باید به ویجت جدید
ConstraintLayout
، که به عنوان یک مصنوعات جداگانه در SDK Manager ارائه شده است ، مهاجرت کنند. -
android.support.v7.app.NotificationCompat
و کلاسهای حاوی آن کاهش یافته و در نسخه بعدی حذف می شوند:- به جای
v7.app.NotificationCompat.Builder
ازNotificationCompat.Builder
استفاده کنید. عملکردی که قبلاً به استفاده از V7 AppCompat Builder اعتماد داشت ، اکنون در سازنده سازگار V4 قرار گرفته است. -
DecoratedCustomViewStyle
به بستهandroid.support.v4.app
منتقل شده است. -
MediaStyle
وDecoratedMediaCustomViewStyle
اکنون بخشی از کتابخانه رسانه های رسانه ای هستند و را می توان در بسته Android.support.v4.media.app یافت.
- به جای
API های جدید
- پرچم جدید
fastScrollEnabled
برایRecyclerView
. در صورت فعال بودن ،fastScrollHorizontalThumbDrawable
،fastScrollHorizontalTrackDrawable
،fastScrollVerticalThumbDrawable
وfastScrollVerticalTrackDrawable
قابل تنظیم است.
API متفاوت است
رفع اشکال
- حلقه نامتناهی در recyclerview.tostring ()
- ResourcEnotFoundException اجرای پروژه Kotlin در API 16 AVD پس از به روزرسانی به قناری 6
- java.lang.assertionerror در نمای طراحی با کتابخانه پشتیبانی 26.0.0-beta2
- پیش نمایش چیدمان استودیوی Android برای پشتیبانی از ابزارک های کتابخانه
- preference.SetsingLelinetItle () اگر اولویت با ویژگی ها ایجاد نشده باشد نادیده گرفته می شود
- DAC "از آنجا" حاشیه نویسی برای 25.3.0 / 25.4.0 تجدید نظر در کتابخانه پشتیبانی اشتباه است
- ResourcEscompat.getFont () استثنا را پرتاب می کند
- عنوان نوار ابزار نه با قلم جسورانه
- اندازه گیری خودکار با MaxLines نتایج غیر منتظره ای به همراه دارد
- NullPointerException در TextView.CheckforreLayout ()
- AppCompattextViewAutosizeHelper.SetrawTextSize () تماس درخواست layout () در طول طرح
- emojiappcompattextView خراب می شود
- Autosize TextView هنگام تغییر متن به طور خودکار تنظیم نمی شود
- فساد صفحه در Instacart
- عدم پشتیبانی از کار در menuitemcompat
- NotificationCompat اقدامات را در API 24 یا بالاتر به طور کامل استخراج نمی کند
- مشکلات لنگرگاه هماهنگ کننده در به روزرسانی های طرح