سازگاری برنامه در اندروید، سازگاری برنامه در اندروید، سازگاری برنامه در اندروید
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
برای اندروید، اصطلاح سازگاری برنامه به این معنی است که برنامه شما به درستی روی یک نسخه خاص از پلتفرم، معمولا آخرین نسخه، اجرا می شود. با هر نسخه، تغییرات جامعی ایجاد می کنیم که حریم خصوصی و امنیت را بهبود می بخشد، و تغییراتی را اعمال می کنیم که تجربه کلی کاربر را در سراسر سیستم عامل تغییر می دهد. گاهی اوقات این تغییرات میتواند بر برنامههای شما تأثیر بگذارد، بنابراین مهم است که به تغییرات رفتاری که در هر نسخه منتشر شده است نگاهی بیندازید، آنها را آزمایش کنید و بهروزرسانیهای سازگاری را برای کاربران خود منتشر کنید.
چرا سازگاری برنامه مهم است
سازگاری برنامه بلافاصله پس از بهروزرسانی بر روی کاربران شما تأثیر میگذارد، خواه دستگاه جدیدی خریداری کرده باشند یا یک بهروزرسانی را روی دستگاه فعلی خود نصب کرده باشند. آنها برای کشف آخرین نسخه اندروید هیجان زده هستند و می خواهند آن را با برنامه های مورد علاقه خود تجربه کنند. اگر برنامههای آنها به درستی کار نکنند، میتواند مشکلات بزرگی را هم برای آنها و هم برای شما ایجاد کند.
انواع تغییرات رفتار پلت فرم
برنامه شما میتواند تحت تأثیر دو نوع تغییر مختلف هنگام اجرا در نسخه پلتفرم جدید قرار گیرد:
تغییرات برای همه برنامه ها
این تغییرات بر همه برنامههایی که در آن نسخه اندروید اجرا میشوند، بدون توجه به targetSdkVersion
برنامه، تأثیر میگذارد.
باید سازگاری برنامه خود را با این تغییرات به طور فعال در طول پیشنمایش توسعهدهنده و نسخههای بتا هر نسخه جدید اندروید آزمایش کنید. بهروزرسانیهای Pixel و سایر دستگاهها به محض انتشار نهایی نسخه جدید Android برای پروژه منبع باز Android (AOSP) شروع میشود، بنابراین وقتی این تغییرات را بهطور فعال آزمایش میکنید، اطمینان حاصل میکنید که کاربرانتان میتوانند بدون مشکل به آخرین نسخه Android در این دستگاهها منتقل شوند.
تغییرات هدفمند
این تغییرات فقط بر برنامههایی تأثیر میگذارد که آن نسخه اندروید را هدف قرار میدهند.
برای این تغییرات، هنگام آماده شدن برای هدف قرار دادن آخرین نسخه پایدار API ، که Android 16 (سطح API 36) است، باید تست سازگاری را انجام دهید. حتی اگر قصد ندارید فوراً نسخه جدید اندروید را هدف قرار دهید، رسیدگی به این تغییرات میتواند به توسعه قابل توجهی نیاز داشته باشد. شما باید هرچه زودتر درباره این تغییرات اطلاعات کسب کنید - به طور ایده آل در طول پیش نمایش توسعه دهنده و نسخه های بتا هر نسخه جدید اندروید - بنابراین می توانید آزمایش اولیه را انجام دهید و بازخورد ارائه دهید.
ابزارهای چارچوب سازگاری
برای کمک به شما برای تست سازگاری، ما تا حد امکان تغییرات قطعی را در هر نسخه در چارچوب سازگاری اضافه می کنیم. شامل تغییر در چارچوب سازگاری آن را قابل تغییر می کند و به شما امکان می دهد تغییرات را به صورت جداگانه از گزینه های توسعه دهنده یا ADB فعال یا غیرفعال کنید. هنگام استفاده از چارچوب سازگاری، نیازی به تغییر targetSdkVersion
برنامه یا کامپایل مجدد برنامه خود برای آزمایش اولیه ندارید.
برای کسب اطلاعات بیشتر، به آزمایش و اشکالزدایی تغییرات رفتار پلت فرم در برنامه خود مراجعه کنید.
محدودیت در رابط های غیر SDK
به عنوان بخشی از تلاش مداوم خود برای دور کردن تدریجی توسعه دهندگان از API های غیر SDK، لیست های رابط های غیر SDK محدود را در هر نسخه اندروید به روز می کنیم. مثل همیشه، بازخورد و درخواست شما برای معادل های API عمومی پذیرفته می شود.
درباره آخرین نسخه های اندروید بیشتر بدانید:
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-08-21 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-08-21 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# App compatibility in Android\n\nFor Android, the term *app compatibility* means that your app runs properly on a\nspecific version of the platform, typically the latest version. With each\nrelease, we make integral changes that improve privacy and security, and we\nimplement changes that evolve the overall user experience across the OS.\nSometimes these changes can affect your apps, so it's important to take a look\nat the behavior changes that are included in each released version, test against\nthem, and publish compatibility updates for your users.\n\nWhy app compatibility is important\n----------------------------------\n\nApp compatibility starts to affect your users immediately when they update to\nthe latest version of Android, whether they've purchased a new device or\ninstalled an update on their current device. They're excited to explore the\nlatest version of Android, and they want to experience it with their favorite\napps. If their apps don't work properly, it can cause major issues both for them\nand for you.\n\nTypes of platform behavior changes\n----------------------------------\n\nYour app can be affected by two different types of changes when running on a new\nplatform version:\n\n### Changes for all apps\n\nThese changes affect all apps that run on that version of Android, regardless of\nan app's `targetSdkVersion`.\n\nYou should test your app's compatibility with these changes proactively during\nthe developer preview and beta releases of each new Android version. Updates to\nPixel and other devices start as soon as a new Android version reaches its final\nrelease to [Android Open Source Project (AOSP)](https://source.android.com/), so when you test proactively\nfor these changes, you help ensure that your users can seamlessly transition to\nthe latest Android version on these devices.\n\n### Targeted changes\n\nThese changes only affect apps that are targeting that version of Android.\n\nFor these changes, you should perform compatibility testing as you prepare to\n[target the latest stable API version](/distribute/best-practices/develop/target-sdk), which is\nAndroid 16 (API level 36). Even if you aren't planning to target a new\nAndroid version immediately, addressing these changes can require a significant\namount of development. You should learn about these changes as early as\npossible---ideally during the developer preview and beta releases of each new\nAndroid version---so you can do preliminary testing and provide feedback.\n\nCompatibility framework tools\n-----------------------------\n\nTo help you test for compatibility, we include as many of the breaking changes\nas possible each release in the compatibility framework. Including a change in\nthe compatibility framework makes it toggleable, letting you force-enable or\ndisable the changes individually from developer options or ADB. When using the\ncompatibility framework, you don't need to change your app's `targetSdkVersion`\nor recompile your app for basic testing.\n\nTo learn more, see [Test and debug platform behavior changes in your app](/guide/app-compatibility/test-debug).\n\nRestrictions on non-SDK interfaces\n----------------------------------\n\nAs part of our ongoing effort to gradually move developers away from non-SDK\nAPIs, we update the [lists of restricted non-SDK interfaces](/guide/app-compatibility/restrictions-non-sdk-interfaces) in each Android\nrelease. As always, your feedback and [requests for public API equivalents](/guide/app-compatibility/restrictions-non-sdk-interfaces#feature-request)\nare welcome.\n\nPlatform releases\n-----------------\n\nLearn more about the latest Android releases:\n\n- [Android 15 (API level 35)](/about/versions/15)\n- [Android 14 (API level 34)](/about/versions/14)\n- [Android 13 (API level 33)](/about/versions/13)\n- [Android 12 (API levels 31, 32)](/about/versions/12)\n- [Android 11 (API level 30)](/about/versions/11)"]]