توجه: با انتشار «کتابخانه پشتیبانی» نسخه ۲۸.۰.۰، کتابخانههای android.support-بستهبندیشده
منسوخ شدهاند و با کتابخانههای Jetpack
با نسخههای جداگانه که بهصورت androidx بستهبندی شدهاند جایگزین شدهاند. اولین نسخه ۱.۰.۰
کتابخانههای Jetpack با «کتابخانه پشتیبانی» نسخه ۲۸.۰.۰ برابری میکند و نقطه شروعی برای انتقال به androidx
بستهبندی جدید فراهم میکند.
کتابخانههای بستهبندیشده android.support موجود همچنان کار خواهند کرد؛ بااینحال،
پساز نسخه ۲۸.۰.۰ هیچ بهروزرسانیای دریافت نخواهند کرد و با کتابخانههای جدید Jetpack سازگار نخواهند بود.
آرتیفکتهای قدیمی (آنهایی که نسخه ۲۷ و قدیمیتر دارند و بهصورت android.support بستهبندی شدهاند)
در Google Maven دردسترس خواهند ماند. همه آرتیفکتهای جدید بهصورت androidx بستهبندی خواهند شد
و به انتقال از android.support
به androidx نیاز خواهند داشت.
توصیه میکنیم از کتابخانههای androidx در همه پروژههای جدید استفاده کنید. همچنین باید
انتقال پروژههای موجود را درنظر بگیرید تا مطمئن شوید
همچنان رفع اشکالها و بهبودهای دیگر کتابخانه را دریافت میکنند.
«کتابخانه پشتیبانی Android» شامل چندین بسته کتابخانه است که میتوانند در برنامه شما گنجانده شوند. هریک از این کتابخانهها از محدوده خاصی از نسخههای پلاتفرم Android و مجموعه ویژگیها پشتیبانی میکند.
برای استفاده از هریک از کتابخانههای زیر، باید فایلهای کتابخانه را در نصب «کیت توسعه نرمافزار Android» بارگیری کنید. برای تکمیل این مرحله، دستورالعملهای مربوط به بارگیری «کتابخانههای پشتیبانی» در راهاندازی کتابخانه پشتیبانی را دنبال کنید. برای افزودن «کتابخانه پشتیبانی» خاص به برنامه خود باید مراحل بیشتری را انجام دهید. برای اطلاعات مهم درباره نحوه گنجاندن کتابخانه در برنامهتان، انتهای هر بخش کتابخانه را در زیر ببینید.
توجه: حداقل نسخه کیت توسعه نرمافزار برای همه بستههای کتابخانه پشتیبانی حداقل سطح میانای برنامه کاربردی ۱۴ است. برخیاز بستهها به سطح API بالاتری نیاز دارند، همانطور که در زیر ذکر شده است.
کتابخانههای پشتیبانی v4
این کتابخانهها در مقایسه با کتابخانههای دیگر، بزرگترین مجموعه میاناهای برنامهسازی کاربردی را دارند، ازجمله پشتیبانی از عناصر برنامه، ویژگیهای رابط کاربری، دسترسپذیری، مدیریت داده، اتصالپذیری شبکه، و برنامهنویسی ابزارهای کمکی.
برای اطلاعات کامل و دقیق درباره کلاسها و روشهای ارائهشده توسط
کتابخانههای پشتیبانی v4، به بسته android.support.v4 در مرجع API مراجعه کنید.
توجه: قبلاز بازبینی «کتابخانه پشتیبانی» نسخه ۲۴.۲.۰،
یک کتابخانه پشتیبانی v4 وجود داشت. آن کتابخانه برای بهبود کارایی به چند واحد تقسیم شد. برای سازگاری با نسخههای قبلی، اگر
support-v4 را در نوشتار Gradle خود فهرست کنید، برنامهتان همه
واحدهای v4 را دربر خواهد گرفت. بااینحال، برای کاهش اندازه برنامه، توصیه میکنیم فقط
واحدهای خاصی را که برنامهتان نیاز دارد فهرست کنید.
کتابخانه سازگار با v4
برای تعدادی از میاناهای برنامهسازی کاربردی چارچوب، مانند
Context.obtainDrawable() و
View.performAccessibilityAction()، بستهبندیهای سازگاری ارائه میدهد.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-compat:28.0.0
کتابخانه v4 core-utils
تعدادی کلاس سودمند مانند AsyncTaskLoader و PermissionChecker ارائه میدهد.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-core-utils:28.0.0
کتابخانه میانای کاربر اصلی v4
انواع مختلفی از عناصر مربوط به واسط کاربر را پیادهسازی میکند، مثل ViewPager، NestedScrollView، و ExploreByTouchHelper.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-core-ui:28.0.0
کتابخانه سازگار با رسانه v4
بخشهایی از چارچوب رسانه،
ازجمله MediaBrowser و MediaSession را به نسخههای قبلی برمیگرداند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-media-compat:28.0.0
کتابخانه بخش v4
با قطعهها، از کپسوله کردن میانای کاربر و عملکرد پشتیبانی میکند و به برنامهها امکان میدهد چیدمانهایی ارائه دهند که بین دستگاههای کوچک و بزرگصفحه تنظیم میشود. این واحد به سازگار، ابزارهای اصلی، واسط کاربر اصلی، و سازگاری رسانه وابسته است.
توجه: کتابخانه پشتیبانی v13
کلاس FragmentCompat را ارائه میدهد. کلاس v4
Fragment کلاسی مستقل است که
اصلاحات اشکال را که در نسخههای بعدی پلاتفرم اضافه شدهاند ارائه میدهد، درحالیکه کلاس
v13 FragmentCompat
لایه سازگاری برای پیادهسازی چارچوب کلاس
Fragment را ارائه میدهد.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-fragment:28.0.0
کتابخانه پشتیبانی Multidex
این کتابخانه از ساختن برنامههایی با چندین فایل اجرایی Dalvik (DEX) پشتیبانی میکند. برنامههایی که به بیشاز ۶۵۵۳۶ روش ارجاع میدهند باید از پیکربندیهای multidex استفاده کنند. برای اطلاعات بیشتر درباره استفاده از multidex، به ساختن برنامهها با بیشاز ۶۴ هزار روش مراجعه کنید.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:multidex:1.0.0
کتابخانههای پشتیبانی v7
این کتابخانهها مجموعههای ویژگی خاصی را ارائه میدهند و میتوانند بهطور مستقل از یکدیگر در برنامه شما گنجانده شوند.
کتابخانه v7 appcompat بخشی از Android Jetpack است.
توجه:کتابخانه appcompat به کتابخانه AndroidX که یکی از اجزای Android Jetpack است منتقل شده است. آن را در برنامه نمایشی Sunflower درحال استفاده ببینید.
این کتابخانه از واسط کاربر نوار کنش الگوی طراحی پشتیبانی میکند. این کتابخانه شامل پشتیبانی از پیادهسازیهای رابط کاربری طراحی مواد است.
توجه: این کتابخانه به «کتابخانه پشتیبانی v4» بستگی دارد.
در اینجا چند کلاس کلیدی که در کتابخانه v7 appcompat گنجانده شده است آورده شده است:
-
ActionBar- پیادهسازی نوار کنش الگوی واسط کاربر را ارائه میدهد. برای اطلاعات بیشتر درباره استفاده از «نوار کنش»، راهنمای توسعهدهنده نوار کنش را ببینید. AppCompatActivity- کلاس فعالیت برنامهای را اضافه میکند که میتواند بهعنوان کلاس پایه برای فعالیتهایی که از پیادهسازی نوار کنش «کتابخانه پشتیبانی» استفاده میکنند استفاده شود.AppCompatDialog- کلاس گفتگویی را اضافه میکند که میتواند بهعنوان کلاس پایه برای گفتگوهای موضوعی AppCompat استفاده شود.ShareActionProvider- از کنش همرسانی استاندارد (مثل ایمیل یا پست کردن در برنامههای اجتماعی) که میتواند در نوار کنش قرار گیرد پشتیبانی میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:appcompat-v7:28.0.0
کتابخانه v7 cardview
این کتابخانه از CardView
ابزارک پشتیبانی میکند، که به شما امکان میدهد اطلاعات را در کارتهایی که ظاهر یکسانی در
همه برنامهها دارند نمایش دهید. این کارتها برای پیادهسازیهای طراحی
مواد مفید هستند و بهطور گسترده در چیدمانهای برنامههای تلویزیون استفاده میشوند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:cardview-v7:28.0.0
کتابخانه v7 gridlayout
پساز بارگیری «کتابخانههای پشتیبانی Android»، این کتابخانه از کلاس
GridLayout پشتیبانی میکند، که
به شما امکان میدهد عناصر میانای کاربر را بااستفاده از جدولی از سلولهای مستطیلی مرتب کنید.
برای اطلاعات دقیق درباره میاناهای برنامهسازی کاربردی کتابخانه v7 gridlayout،
بسته android.support.v7.widget را در مرجع میانای برنامهسازی کاربردی ببینید.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:gridlayout-v7:28.0.0
کتابخانه v7 mediarouter
این کتابخانه MediaRouter، MediaRouteProvider، و کلاسهای رسانهای مرتبطی را ارائه میدهد که از Google Cast پشتیبانی میکنند.
بهطورکلی، میاناهای برنامهسازی کاربردی در کتابخانه v7 mediarouter روشی برای کنترل مسیریابی کانالها و جاریسازیهای رسانه از دستگاه فعلی به صفحههای نمایش خارجی، بلندگوها، و دیگر دستگاههای مقصد ارائه میدهند. این کتابخانه شامل
واسطهای برنامهسازی کاربردی برای انتشار ارائهدهندگان مسیر رسانه مختص برنامه، برای کاوش و
انتخاب دستگاههای مقصد، برای بررسی وضعیت رسانه، و غیره است. برای اطلاعات دقیق درباره میاناهای برنامهسازی کاربردی کتابخانه mediarouter v7، بسته android.support.v7.media را در مرجع میانای برنامهسازی کاربردی ببینید.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:mediarouter-v7:28.0.0
میاناهای برنامهسازی کاربردی کتابخانه v7 mediarouter که در Support Library r18 معرفی شدهاند در نسخههای بعدی Support Library ممکن است تغییر کنند. درحالحاضر، توصیه میکنیم از کتابخانه فقط درارتباط با Google Cast استفاده کنید.
کتابخانه پالت v7
کتابخانه پشتیبانی پالت v7 شامل کلاس
Palette است که به شما امکان میدهد
رنگهای برجسته را از تصویر استخراج کنید. برای مثال، یک برنامه موسیقی میتواند از
شیء Palette برای استخراج رنگهای اصلی
از جلد آلبوم استفاده کند و از این رنگها برای ساختن کارت عنوان آهنگ با رنگهای هماهنگ استفاده کند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:palette-v7:28.0.0
کتابخانه v7 recyclerview
کتابخانه recyclerview کلاس RecyclerView
را اضافه میکند. این کلاس از ابزارک
RecyclerView
پشتیبانی میکند، نمایشی برای نمایش کارآمد مجموعههای داده بزرگ با ارائه
پنجرهای محدود از عناصر داده.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:recyclerview-v7:28.0.0
کتابخانه پشتیبانی اولویت v7
بسته
preference
میاناهای برنامهسازی کاربردی را برای پشتیبانی از افزودن اشیای اولویت، مثل
CheckBoxPreference و
ListPreference، برای
کاربران فراهم میکند تا تنظیمات میانای کاربر را تغییر دهند.
کتابخانه «اولویت v7» از میانههایی مثل
Preference.OnPreferenceChangeListener و
Preference.OnPreferenceClickListener و کلاسهایی مثل
CheckBoxPreference و
ListPreference پشتیبانی میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:preference-v7:28.0.0
کتابخانه پشتیبانی v8
این کتابخانه مجموعههای ویژگی خاصی را ارائه میدهد و میتواند بهطور مستقل از کتابخانههای دیگر در برنامه شما گنجانده شود.
کتابخانه v8 renderscript
این کتابخانه از چارچوب
محاسباتی RenderScript پشتیبانی میکند. این «میاناهای برنامهسازی کاربردی» در بسته android.support.v8.renderscript قرار دارند. باید بدانید که مراحل افزودن این «میاناهای برنامهسازی کاربردی» به برنامهتان بسیار متفاوت از دیگر «میاناهای برنامهسازی کاربردی» کتابخانه پشتیبانی است. برای اطلاعات بیشتر درباره استفاده از این
میاناهای برنامهسازی کاربردی در
برنامهتان، به
راهنمای توسعهدهنده RenderScript
مراجعه کنید.
توجه: استفاده از RenderScript با کتابخانه پشتیبانی در Android
Studio و ساختهای مبتنی بر Gradle پشتیبانی میشود. کتابخانه
renderscript در پوشه build-tools/$VERSION/renderscript/ قرار دارد.
مثال زیر ویژگیهای دستور ساخت Gradle را برای این کتابخانه نشان میدهد:
defaultConfig { renderscriptTargetApi 18 renderscriptSupportModeEnabled true }
کتابخانه پشتیبانی v13
این کتابخانه از الگوی واسط کاربر Fragment با کلاس (FragmentCompat) و کلاسهای پشتیبانی از قطعه اضافی پشتیبانی میکند. برای اطلاعات بیشتر درباره قطعهها، به راهنمای توسعهدهنده
قطعهها مراجعه کنید. برای اطلاعات دقیق درباره
میاناهای برنامهسازی کاربردی «کتابخانه پشتیبانی» نسخه ۱۳، بسته android.support.v13 را در مرجع میانای برنامهسازی کاربردی ببینید.
توجه: کتابخانه قطعه v4
کلاس Fragment را ارائه میدهد. کلاس v4
Fragment کلاسی مستقل است که
اصلاحات اشکال را که در نسخههای بعدی پلاتفرم اضافه شدهاند ارائه میدهد، درحالیکه کلاس
v13 FragmentCompat
لایه سازگاری برای پیادهسازی چارچوب کلاس
Fragment را ارائه میدهد.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-v13:28.0.0
کتابخانه پشتیبانی اولویت v14
بسته android.support.v14.preference میاناهای برنامهسازی کاربردی برای افزودن پشتیبانی
برای واسطهای ترجیح مثل
PreferenceFragment.OnPreferenceStartFragmentCallback
و
PreferenceFragment.OnPreferenceStartScreenCallback،
بههمراه کلاسهایی مثل
MultiSelectListPreference و
PreferenceFragment ارائه میدهد. برای اطلاعات دقیق درباره
میاناهای برنامهسازی کاربردی «کتابخانه پشتیبانی اولویت نسخه ۱۴»،
بسته اولویت
را در مرجع میانای برنامهسازی کاربردی ببینید.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:preference-v14:28.0.0
کتابخانه پشتیبانی اولویت v17 برای تلویزیون
بسته android.support.v17.preference میاناهای برنامهسازی کاربردی برای ارائه واسطهای ترجیح در دستگاههای تلویزیون، ازجمله پشتیبانی از واسط و کلاسهای LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener، مانند BaseLeanbackPreferenceFragment و LeanbackPreferenceFragment ارائه میدهد. برای اطلاعات دقیق درباره
میاناهای برنامهسازی کاربردی «کتابخانه پشتیبانی اولویت نسخه ۱۷»،
بسته اولویت
را در مرجع میانای برنامهسازی کاربردی ببینید.
این بسته به سطح میانای برنامهسازی کاربردی ۱۷ یا بالاتر نیاز دارد. شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:preference-leanback-v17:28.0.0
کتابخانه Leanback نسخه ۱۷
بسته android.support.v17.leanback میاناهای برنامهسازی کاربردی برای پشتیبانی از
ساختن میاناهای کاربر
در دستگاههای تلویزیون ارائه میدهد. این کتابخانه تعدادی ابزارک مهم برای برنامههای تلویزیون ارائه میدهد. برخیاز کلاسهای قابلتوجه عبارتاند از:
BrowseFragment- تکهای برای ایجاد چیدمان اصلی برای مرور دستهها و ردیفهای رسانه موارد.-
DetailsFragment- یک قطعه پوشش برای صفحههای جزئیات Leanback. PlaybackOverlayFragment- زیرکلاسی ازDetailsFragmentبرای نمایش کنترلهای بازپخش و محتوای مرتبط.SearchFragment- بخشی برای مدیریت جستجوها. این تکهکد درخواست جستجوی کاربر را دریافت میکند و آن را بهSearchResultProviderارائهشده توسط برنامه ارسال میکند.SearchResultProviderنتایج جستجو را بهSearchFragmentبرمیگرداند، که آنها را بهRowsFragmentتبدیل میکند.
این بسته به سطح میانای برنامهسازی کاربردی ۱۷ یا بالاتر نیاز دارد. شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:leanback-v17:28.0.0
کتابخانه ترسیمی بُرداری
از گرافیک برداری ثابت پشتیبانی میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-vector-drawable:28.0.0
کتابخانه ترسیمی بُرداری پویانماییشده
از گرافیک برداری پویانماییشده پشتیبانی میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:animated-vector-drawable:28.0.0
کتابخانه پشتیبانی گزارمانها
بسته گزارمان واسطهای برنامهسازی کاربردی برای پشتیبانی از افزودن فراداده گزارمان به برنامههایتان ارائه میدهد.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:support-annotations:28.0.0
کتابخانه پشتیبانی طراحی
بسته طراحی میاناهای برنامهسازی کاربردی را برای پشتیبانی از افزودن مؤلفهها و الگوهای طراحی مواد به برنامههایتان ارائه میدهد.
کتابخانه «پشتیبانی از طراحی» از عناصر و الگوهای مختلف طراحی مواد برای توسعهدهندگان برنامه پشتیبانی میکند تا بتوانند از آنها استفاده کنند، ازجمله کشوهای پیمایش، دکمههای کنش شناور (FAB)، نوار اسنک، و برگهها.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:design:28.0.0
کتابخانه پشتیبانی برگههای سفارشی
بسته برگههای سفارشی میاناهای برنامهسازی کاربردی را برای پشتیبانی از افزودن و مدیریت برگههای سفارشی در برنامههایتان ارائه میدهد.
کتابخانه «پشتیبانی از برگههای سفارشی» از کلاسهای مختلفی، مانند خدمات برگههای سفارشی و بازخوان برگههای سفارشی، پشتیبانی میکند.
این بسته به سطح میانای برنامهسازی کاربردی ۱۵ یا بالاتر نیاز دارد. شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:customtabs:28.0.0
کتابخانه پشتیبانی درصد
بسته درصد میاناهای برنامهسازی کاربردی را برای پشتیبانی از افزودن و مدیریت ابعاد مبتنی بر درصد در برنامهتان ارائه میدهد.
توجه: از نسخه ۲۶.۰.۰، کتابخانه «پشتیبانی درصد» منسوخ شده است.
کاربران این واحد باید به ابزارک جدید ConstraintLayout
انتقال دهند که بهعنوان یک آرتیفکت جداگانه در «مدیر کیت توسعه نرمافزار» ارائه میشود.
کتابخانه «پشتیبانی درصد» از رابط PercentLayoutHelper.PercentLayoutParams و کلاسهای مختلف، مثل PercentFrameLayout و PercentRelativeLayout پشتیبانی میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:percent:28.0.0
کتابخانه پشتیبانی ExifInterface
برچسبهای Exif اطلاعاتی مانند جهت، تاریخ و زمان، اطلاعات دوربین، و مکان را مستقیماً در فایل JPEG یا RAW ذخیره میکنند. کلاس ExifInterface
پشتیبانی از خواندن اطلاعات Exif از فایلهای با قالب JPEG
و raw (DNG، CR2، NEF، NRW، ARW، RW2، ORF، PEF، SRW، و RAF) را
ازهم جدا میکند و اطلاعات Exif را روی فایلهای تصویری JPEG تنظیم میکند.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:exifinterface:28.0.0
کتابخانه پشتیبانی توصیه برنامه برای تلویزیون
بسته توصیه برنامه واسطهای برنامهسازی کاربردی را برای پشتیبانی از افزودن توصیههای محتوا در برنامه درحال اجرا در دستگاههای تلویزیون ارائه میدهد.
«کتابخانه برنامه» از گزارمانهایی مانند ContentRecommendation.ContentMaturity و کلاسهای مختلفی مانند ContentRecommendation و RecommendationExtender پشتیبانی میکند.
این بسته به سطح میانای برنامهسازی کاربردی ۲۱ یا بالاتر نیاز دارد. شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:recommendation:28.0.0
کتابخانه میانای کاربر Wear
این کتابخانه دارای «میاناهای برنامهسازی کاربردی» برای ساختن میاناهای کاربر برای برنامههای Wear است. میاناهای برنامهسازی کاربردی موجود در بسته android.support.wear.widget جایگزین میاناهای برنامهسازی کاربردی مربوطه در «کتابخانه پشتیبانی از دستگاههای پوشیدنی» میشوند.
برای اطلاعات بیشتر، استفاده از «کتابخانه واسط کاربر Wear» را ببینید.
شناسه وابستگی اسکریپت ساخت Gradle برای این کتابخانه بهصورت زیر است:
com.android.support:wear:28.0.0