این صفحه هر تغییر رفتار تأثیرگذار برنامه را که به چارچوب سازگاری در Android 11 اضافه شده است (سطح API 30) توضیح میدهد. از این لیست همراه با گزینههای توسعهدهنده و دستورات ADB برای آزمایش و اشکالزدایی برنامه خود هنگام آماده شدن برای هدف قرار دادن اندروید 11 استفاده کنید.
ADD_CONTENT_OBSERVER_FLAGS
شناسه تغییر : 150939131
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، یک API عمومی جدید اضافه بار onChange(boolean, Uri, int)
وجود دارد که شامل یک آرگومان flags
عدد صحیح است.
این روش جدید یک جایگزین SDK عمومی برای برنامههایی است که از روش overloaded onChange()
غیر SDK استفاده میکنند که شامل یک آرگومان userId
عدد صحیح است.
ADMIN_APP_PASSWORD_COMPLEXITY
شناسه تغییر : 123562444
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههای سرپرستی که Android 11 را هدف قرار میدهند، هر زمان که برنامهای گذرواژهای را تعیین میکند که به کیفیت گذرواژه اختصاصدادهشده در حال حاضر مرتبط نیست، خطایی ایجاد کنید. به عنوان مثال، وقتی کیفیت رمز عبور روی DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
تنظیم می شود، برنامه نمی تواند حداقل طول گذرواژه را تنظیم کند. در این حالت، قبل از تلاش برای تعیین حداقل طول رمز عبور، برنامه ابتدا باید متد setPasswordQuality()
و تنها سپس متد setPasswordMinimumLength()
فراخوانی کند.
علاوه بر این، هنگامی که یک برنامه مدیریتی که اندروید 11 را هدف قرار می دهد، کیفیت رمز عبور را کاهش می دهد، هر مورد نیاز رمز عبور موجود که دیگر اعمال نمی شود به مقادیر پیش فرض خود بازنشانی می شود.
APP_DATA_DIRECTORY_ISOLATION
شناسه تغییر : 143937733
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که Android 11 را هدف قرار میدهند، دیگر نمیتوانند به فایلها در فهرست راهنمای دادههای خصوصی هر برنامه دسترسی داشته باشند، صرفنظر از نسخه SDK هدف برنامه دیگر.
برای کسب اطلاعات بیشتر، دسترسی به فهرست های خصوصی را ببینید.
APN_READING_PERMISSION_CHANGE_ID
شناسه تغییر : 124107808
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، دسترسی به پایگاه داده APN اکنون به مجوز Manifest.permission.WRITE_APN_SETTINGS
نیاز دارد.
برای کسب اطلاعات بیشتر در مورد این تغییر، دسترسی خواندن محدود به پایگاه داده APN را ببینید.
BACKGROUND_RATIONALE_CHANGE_ID
شناسه تغییر : 147316723
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون برنامهها باید هر بار که درخواست دسترسی به موقعیت مکانی دستگاه در پسزمینه را دارند، دلیل معتبری ارائه دهند.
برای کسب اطلاعات بیشتر در مورد این تغییر، راهنمای نحوه دسترسی به موقعیت مکانی پسزمینه در اندروید 11 را ببینید که تغییرات حریم خصوصی مربوط به مکان در اندروید 11 را مورد بحث قرار میدهد.
CALLBACK_ON_CLEAR_CHANGE
شناسه تغییر : 119147584
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
هر زمان که Editor.clear
فراخوانی شود، اکنون با یک کلید null
به OnSharedPreferenceChangeListener.onSharedPreferenceChanged
پاسخ تماس داده می شود.
برای کسب اطلاعات بیشتر درباره این تغییر، به تغییرات Callback برای OnSharedPreferenceChangeListener مراجعه کنید.
CALLBACK_ON_MORE_ERROR_CODE_CHANGE
شناسه تغییر : 130595455
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون کدهای خطا برای updateAvailableNetworks(List, Executor, Consumer)
و setPreferredOpportunisticDataSubscription(int, boolean, Executor, Consumer)
گسترش مییابند.
CALL_BACK_ON_CHANGED_LISTENER_WITH_SWITCHED_OP_CHANGE
شناسه تغییر : 148180766
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
این یک تغییر رفتار ظریف به startWatchingMode(String, String, AppOpsManager.OnOpChangedListener)
. قبل از این تغییر، سیستم برای عملیات سوئیچ شده دوباره فراخوانی کرد. پس از تغییر، سیستم برای عملیات درخواستی واقعی یا تمام عملیات سوئیچ شده در صورتی که هیچ عملیاتی مشخص نشده باشد، تماس خواهد گرفت.
CAMERA_MICROPHONE_CAPABILITY_CHANGE_ID
شناسه تغییر : 136219221
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، سرویسهای پیشزمینه فقط زمانی که R.attr.foregroundServiceType
به ترتیب بهعنوان ServiceInfo.FOREGROUND_SERVICE_TYPE_CAMERA
و ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE
پیکربندی شده باشند، قابلیتهای دوربین و میکروفون در حین استفاده را دریافت میکنند. در نسخه های قبلی اندروید، سرویس های پیش زمینه به طور خودکار قابلیت های دوربین و میکروفون را دریافت می کردند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به انواع خدمات پیش زمینه در اندروید 11 مراجعه کنید.
CHANGE_BACKGROUND_CUSTOM_TOAST_BLOCK
شناسه تغییر : 128611929
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامهها دیگر نمیتوانند نان تست سفارشی را در پسزمینه پست کنند. با این حال، برنامهها همچنان میتوانند با استفاده از روش Toast.makeText(Context, CharSequence, int)
و انواع آن در پسزمینه، نان تست ارسال کنند.
برای کسب اطلاعات بیشتر درباره این تغییر، مشاهده نان تست سفارشی مسدود شده است را ببینید.
CHANGE_RESTRICT_SAW_INTENT
شناسه تغییر : 135920175
حالت پیش فرض : این تغییر را نمی توان تغییر داد. فقط توسط چارچوب سازگاری ثبت شده است.
مقاصد با استفاده از عملکرد android.settings.MANAGE_APP_OVERLAY_PERMISSION
و طرح URI داده های package
، دیگر کاربر را برای مدیریت مجوز مرتبط به صفحه مخصوص برنامه هدایت نمی کند. در عوض، کاربر به صفحهای هدایت میشود که در آن میتواند تمام برنامههایی را که مجوز درخواست کردهاند مدیریت کند.
CHANGE_TEXT_TOASTS_IN_THE_SYSTEM
شناسه تغییر : 147798919
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
نان تست های متنی اکنون به جای درون برنامه توسط SystemUI ارائه می شوند. این امر مانع از دور زدن محدودیتهای ارسال نان تست سفارشی در پسزمینه توسط برنامهها میشود.
DEFAULT_SCOPED_STORAGE
شناسه تغییر : 149924527
حالت پیشفرض : برای همه برنامهها فعال است.
همه برنامههایی که Android 11 را هدف قرار میدهند، اکنون بهطور پیشفرض از فضای ذخیرهسازی محدودهدار استفاده میکنند و دیگر نمیتوانند از فضای ذخیرهسازی محدوده انصراف دهند .
با این حال، بدون در نظر گرفتن نسخه SDK هدف برنامه و مقادیر پرچم مانیفست، با خاموش کردن این تغییر، میتوانید برنامه خود را بدون فضای ذخیرهسازی محدوده آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات فضای ذخیره سازی scoped در Android 11، به بخش Scoped storage در صفحه مربوط به تغییرات در فضای ذخیره سازی Android در Android 11 مراجعه کنید.
EMPTY_INTENT_ACTION_CATEGORY
شناسه تغییر : 151163173
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، اگر action
یا category
فیلتر هدف یک رشته خالی باشد، سیستم اکنون با خطا مواجه میشود. یک باگ در پلتفرم قبل از اندروید 11 به این کیس اجازه می داد تا بدون ایجاد خطا از آن عبور کند. توجه داشته باشید که این موارد شامل مواردی نمی شود که مشخصه تهی یا از دست رفته باشد، زیرا همیشه یک خطا ایجاد می کند.
FILTER_APPLICATION_QUERY
شناسه تغییر : 135549675
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون برنامهها باید بستهها و اهدافی را که قصد استفاده از آنها را دارند، قبل از اینکه بتوانند جزئیات برنامههای دیگر را در دستگاه دریافت کنند، اعلام کنند. چنین اظهاراتی باید با استفاده از برچسب <queries>
در مانیفست برنامه انجام شود.
برای کسب اطلاعات بیشتر در مورد نحوه پرس و جو و تعامل با سایر برنامه های نصب شده در Android 11، به صفحه حریم خصوصی قابلیت مشاهده بسته مراجعه کنید.
FORCE_ENABLE_SCOPED_STORAGE
شناسه تغییر : مقدار: 132649864
حالت پیشفرض : برای همه برنامهها غیرفعال است.
همه برنامههایی که Android 11 را هدف قرار میدهند، اکنون بهطور پیشفرض از فضای ذخیرهسازی محدودهدار استفاده میکنند و دیگر نمیتوانند از فضای ذخیرهسازی محدوده انصراف دهند .
با این حال، اگر برنامه شما همچنان Android 10 (سطح API 29) یا پایینتر را هدف قرار میدهد، میتوانید با روشن کردن این تغییر، برنامه خود را بدون در نظر گرفتن نسخه SDK هدف برنامه و مقادیر پرچم مانیفست، با فضای ذخیرهسازی محدوده آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات فضای ذخیره سازی scoped در Android 11، به بخش Scoped storage در صفحه مربوط به تغییرات در فضای ذخیره سازی Android در Android 11 مراجعه کنید.
GET_DATA_CONNECTION_STATE_R_VERSION
شناسه تغییر : 148535736
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای PreciseDataConnectionState#getDataConnectionState
.
GET_DATA_STATE_R_VERSION
شناسه تغییر : 148534348
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای getDataState()
.
GET_PROVIDER_SECURITY_EXCEPTIONS
شناسه تغییر : 150935354
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند، getProvider(String)
دیگر هیچ استثنای امنیتی ایجاد نمیکند.
GET_TARGET_SDK_VERSION_CODE_CHANGE
شناسه تغییر : 145147528
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای متد SmsManager.sendResolverResult()
.
GWP_ASAN
شناسه تغییر : 135634846
حالت پیشفرض : برای همه برنامهها غیرفعال است.
تشخیص اشکال حافظه بومی نمونه را در برنامه ها فعال می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به راهنمای GWP-ASan مراجعه کنید.
HIDE_MAXTARGETSDK_P_HIDDEN_APIS
شناسه تغییر : 149997251
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند، دسترسی به همه رابطهای غیر SDK را که بخشی از فهرست max-target-p
( greylist-max-p
) برای Android 10 (سطح API 29) هستند، حذف میکند.
HIDE_MAXTARGETSDK_Q_HIDDEN_APIS
شناسه تغییر : 149994052
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند، دسترسی به همه رابطهای غیر SDK را که بخشی از فهرست max-target-q
( greylist-max-q
) برای Android 11 (سطح API 30) هستند، حذف میکند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به رابطهای غیر SDK که اکنون در Android 11 مسدود شدهاند، مراجعه کنید.
LISTEN_CODE_CHANGE
شناسه تغییر : 147600208
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای TelephonyManager.listen(PhoneStateListener, int)
.
MISSING_APP_TAG
شناسه تغییر : 150776642
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، اکنون زمانی که فایل مانیفست برنامه فاقد برچسب application
یا instrumentation
باشد، خطایی ایجاد میشود.
NATIVE_HEAP_POINTER_TAGGING
شناسه تغییر : 135754954
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، تخصیص هیپ بومی اکنون دارای یک برچسب غیر صفر در مهمترین بایت است.
برای کسب اطلاعات بیشتر، برچسبگذاری نشانگر هیپ را ببینید.
PHONE_STATE_LISTENER_LIMIT_CHANGE_ID
شناسه تغییر : 150880553
حالت پیشفرض : برای همه برنامهها فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اکنون محدودیتی برای تعداد اشیاء PhoneStateListener
وجود دارد که هر فرآیندی ممکن است از طریق TelephonyManager.listen(PhoneStateListener, int)
ثبت شود. حد پیشفرض 50 است که ممکن است با بهروزرسانیهای پیکربندی دستگاه از راه دور تغییر کند. این محدودیت با استفاده از یک IllegalStateException
که توسط TelephonyManager.listen(PhoneStateListener, int)
پرتاب میشود، اعمال میشود، زمانی که فرآیند توهینآمیز تلاش میکند یک شنونده بیش از حد ثبت کند.
PREVENT_META_REFLECTION_BLACKLIST_ACCESS
شناسه تغییر : 142365358
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که اندروید 11 را هدف قرار میدهند دیگر نمیتوانند از یک لایه بازتاب اضافی برای دسترسی به رابطهای غیر SDK که محدود هستند استفاده کنند.
PROCESS_CAPABILITY_CHANGE_ID
شناسه تغییر : 136274596
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اکنون میتوان از پرچم Context.BIND_INCLUDE_CAPABILITIES
برای انتقال قابلیتهای حین استفاده از فرآیند مشتری به یک سرویس محدود استفاده کرد.
REMOVE_ANDROID_TEST_BASE
شناسه تغییر : 133396946
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اگر برنامه به android.test.runner
وابسته نباشد، کتابخانه android.test.base
حذف شده است (زیرا به کلاسهای کتابخانه android.test.base
بستگی دارد).
REQUEST_ACCESSIBILITY_BUTTON_CHANGE
شناسه تغییر : 136293963
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای سرویسهای دسترسپذیری که Android 11 را هدف قرار میدهند، اکنون باید پرچم FLAG_REQUEST_ACCESSIBILITY_BUTTON
در فایل فراداده سرویس دسترسپذیری مشخص شود. در غیر این صورت، پرچم نادیده گرفته می شود.
برای کسب اطلاعات بیشتر درباره این تغییر، به اعلام استفاده از دکمه دسترسی در فایل ابرداده مراجعه کنید.
RESOURCES_ARSC_COMPRESSED
شناسه تغییر : 132742131
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که Android 11 (سطح API 30) را هدف قرار میدهند، اگر حاوی فایل فشردهشده resources.arsc
باشند یا اگر این فایل در یک مرز 4 بایتی تراز نشده باشد، نمیتوانند نصب شوند.
برای کسب اطلاعات بیشتر در مورد این تغییر، فایلهای منبع فشرده را ببینید.
RESTRICT_STORAGE_ACCESS_FRAMEWORK
شناسه تغییر : 141600225
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اگر برنامه شما Android 11 را هدف قرار میدهد و از چارچوب دسترسی به فضای ذخیرهسازی (SAF) استفاده میکند، دیگر نمیتوانید با استفاده از کنشهای هدف ACTION_OPEN_DOCUMENT
و ACTION_OPEN_DOCUMENT_TREE
به فهرستهای راهنمای خاصی دسترسی پیدا کنید. برای کسب اطلاعات بیشتر در مورد این تغییرات، بخش محدودیتهای دسترسی به سند را در صفحهای که بهروزرسانیهای حریم خصوصی مربوط به فضای ذخیرهسازی در Android 11 را مورد بحث قرار میدهد، ببینید.
SELINUX_LATEST_CHANGES
شناسه تغییر : 143539591
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
این تغییر باعث میشود برنامهها به دامنه untrusted_app_R-targetSDk SELinux دسترسی پیدا کنند. این یکی از تغییرات اساسی در چارچوب سازگاری است که به برنامهها اجازه میدهد تا تغییرات دیگری را که توسط targetSdkVersion
بسته شدهاند، بدون تغییر targetSDKVersion
برنامه خود تغییر دهند. به همین دلیل، نباید این تغییر را برای برنامه ای که اندروید 11 را هدف قرار می دهد غیرفعال کنید، در غیر این صورت برنامه کار نخواهد کرد.
این تغییر برای برنامه هایی که از شناسه کاربری مشترک استفاده می کنند تأثیری ندارد.
THROW_SECURITY_EXCEPTIONS
شناسه تغییر : 147340954
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
قبل از Android 11، یک SecurityException
فقط توسط setEnabled
APIها برای خطای مجوز پرتاب می شد. در اندروید 11 این دیگر صادق نیست، و یک SecurityException
میتواند به هر دلیلی ایجاد شود که هیچ یک از آنها در معرض تماس گیرنده قرار نمیگیرد.
برای حفظ رفتار API موجود، اگر برای برنامهای که Android 11 را هدف قرار نمیدهد، نقص مجوز قدیمی یا اجرا نشدن بازیگر رخ دهد، این استثنا به یک IllegalStateException
که در منبع قبل از Android 11 وجود داشت، وادار میشود.
USE_SET_LOCATION_ENABLED
شناسه تغییر : 117835097
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههای سرپرستی که Android 11 را هدف قرار میدهند، دیگر نمیتوانند از DevicePolicyManager.setSecureSetting(ComponentName, String, String)
برای تغییر تنظیمات منسوخ شده Settings.Secure.LOCATION_MODE
استفاده کنند. در عوض باید از DevicePolicyManager.setLocationEnabled(ComponentName, boolean)
استفاده کنند.
این صفحه هر تغییر رفتار تأثیرگذار برنامه را که به چارچوب سازگاری در Android 11 اضافه شده است (سطح API 30) توضیح میدهد. از این لیست همراه با گزینههای توسعهدهنده و دستورات ADB برای آزمایش و اشکالزدایی برنامه خود هنگام آماده شدن برای هدف قرار دادن اندروید 11 استفاده کنید.
ADD_CONTENT_OBSERVER_FLAGS
شناسه تغییر : 150939131
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، یک API عمومی جدید اضافه بار onChange(boolean, Uri, int)
وجود دارد که شامل یک آرگومان flags
عدد صحیح است.
این روش جدید یک جایگزین SDK عمومی برای برنامههایی است که از روش overloaded onChange()
غیر SDK استفاده میکنند که شامل یک آرگومان userId
عدد صحیح است.
ADMIN_APP_PASSWORD_COMPLEXITY
شناسه تغییر : 123562444
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههای سرپرستی که Android 11 را هدف قرار میدهند، هر زمان که برنامهای گذرواژهای را تعیین میکند که به کیفیت گذرواژه اختصاصدادهشده در حال حاضر مرتبط نیست، خطایی ایجاد کنید. به عنوان مثال، وقتی کیفیت رمز عبور روی DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
تنظیم می شود، برنامه نمی تواند حداقل طول گذرواژه را تنظیم کند. در این حالت، قبل از تلاش برای تعیین حداقل طول رمز عبور، برنامه ابتدا باید متد setPasswordQuality()
و تنها سپس متد setPasswordMinimumLength()
فراخوانی کند.
علاوه بر این، هنگامی که یک برنامه مدیریتی که اندروید 11 را هدف قرار می دهد، کیفیت رمز عبور را کاهش می دهد، هر مورد نیاز رمز عبور موجود که دیگر اعمال نمی شود به مقادیر پیش فرض خود بازنشانی می شود.
APP_DATA_DIRECTORY_ISOLATION
شناسه تغییر : 143937733
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که Android 11 را هدف قرار میدهند، دیگر نمیتوانند به فایلها در فهرست راهنمای دادههای خصوصی هر برنامه دسترسی داشته باشند، صرفنظر از نسخه SDK هدف برنامه دیگر.
برای کسب اطلاعات بیشتر، دسترسی به فهرست های خصوصی را ببینید.
APN_READING_PERMISSION_CHANGE_ID
شناسه تغییر : 124107808
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، دسترسی به پایگاه داده APN اکنون به مجوز Manifest.permission.WRITE_APN_SETTINGS
نیاز دارد.
برای کسب اطلاعات بیشتر در مورد این تغییر، دسترسی خواندن محدود به پایگاه داده APN را ببینید.
BACKGROUND_RATIONALE_CHANGE_ID
شناسه تغییر : 147316723
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون برنامهها باید هر بار که درخواست دسترسی به موقعیت مکانی دستگاه در پسزمینه را دارند، دلیل معتبری ارائه دهند.
برای کسب اطلاعات بیشتر در مورد این تغییر، راهنمای نحوه دسترسی به موقعیت مکانی پسزمینه در اندروید 11 را ببینید که تغییرات حریم خصوصی مربوط به مکان در اندروید 11 را مورد بحث قرار میدهد.
CALLBACK_ON_CLEAR_CHANGE
شناسه تغییر : 119147584
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
هر زمان که Editor.clear
فراخوانی شود، اکنون با یک کلید null
به OnSharedPreferenceChangeListener.onSharedPreferenceChanged
پاسخ تماس داده می شود.
برای کسب اطلاعات بیشتر درباره این تغییر، به تغییرات Callback برای OnSharedPreferenceChangeListener مراجعه کنید.
CALLBACK_ON_MORE_ERROR_CODE_CHANGE
شناسه تغییر : 130595455
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون کدهای خطا برای updateAvailableNetworks(List, Executor, Consumer)
و setPreferredOpportunisticDataSubscription(int, boolean, Executor, Consumer)
گسترش مییابند.
CALL_BACK_ON_CHANGED_LISTENER_WITH_SWITCHED_OP_CHANGE
شناسه تغییر : 148180766
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
این یک تغییر رفتار ظریف به startWatchingMode(String, String, AppOpsManager.OnOpChangedListener)
. قبل از این تغییر، سیستم برای عملیات سوئیچ شده دوباره فراخوانی کرد. پس از تغییر، سیستم برای عملیات درخواستی واقعی یا تمام عملیات سوئیچ شده در صورتی که هیچ عملیاتی مشخص نشده باشد، تماس خواهد گرفت.
CAMERA_MICROPHONE_CAPABILITY_CHANGE_ID
شناسه تغییر : 136219221
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، سرویسهای پیشزمینه فقط زمانی که R.attr.foregroundServiceType
به ترتیب بهعنوان ServiceInfo.FOREGROUND_SERVICE_TYPE_CAMERA
و ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE
پیکربندی شده باشند، قابلیتهای دوربین و میکروفون در حین استفاده را دریافت میکنند. در نسخه های قبلی اندروید، سرویس های پیش زمینه به طور خودکار قابلیت های دوربین و میکروفون را دریافت می کردند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به انواع خدمات پیش زمینه در اندروید 11 مراجعه کنید.
CHANGE_BACKGROUND_CUSTOM_TOAST_BLOCK
شناسه تغییر : 128611929
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامهها دیگر نمیتوانند نان تست سفارشی را در پسزمینه پست کنند. با این حال، برنامهها همچنان میتوانند با استفاده از روش Toast.makeText(Context, CharSequence, int)
و انواع آن در پسزمینه، نان تست ارسال کنند.
برای کسب اطلاعات بیشتر درباره این تغییر، مشاهده نان تست سفارشی مسدود شده است را ببینید.
CHANGE_RESTRICT_SAW_INTENT
شناسه تغییر : 135920175
حالت پیش فرض : این تغییر را نمی توان تغییر داد. فقط توسط چارچوب سازگاری ثبت شده است.
مقاصد با استفاده از عملکرد android.settings.MANAGE_APP_OVERLAY_PERMISSION
و طرح URI داده های package
، دیگر کاربر را برای مدیریت مجوز مرتبط به صفحه مخصوص برنامه هدایت نمی کند. در عوض، کاربر به صفحهای هدایت میشود که در آن میتواند تمام برنامههایی را که مجوز درخواست کردهاند مدیریت کند.
CHANGE_TEXT_TOASTS_IN_THE_SYSTEM
شناسه تغییر : 147798919
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
نان تست های متنی اکنون به جای درون برنامه توسط SystemUI ارائه می شوند. این امر مانع از دور زدن محدودیتهای ارسال نان تست سفارشی در پسزمینه توسط برنامهها میشود.
DEFAULT_SCOPED_STORAGE
شناسه تغییر : 149924527
حالت پیشفرض : برای همه برنامهها فعال است.
همه برنامههایی که Android 11 را هدف قرار میدهند، اکنون بهطور پیشفرض از فضای ذخیرهسازی محدودهدار استفاده میکنند و دیگر نمیتوانند از فضای ذخیرهسازی محدوده انصراف دهند .
با این حال، بدون در نظر گرفتن نسخه SDK هدف برنامه و مقادیر پرچم مانیفست، با خاموش کردن این تغییر، میتوانید برنامه خود را بدون فضای ذخیرهسازی محدوده آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات فضای ذخیره سازی scoped در Android 11، به بخش Scoped storage در صفحه مربوط به تغییرات در فضای ذخیره سازی Android در Android 11 مراجعه کنید.
EMPTY_INTENT_ACTION_CATEGORY
شناسه تغییر : 151163173
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، اگر action
یا category
فیلتر هدف یک رشته خالی باشد، سیستم اکنون با خطا مواجه میشود. یک باگ در پلتفرم قبل از اندروید 11 به این کیس اجازه می داد تا بدون ایجاد خطا از آن عبور کند. توجه داشته باشید که این موارد شامل مواردی نمی شود که مشخصه تهی یا از دست رفته باشد، زیرا همیشه یک خطا ایجاد می کند.
FILTER_APPLICATION_QUERY
شناسه تغییر : 135549675
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اکنون برنامهها باید بستهها و اهدافی را که قصد استفاده از آنها را دارند، قبل از اینکه بتوانند جزئیات برنامههای دیگر را در دستگاه دریافت کنند، اعلام کنند. چنین اظهاراتی باید با استفاده از برچسب <queries>
در مانیفست برنامه انجام شود.
برای کسب اطلاعات بیشتر در مورد نحوه پرس و جو و تعامل با سایر برنامه های نصب شده در Android 11، به صفحه حریم خصوصی قابلیت مشاهده بسته مراجعه کنید.
FORCE_ENABLE_SCOPED_STORAGE
شناسه تغییر : مقدار: 132649864
حالت پیشفرض : برای همه برنامهها غیرفعال است.
همه برنامههایی که Android 11 را هدف قرار میدهند، اکنون بهطور پیشفرض از فضای ذخیرهسازی محدودهدار استفاده میکنند و دیگر نمیتوانند از فضای ذخیرهسازی محدوده انصراف دهند .
با این حال، اگر برنامه شما همچنان Android 10 (سطح API 29) یا پایینتر را هدف قرار میدهد، میتوانید با روشن کردن این تغییر، برنامه خود را بدون در نظر گرفتن نسخه SDK هدف برنامه و مقادیر پرچم مانیفست، با فضای ذخیرهسازی محدوده آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات فضای ذخیره سازی scoped در Android 11، به بخش Scoped storage در صفحه مربوط به تغییرات در فضای ذخیره سازی Android در Android 11 مراجعه کنید.
GET_DATA_CONNECTION_STATE_R_VERSION
شناسه تغییر : 148535736
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای PreciseDataConnectionState#getDataConnectionState
.
GET_DATA_STATE_R_VERSION
شناسه تغییر : 148534348
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای getDataState()
.
GET_PROVIDER_SECURITY_EXCEPTIONS
شناسه تغییر : 150935354
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند، getProvider(String)
دیگر هیچ استثنای امنیتی ایجاد نمیکند.
GET_TARGET_SDK_VERSION_CODE_CHANGE
شناسه تغییر : 145147528
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای متد SmsManager.sendResolverResult()
.
GWP_ASAN
شناسه تغییر : 135634846
حالت پیشفرض : برای همه برنامهها غیرفعال است.
تشخیص اشکال حافظه بومی نمونه را در برنامه ها فعال می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به راهنمای GWP-ASan مراجعه کنید.
HIDE_MAXTARGETSDK_P_HIDDEN_APIS
شناسه تغییر : 149997251
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند، دسترسی به همه رابطهای غیر SDK را که بخشی از فهرست max-target-p
( greylist-max-p
) برای Android 10 (سطح API 29) هستند، حذف میکند.
HIDE_MAXTARGETSDK_Q_HIDDEN_APIS
شناسه تغییر : 149994052
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند، دسترسی به همه رابطهای غیر SDK را که بخشی از فهرست max-target-q
( greylist-max-q
) برای Android 11 (سطح API 30) هستند، حذف میکند.
برای کسب اطلاعات بیشتر در مورد این تغییر، به رابطهای غیر SDK که اکنون در Android 11 مسدود شدهاند، مراجعه کنید.
LISTEN_CODE_CHANGE
شناسه تغییر : 147600208
حالت پیشفرض : برای برنامههایی که Android 10 (سطح API 29) یا بالاتر را هدف قرار میدهند فعال است.
برای بررسی نسخه SDK برای TelephonyManager.listen(PhoneStateListener, int)
.
MISSING_APP_TAG
شناسه تغییر : 150776642
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، اکنون زمانی که فایل مانیفست برنامه فاقد برچسب application
یا instrumentation
باشد، خطایی ایجاد میشود.
NATIVE_HEAP_POINTER_TAGGING
شناسه تغییر : 135754954
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، تخصیص هیپ بومی اکنون دارای یک برچسب غیر صفر در مهمترین بایت است.
برای کسب اطلاعات بیشتر، برچسبگذاری نشانگر هیپ را ببینید.
PHONE_STATE_LISTENER_LIMIT_CHANGE_ID
شناسه تغییر : 150880553
حالت پیشفرض : برای همه برنامهها فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اکنون محدودیتی برای تعداد اشیاء PhoneStateListener
وجود دارد که هر فرآیندی ممکن است از طریق TelephonyManager.listen(PhoneStateListener, int)
ثبت شود. حد پیشفرض 50 است که ممکن است با بهروزرسانیهای پیکربندی دستگاه از راه دور تغییر کند. این محدودیت با استفاده از یک IllegalStateException
که توسط TelephonyManager.listen(PhoneStateListener, int)
پرتاب میشود، اعمال میشود، زمانی که فرآیند توهینآمیز تلاش میکند یک شنونده بیش از حد ثبت کند.
PREVENT_META_REFLECTION_BLACKLIST_ACCESS
شناسه تغییر : 142365358
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که اندروید 11 را هدف قرار میدهند دیگر نمیتوانند از یک لایه بازتاب اضافی برای دسترسی به رابطهای غیر SDK که محدود هستند استفاده کنند.
PROCESS_CAPABILITY_CHANGE_ID
شناسه تغییر : 136274596
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اکنون میتوان از پرچم Context.BIND_INCLUDE_CAPABILITIES
برای انتقال قابلیتهای حین استفاده از فرآیند مشتری به یک سرویس محدود استفاده کرد.
REMOVE_ANDROID_TEST_BASE
شناسه تغییر : 133396946
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که Android 11 را هدف قرار میدهند، اگر برنامه به android.test.runner
وابسته نباشد، کتابخانه android.test.base
حذف شده است (زیرا به کلاسهای کتابخانه android.test.base
بستگی دارد).
REQUEST_ACCESSIBILITY_BUTTON_CHANGE
شناسه تغییر : 136293963
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای سرویسهای دسترسپذیری که Android 11 را هدف قرار میدهند، اکنون باید پرچم FLAG_REQUEST_ACCESSIBILITY_BUTTON
در فایل فراداده سرویس دسترسپذیری مشخص شود. در غیر این صورت، پرچم نادیده گرفته می شود.
برای کسب اطلاعات بیشتر درباره این تغییر، به اعلام استفاده از دکمه دسترسی در فایل ابرداده مراجعه کنید.
RESOURCES_ARSC_COMPRESSED
شناسه تغییر : 132742131
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههایی که Android 11 (سطح API 30) را هدف قرار میدهند، اگر حاوی فایل فشردهشده resources.arsc
باشند یا اگر این فایل در یک مرز 4 بایتی تراز نشده باشد، نمیتوانند نصب شوند.
برای کسب اطلاعات بیشتر در مورد این تغییر، فایلهای منبع فشرده را ببینید.
RESTRICT_STORAGE_ACCESS_FRAMEWORK
شناسه تغییر : 141600225
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
اگر برنامه شما Android 11 را هدف قرار میدهد و از چارچوب دسترسی به فضای ذخیرهسازی (SAF) استفاده میکند، دیگر نمیتوانید با استفاده از کنشهای هدف ACTION_OPEN_DOCUMENT
و ACTION_OPEN_DOCUMENT_TREE
به فهرستهای راهنمای خاصی دسترسی پیدا کنید. برای کسب اطلاعات بیشتر در مورد این تغییرات، بخش محدودیتهای دسترسی به سند را در صفحهای که بهروزرسانیهای حریم خصوصی مربوط به فضای ذخیرهسازی در Android 11 را مورد بحث قرار میدهد، ببینید.
SELINUX_LATEST_CHANGES
شناسه تغییر : 143539591
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
این تغییر باعث میشود برنامهها به دامنه untrusted_app_R-targetSDk SELinux دسترسی پیدا کنند. این یکی از تغییرات اساسی در چارچوب سازگاری است که به برنامهها اجازه میدهد تا تغییرات دیگری را که توسط targetSdkVersion
بسته شدهاند، بدون تغییر targetSDKVersion
برنامه خود تغییر دهند. به همین دلیل، نباید این تغییر را برای برنامه ای که اندروید 11 را هدف قرار می دهد غیرفعال کنید، در غیر این صورت برنامه کار نخواهد کرد.
این تغییر برای برنامه هایی که از شناسه کاربری مشترک استفاده می کنند تأثیری ندارد.
THROW_SECURITY_EXCEPTIONS
شناسه تغییر : 147340954
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
قبل از Android 11، یک SecurityException
فقط توسط setEnabled
APIها برای خطای مجوز پرتاب می شد. در اندروید 11 این دیگر صادق نیست، و یک SecurityException
میتواند به هر دلیلی ایجاد شود که هیچ یک از آنها در معرض تماس گیرنده قرار نمیگیرد.
برای حفظ رفتار API موجود، اگر برای برنامهای که Android 11 را هدف قرار نمیدهد، نقص مجوز قدیمی یا اجرا نشدن بازیگر رخ دهد، این استثنا به یک IllegalStateException
که در منبع قبل از Android 11 وجود داشت، وادار میشود.
USE_SET_LOCATION_ENABLED
شناسه تغییر : 117835097
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برنامههای سرپرستی که Android 11 را هدف قرار میدهند، دیگر نمیتوانند از DevicePolicyManager.setSecureSetting(ComponentName, String, String)
برای تغییر تنظیمات منسوخ شده Settings.Secure.LOCATION_MODE
استفاده کنند. در عوض باید از DevicePolicyManager.setLocationEnabled(ComponentName, boolean)
استفاده کنند.
این صفحه هر تغییر رفتار تأثیرگذار برنامه را که به چارچوب سازگاری در Android 11 اضافه شده است (سطح API 30) توضیح میدهد. از این لیست همراه با گزینههای توسعهدهنده و دستورات ADB برای آزمایش و اشکالزدایی برنامه خود هنگام آماده شدن برای هدف قرار دادن اندروید 11 استفاده کنید.
ADD_CONTENT_OBSERVER_FLAGS
شناسه تغییر : 150939131
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههایی که اندروید 11 را هدف قرار میدهند، یک API عمومی جدید اضافه بار onChange(boolean, Uri, int)
وجود دارد که شامل یک آرگومان flags
عدد صحیح است.
این روش جدید یک جایگزین SDK عمومی برای برنامههایی است که از روش overloaded onChange()
غیر SDK استفاده میکنند که شامل یک آرگومان userId
عدد صحیح است.
ADMIN_APP_PASSWORD_COMPLEXITY
شناسه تغییر : 123562444
حالت پیشفرض : برای برنامههایی که Android 11 (سطح API 30) یا بالاتر را هدف قرار میدهند فعال است.
برای برنامههای سرپرستی که Android 11 را هدف قرار میدهند، هر زمان که برنامهای گذرواژهای را تعیین میکند که به کیفیت گذرواژه اختصاصدادهشده در حال حاضر مرتبط نیست، خطایی ایجاد کنید. به عنوان مثال، وقتی کیفیت رمز عبور روی DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
تنظیم می شود، برنامه نمی تواند حداقل طول گذرواژه را تنظیم کند. در این حالت ، قبل از تلاش برای تنظیم حداقل طول رمز عبور ، برنامه ابتدا باید با روش setPasswordQuality()
تماس بگیرد و فقط در این صورت با روش setPasswordMinimumLength()
تماس بگیرید.
علاوه بر این ، هنگامی که یک برنامه سرپرست هدف قرار دادن Android 11 کیفیت رمز عبور را پایین می آورد ، هرگونه نیاز رمز عبور موجود که دیگر اعمال نمی شود ، به مقادیر پیش فرض آنها بازنشانی می شود.
app_data_directory_isolation
شناسه تغییر : 143937733
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 را هدف قرار می دهند ، دیگر نمی توانند بدون در نظر گرفتن نسخه SDK هدف برنامه دیگر ، در دایرکتوری های داده خصوصی از هر برنامه دسترسی پیدا کنند.
برای کسب اطلاعات بیشتر ، به دسترسی به دایرکتوری های خصوصی مراجعه کنید.
apn_reading_permission_change_id
شناسه تغییر : 124107808
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، دسترسی به پایگاه داده APN اکنون به مجوز مانیفست. Manifest.permission.WRITE_APN_SETTINGS
نیاز دارد.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به دسترسی محدود به دسترسی به پایگاه داده APN مراجعه کنید.
background_rationale_change_id
شناسه تغییر : 147316723
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اکنون برنامه ها باید هر بار که درخواست دسترسی به مکان دستگاه را در پس زمینه داشته باشند ، یک دلیل منطقی ارائه دهند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به راهنمای نحوه دسترسی به مکان پس زمینه در Android 11 مراجعه کنید که در مورد تغییرات حریم خصوصی مربوط به مکان در Android 11 بحث می کند.
Callback_on_Clear_Change
شناسه تغییر : 119147584
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
هر زمان که Editor.clear
فراخوانده می شود ، اکنون یک تماس تلفنی به OnSharedPreferenceChangeListener.onSharedPreferenceChanged
با یک کلید null
انجام می شود.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به تغییرات پاسخ به تماس برای onsharedpreferencechangelistener مراجعه کنید.
Callback_on_more_error_code_change
شناسه تغییر : 130595455
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
کدهای خطا اکنون برای updateAvailableNetworks(List, Executor, Consumer)
و setPreferredOpportunisticDataSubscription(int, boolean, Executor, Consumer)
گسترش یافته است.
call_back_on_changed_listener_with_switched_op_change
شناسه تغییر : 148180766
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
این یک تغییر رفتاری ظریف به startWatchingMode(String, String, AppOpsManager.OnOpChangedListener)
است. قبل از این تغییر سیستم به نام Back برای OP Switched. پس از تغییر ، سیستم در صورت عدم مشخص شدن OP ، برای OP های واقعاً درخواست شده یا همه OPS تغییر یافته تماس می گیرد.
camera_microphone_capability_change_id
شناسه تغییر : 136219221
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، سرویس های پیش زمینه فقط دوربین و میکروفون را در حالی که R.attr.foregroundServiceType
به عنوان ServiceInfo.FOREGROUND_SERVICE_TYPE_CAMERA
و ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE
به ترتیب در پرونده آشکار پیکربندی می شوند ، دریافت می کنند. در نسخه های قبلی Android ، خدمات پیش زمینه به طور خودکار قابلیت های دوربین و میکروفون را دریافت می کردند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به انواع خدمات پیش زمینه در Android 11 مراجعه کنید.
Change_background_custom_toast_block
شناسه تغییر : 128611929
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه ها دیگر نمی توانند نان تست های سفارشی را در پس زمینه ارسال کنند. با این حال ، برنامه ها هنوز هم می توانند نان تست ها را با استفاده از Toast.makeText(Context, CharSequence, int)
و انواع آن در پس زمینه ارسال کنند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، ببینید که نماهای نان تست سفارشی مسدود شده است .
change_restrict_saw_intent
شناسه تغییر : 135920175
حالت پیش فرض : این تغییر قابل تغییر نیست. فقط توسط چارچوب سازگاری ثبت شده است.
اهداف با استفاده از اقدامات android.settings.MANAGE_APP_OVERLAY_PERMISSION
و طرح داده های package
URI دیگر کاربر را برای مدیریت مجوز مرتبط به صفحه برنامه اختصاصی هدایت نمی کند. در عوض ، کاربر به صفحه ای هدایت می شود که می تواند تمام برنامه هایی را که درخواست مجوز کرده اند مدیریت کند.
Change_text_toasts_in_the_system
شناسه تغییر : 147798919
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
نان تست های متنی اکنون به جای برنامه در برنامه توسط Systemui ارائه می شوند. این امر مانع از محدودیت برنامه ها در ارسال نان تست های سفارشی در پس زمینه می شود.
Default_scoped_storage
شناسه تغییر : 149924527
حالت پیش فرض : برای همه برنامه ها فعال شده است.
تمام برنامه هایی که Android 11 را هدف قرار می دهند اکنون به طور پیش فرض از ذخیره سازی Scoped استفاده می کنند و دیگر نمی توانند از ذخیره سازی Scoped خودداری کنند .
با این حال ، شما می توانید بدون توجه به نسخه SDK هدف برنامه خود و مقادیر پرچم ، برنامه خود را بدون ذخیره سازی Scoped آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات در ذخیره سازی Scoped در Android 11 ، به بخش ذخیره سازی Scoped در صفحه در مورد تغییر در ذخیره سازی اندروید در Android 11 مراجعه کنید.
inteal_intent_action_category
شناسه تغییر : 151163173
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اگر action
یا category
فیلتر قصد یک رشته خالی باشد ، سیستم خطایی را به وجود می آورد. یک اشکال در سیستم عامل قبل از Android 11 اجازه می دهد این پرونده بدون پرتاب خطایی از آن عبور کند. توجه داشته باشید که این موارد شامل مواردی نیست که این ویژگی تهی یا مفقود باشد ، زیرا همیشه خطایی را به وجود آورده است.
filter_application_query
شناسه تغییر : 135549675
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اکنون برنامه ها قبل از اینکه بتوانند جزئیات مربوط به سایر برنامه ها را در یک دستگاه دریافت کنند ، باید بسته ها و اهداف مورد نظر خود را اعلام کنند. چنین اعلامیه هایی باید با استفاده از برچسب <queries>
در مانیفست برنامه انجام شود.
برای کسب اطلاعات بیشتر در مورد نحوه پرس و جو و تعامل با سایر برنامه های نصب شده در Android 11 ، به صفحه حریم خصوصی Package Visibility مراجعه کنید.
force_enable_scoped_storage
تغییر شناسه : ارزش: 132649864
حالت پیش فرض : برای همه برنامه ها غیرفعال است.
تمام برنامه هایی که Android 11 را هدف قرار می دهند اکنون به طور پیش فرض از ذخیره سازی Scoped استفاده می کنند و دیگر نمی توانند از ذخیره سازی Scoped خودداری کنند .
با این حال ، اگر برنامه شما هنوز Android 10 (API سطح 29) یا پایین تر را هدف قرار داده است ، می توانید بدون توجه به نسخه SDK هدف برنامه خود و مقادیر پرچم ، برنامه خود را با ذخیره سازی Scoped آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات در ذخیره سازی Scoped در Android 11 ، به بخش ذخیره سازی Scoped در صفحه در مورد تغییر در ذخیره سازی اندروید در Android 11 مراجعه کنید.
get_data_connection_state_r_version
شناسه تغییر : 148535736
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای بررسی نسخه SDK برای PreciseDataConnectionState#getDataConnectionState
.
get_data_state_r_version
شناسه تغییر : 148534348
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای بررسی نسخه SDK برای getDataState()
.
get_provider_security_exceptions
شناسه تغییر : 150935354
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، getProvider(String)
دیگر هیچ استثنائی امنیتی را به وجود نمی آورد.
get_target_sdk_version_code_change
شناسه تغییر : 145147528
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای بررسی نسخه SDK برای روش SmsManager.sendResolverResult()
.
GWP_ASAN
شناسه تغییر : 135634846
حالت پیش فرض : برای همه برنامه ها غیرفعال است.
تشخیص اشکال حافظه بومی نمونه را در برنامه ها فعال می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به راهنمای GWP-ASAN مراجعه کنید.
HIRD_MAXTARGETSDK_P_HIDDEN_APIS
شناسه تغییر : 149997251
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، دسترسی به تمام رابط های غیر SDK را که بخشی از لیست max-target-p
( greylist-max-p
) برای Android 10 (API سطح 29) هستند ، حذف می کند.
HIRD_MAXTARGETSDK_Q_HIDDEN_APIS
شناسه تغییر : 149994052
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، دسترسی به کلیه رابط های غیر SDK را که بخشی از لیست max-target-q
( greylist-max-q
) برای Android 11 (API سطح 30) هستند ، حذف می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به رابط های غیر SDK که اکنون در Android 11 مسدود شده اند ، مراجعه کنید.
گوش دادن_انگ_چ را گوش دهید
شناسه تغییر : 147600208
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای بررسی نسخه SDK برای TelephonyManager.listen(PhoneStateListener, int)
.
Mission_App_Tag
شناسه تغییر : 150776642
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اکنون خطایی پرتاب می شود که فایل مانیفست یک برنامه یک برچسب application
یا instrumentation
از دست ندهد.
native_heap_pointer_tagging
شناسه تغییر : 135754954
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، تخصیص پشته بومی اکنون دارای برچسب غیر صفر در مهمترین بایت است.
برای کسب اطلاعات بیشتر ، به برچسب زدن به نشانگر Heap مراجعه کنید.
phone_state_listener_limit_change_id
شناسه تغییر : 150880553
حالت پیش فرض : برای همه برنامه ها فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اکنون محدودیت در تعداد اشیاء PhoneStateListener
وجود دارد که هر فرآیند ممکن است از طریق TelephonyManager.listen(PhoneStateListener, int)
ثبت شود. حد پیش فرض 50 است که ممکن است با به روزرسانی های پیکربندی دستگاه از راه دور تغییر یابد. این حد با استفاده از یک IllegalStateException
است که توسط TelephonyManager.listen(PhoneStateListener, int)
پرتاب می شود ، هنگامی که روند توهین آمیز سعی در ثبت نام بیش از حد شنوندگان دارد.
PREESION_META_REFLECTION_BLACKLIST_ACCESS
شناسه تغییر : 142365358
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 را هدف قرار می دهند دیگر نمی توانند از یک لایه اضافی بازتاب برای دسترسی به رابط های غیر SDK که محدود هستند استفاده کنند.
process_capability_change_id
شناسه تغییر : 136274596
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، Flag Context.BIND_INCLUDE_CAPABILITIES
اکنون می تواند برای عبور از قابلیت های هنگام استفاده از فرآیند مشتری به یک سرویس محدود استفاده شود.
remove_android_test_base
شناسه تغییر : 133396946
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، کتابخانه android.test.base
حذف شده است اگر برنامه به android.test.runner
بستگی نداشته باشد (زیرا به کلاسهای کتابخانه android.test.base
بستگی دارد).
Request_accessibility_Button_Change
شناسه تغییر : 136293963
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای خدمات دسترسی به Android 11 ، پرچم FLAG_REQUEST_ACCESSIBILITY_BUTTON
اکنون باید در پرونده ابرداده خدمات دسترسی مشخص شود. در غیر این صورت ، پرچم نادیده گرفته می شود.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به استفاده از دکمه دسترسی در پرونده ابرداده مراجعه کنید.
Resources_arsc_compressed
شناسه تغییر : 132742131
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 (API سطح 30) را هدف قرار می دهند در صورتی که حاوی یک resources.arsc
فشرده شده باشند ، نصب نمی شوند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به پرونده های منابع فشرده شده مراجعه کنید.
محدود کردن_ استورج_ACCESS_FRAMEWORK
شناسه تغییر : 141600225
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اگر برنامه شما Android 11 را هدف قرار داده و از چارچوب Access Access (SAF) استفاده می کند ، دیگر نمی توانید با استفاده از اقدامات ACTION_OPEN_DOCUMENT
و ACTION_OPEN_DOCUMENT_TREE
به برخی از دایرکتوری ها دسترسی پیدا کنید. برای کسب اطلاعات بیشتر در مورد این تغییرات ، به بخش محدودیت های دسترسی سند در صفحه مراجعه کنید که به روزرسانی های مربوط به حریم خصوصی مربوط به ذخیره سازی در Android 11 بحث می کند.
selinux_latest_changes
شناسه تغییر : 143539591
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
این برنامه های تغییر دروازه به دامنه untusted_app_rgetsdk selinux دسترسی پیدا می کنند. این یکی از تغییرات اساسی در چارچوب سازگاری است که به برنامه ها اجازه می دهد تغییرات دیگری را که توسط targetSdkVersion
درج شده اند بدون تغییر targetSDKVersion
برنامه خود ، تغییر دهند. به همین دلیل ، شما نباید این تغییر را برای برنامه ای که Android 11 را هدف قرار می دهد غیرفعال کنید ، یا برنامه عملکردی نخواهد داشت.
این تغییر هیچ تاثیری برای برنامه هایی که از شناسه کاربر مشترک استفاده می کنند ندارد.
throw_security_exceptions
شناسه تغییر : 147340954
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
قبل از Android 11 ، SecurityException
فقط توسط API های setEnabled
برای خطای مجوز پرتاب می شود. در Android 11 این دیگر صادق نیست و SecurityException
به هر دلیلی قابل پرتاب است که هیچکدام در معرض تماس گیرنده قرار نمی گیرند.
برای حفظ رفتار API موجود ، اگر یک شکست اجازه میراث یا عدم موفقیت اجرای بازیگر برای برنامه ای که اندروید 11 را هدف قرار ندهد ، اتفاق می افتد ، استثناء به یک IllegalStateException
که در منبع قبل از اندروید 11 وجود داشته است ، وارد می شود.
use_set_location_enabled
شناسه تغییر : 117835097
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه های سرپرست هدفمند Android 11 دیگر نمی توانند از DevicePolicyManager.setSecureSetting(ComponentName, String, String)
استفاده کنند تا Settings.Secure.LOCATION_MODE
مستهلک شده را تغییر دهند. secure.location_mode. در عوض ، آنها باید از DevicePolicyManager.setLocationEnabled(ComponentName, boolean)
استفاده کنند.
در این صفحه هر تغییر رفتار تأثیرگذاری برنامه ای که به چارچوب سازگاری در اندروید 11 اضافه شده است (API سطح 30). از این لیست در رابطه با گزینه های توسعه دهنده و دستورات ADB استفاده کنید تا برنامه خود را در هنگام آماده سازی برای هدف قرار دادن Android 11 آزمایش و اشکال زدایی کنید.
add_content_observer_flags
شناسه تغییر : 150939131
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، یک onChange(boolean, Uri, int)
وجود دارد که شامل یک آرگومان flags
عدد صحیح است.
این روش جدید یک جایگزین عمومی SDK برای برنامه هایی است که از روش اضافه بار onChange()
غیر SDK استفاده می کنند که شامل یک آرگومان userId
Integer است.
admin_app_password_complexity
شناسه تغییر : 123562444
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه های سرپرست Android 11 ، هر زمان که یک برنامه یک رمز عبور را تنظیم کند که مربوط به کیفیت رمز عبور اختصاصی نباشد ، خطایی را پرتاب کنید. به عنوان مثال ، هنگامی که کیفیت گذرواژه روی DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
تنظیم شده است ، یک برنامه قادر به تعیین حداقل طول رمز عبور نیست. در این حالت ، قبل از تلاش برای تنظیم حداقل طول رمز عبور ، برنامه ابتدا باید با روش setPasswordQuality()
تماس بگیرد و فقط در این صورت با روش setPasswordMinimumLength()
تماس بگیرید.
علاوه بر این ، هنگامی که یک برنامه سرپرست هدف قرار دادن Android 11 کیفیت رمز عبور را پایین می آورد ، هرگونه نیاز رمز عبور موجود که دیگر اعمال نمی شود ، به مقادیر پیش فرض آنها بازنشانی می شود.
app_data_directory_isolation
شناسه تغییر : 143937733
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 را هدف قرار می دهند ، دیگر نمی توانند بدون در نظر گرفتن نسخه SDK هدف برنامه دیگر ، در دایرکتوری های داده خصوصی از هر برنامه دسترسی پیدا کنند.
برای کسب اطلاعات بیشتر ، به دسترسی به دایرکتوری های خصوصی مراجعه کنید.
apn_reading_permission_change_id
شناسه تغییر : 124107808
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، دسترسی به پایگاه داده APN اکنون به مجوز مانیفست. Manifest.permission.WRITE_APN_SETTINGS
نیاز دارد.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به دسترسی محدود به دسترسی به پایگاه داده APN مراجعه کنید.
background_rationale_change_id
شناسه تغییر : 147316723
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اکنون برنامه ها باید هر بار که درخواست دسترسی به مکان دستگاه را در پس زمینه داشته باشند ، یک دلیل منطقی ارائه دهند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به راهنمای نحوه دسترسی به مکان پس زمینه در Android 11 مراجعه کنید که در مورد تغییرات حریم خصوصی مربوط به مکان در Android 11 بحث می کند.
Callback_on_Clear_Change
شناسه تغییر : 119147584
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
هر زمان که Editor.clear
فراخوانده می شود ، اکنون یک تماس تلفنی به OnSharedPreferenceChangeListener.onSharedPreferenceChanged
با یک کلید null
انجام می شود.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به تغییرات پاسخ به تماس برای onsharedpreferencechangelistener مراجعه کنید.
Callback_on_more_error_code_change
شناسه تغییر : 130595455
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
کدهای خطا اکنون برای updateAvailableNetworks(List, Executor, Consumer)
و setPreferredOpportunisticDataSubscription(int, boolean, Executor, Consumer)
گسترش یافته است.
call_back_on_changed_listener_with_switched_op_change
شناسه تغییر : 148180766
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
این یک تغییر رفتاری ظریف به startWatchingMode(String, String, AppOpsManager.OnOpChangedListener)
است. قبل از این تغییر سیستم به نام Back برای OP Switched. پس از تغییر ، سیستم در صورت عدم مشخص شدن OP ، برای OP های واقعاً درخواست شده یا همه OPS تغییر یافته تماس می گیرد.
camera_microphone_capability_change_id
شناسه تغییر : 136219221
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، سرویس های پیش زمینه فقط دوربین و میکروفون را در حالی که R.attr.foregroundServiceType
به عنوان ServiceInfo.FOREGROUND_SERVICE_TYPE_CAMERA
و ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE
به ترتیب در پرونده آشکار پیکربندی می شوند ، دریافت می کنند. در نسخه های قبلی Android ، خدمات پیش زمینه به طور خودکار قابلیت های دوربین و میکروفون را دریافت می کردند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به انواع خدمات پیش زمینه در Android 11 مراجعه کنید.
Change_background_custom_toast_block
شناسه تغییر : 128611929
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه ها دیگر نمی توانند نان تست های سفارشی را در پس زمینه ارسال کنند. با این حال ، برنامه ها هنوز هم می توانند نان تست ها را با استفاده از Toast.makeText(Context, CharSequence, int)
و انواع آن در پس زمینه ارسال کنند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، ببینید که نماهای نان تست سفارشی مسدود شده است .
change_restrict_saw_intent
شناسه تغییر : 135920175
حالت پیش فرض : این تغییر قابل تغییر نیست. فقط توسط چارچوب سازگاری ثبت شده است.
اهداف با استفاده از اقدامات android.settings.MANAGE_APP_OVERLAY_PERMISSION
و طرح داده های package
URI دیگر کاربر را برای مدیریت مجوز مرتبط به صفحه برنامه اختصاصی هدایت نمی کند. در عوض ، کاربر به صفحه ای هدایت می شود که می تواند تمام برنامه هایی را که درخواست مجوز کرده اند مدیریت کند.
Change_text_toasts_in_the_system
شناسه تغییر : 147798919
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
نان تست های متنی اکنون به جای برنامه در برنامه توسط Systemui ارائه می شوند. این امر مانع از محدودیت برنامه ها در ارسال نان تست های سفارشی در پس زمینه می شود.
Default_scoped_storage
شناسه تغییر : 149924527
حالت پیش فرض : برای همه برنامه ها فعال شده است.
تمام برنامه هایی که Android 11 را هدف قرار می دهند اکنون به طور پیش فرض از ذخیره سازی Scoped استفاده می کنند و دیگر نمی توانند از ذخیره سازی Scoped خودداری کنند .
با این حال ، شما می توانید بدون توجه به نسخه SDK هدف برنامه خود و مقادیر پرچم ، برنامه خود را بدون ذخیره سازی Scoped آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات در ذخیره سازی Scoped در Android 11 ، به بخش ذخیره سازی Scoped در صفحه در مورد تغییر در ذخیره سازی اندروید در Android 11 مراجعه کنید.
inteal_intent_action_category
شناسه تغییر : 151163173
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اگر action
یا category
فیلتر قصد یک رشته خالی باشد ، سیستم خطایی را به وجود می آورد. یک اشکال در سیستم عامل قبل از Android 11 اجازه می دهد این پرونده بدون پرتاب خطایی از آن عبور کند. توجه داشته باشید که این موارد شامل مواردی نیست که این ویژگی تهی یا مفقود باشد ، زیرا همیشه خطایی را به وجود آورده است.
filter_application_query
شناسه تغییر : 135549675
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اکنون برنامه ها قبل از اینکه بتوانند جزئیات مربوط به سایر برنامه ها را در یک دستگاه دریافت کنند ، باید بسته ها و اهداف مورد نظر خود را اعلام کنند. چنین اعلامیه هایی باید با استفاده از برچسب <queries>
در مانیفست برنامه انجام شود.
برای کسب اطلاعات بیشتر در مورد نحوه پرس و جو و تعامل با سایر برنامه های نصب شده در Android 11 ، به صفحه حریم خصوصی Package Visibility مراجعه کنید.
force_enable_scoped_storage
تغییر شناسه : ارزش: 132649864
حالت پیش فرض : برای همه برنامه ها غیرفعال است.
تمام برنامه هایی که Android 11 را هدف قرار می دهند اکنون به طور پیش فرض از ذخیره سازی Scoped استفاده می کنند و دیگر نمی توانند از ذخیره سازی Scoped خودداری کنند .
با این حال ، اگر برنامه شما هنوز Android 10 (API سطح 29) یا پایین تر را هدف قرار داده است ، می توانید بدون توجه به نسخه SDK هدف برنامه خود و مقادیر پرچم ، برنامه خود را با ذخیره سازی Scoped آزمایش کنید.
برای کسب اطلاعات بیشتر در مورد تغییرات در ذخیره سازی Scoped در Android 11 ، به بخش ذخیره سازی Scoped در صفحه در مورد تغییر در ذخیره سازی اندروید در Android 11 مراجعه کنید.
get_data_connection_state_r_version
شناسه تغییر : 148535736
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای بررسی نسخه SDK برای PreciseDataConnectionState#getDataConnectionState
.
get_data_state_r_version
شناسه تغییر : 148534348
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای بررسی نسخه SDK برای getDataState()
.
get_provider_security_exceptions
شناسه تغییر : 150935354
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، getProvider(String)
دیگر هیچ استثنائی امنیتی را به وجود نمی آورد.
get_target_sdk_version_code_change
شناسه تغییر : 145147528
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای بررسی نسخه SDK برای روش SmsManager.sendResolverResult()
.
GWP_ASAN
شناسه تغییر : 135634846
حالت پیش فرض : برای همه برنامه ها غیرفعال است.
تشخیص اشکال حافظه بومی نمونه را در برنامه ها فعال می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به راهنمای GWP-ASAN مراجعه کنید.
HIRD_MAXTARGETSDK_P_HIDDEN_APIS
شناسه تغییر : 149997251
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، دسترسی به تمام رابط های غیر SDK را که بخشی از لیست max-target-p
( greylist-max-p
) برای Android 10 (API سطح 29) هستند ، حذف می کند.
HIRD_MAXTARGETSDK_Q_HIDDEN_APIS
شناسه تغییر : 149994052
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، دسترسی به کلیه رابط های غیر SDK را که بخشی از لیست max-target-q
( greylist-max-q
) برای Android 11 (API سطح 30) هستند ، حذف می کند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به رابط های غیر SDK که اکنون در Android 11 مسدود شده اند ، مراجعه کنید.
گوش دادن_انگ_چ را گوش دهید
شناسه تغییر : 147600208
حالت پیش فرض : برای برنامه هایی که Android 10 (API سطح 29) یا بالاتر را هدف قرار می دهند ، فعال می شوند.
برای بررسی نسخه SDK برای TelephonyManager.listen(PhoneStateListener, int)
.
Mission_App_Tag
شناسه تغییر : 150776642
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اکنون خطایی پرتاب می شود که فایل مانیفست یک برنامه یک برچسب application
یا instrumentation
از دست ندهد.
native_heap_pointer_tagging
شناسه تغییر : 135754954
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، تخصیص پشته بومی اکنون دارای برچسب غیر صفر در مهمترین بایت است.
برای کسب اطلاعات بیشتر ، به برچسب زدن به نشانگر Heap مراجعه کنید.
phone_state_listener_limit_change_id
شناسه تغییر : 150880553
حالت پیش فرض : برای همه برنامه ها فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، اکنون محدودیت در تعداد اشیاء PhoneStateListener
وجود دارد که هر فرآیند ممکن است از طریق TelephonyManager.listen(PhoneStateListener, int)
ثبت شود. حد پیش فرض 50 است که ممکن است با به روزرسانی های پیکربندی دستگاه از راه دور تغییر یابد. این حد با استفاده از یک IllegalStateException
است که توسط TelephonyManager.listen(PhoneStateListener, int)
پرتاب می شود ، هنگامی که روند توهین آمیز سعی در ثبت نام بیش از حد شنوندگان دارد.
PREESION_META_REFLECTION_BLACKLIST_ACCESS
شناسه تغییر : 142365358
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 را هدف قرار می دهند دیگر نمی توانند از یک لایه اضافی بازتاب برای دسترسی به رابط های غیر SDK که محدود هستند استفاده کنند.
process_capability_change_id
شناسه تغییر : 136274596
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، Flag Context.BIND_INCLUDE_CAPABILITIES
اکنون می تواند برای عبور از قابلیت های هنگام استفاده از فرآیند مشتری به یک سرویس محدود استفاده شود.
remove_android_test_base
شناسه تغییر : 133396946
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای برنامه هایی که Android 11 را هدف قرار می دهند ، کتابخانه android.test.base
حذف شده است اگر برنامه به android.test.runner
بستگی نداشته باشد (زیرا به کلاسهای کتابخانه android.test.base
بستگی دارد).
Request_accessibility_Button_Change
شناسه تغییر : 136293963
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برای خدمات دسترسی به Android 11 ، پرچم FLAG_REQUEST_ACCESSIBILITY_BUTTON
اکنون باید در پرونده ابرداده خدمات دسترسی مشخص شود. در غیر این صورت ، پرچم نادیده گرفته می شود.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به استفاده از دکمه دسترسی در پرونده ابرداده مراجعه کنید.
Resources_arsc_compressed
شناسه تغییر : 132742131
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه هایی که Android 11 (API سطح 30) را هدف قرار می دهند در صورتی که حاوی یک resources.arsc
فشرده شده باشند ، نصب نمی شوند.
برای کسب اطلاعات بیشتر در مورد این تغییر ، به پرونده های منابع فشرده شده مراجعه کنید.
محدود کردن_ استورج_ACCESS_FRAMEWORK
شناسه تغییر : 141600225
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
اگر برنامه شما Android 11 را هدف قرار داده و از چارچوب Access Access (SAF) استفاده می کند ، دیگر نمی توانید با استفاده از اقدامات ACTION_OPEN_DOCUMENT
و ACTION_OPEN_DOCUMENT_TREE
به برخی از دایرکتوری ها دسترسی پیدا کنید. برای کسب اطلاعات بیشتر در مورد این تغییرات ، به بخش محدودیت های دسترسی سند در صفحه مراجعه کنید که به روزرسانی های مربوط به حریم خصوصی مربوط به ذخیره سازی در Android 11 بحث می کند.
selinux_latest_changes
شناسه تغییر : 143539591
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
این برنامه های تغییر دروازه به دامنه untusted_app_rgetsdk selinux دسترسی پیدا می کنند. این یکی از تغییرات اساسی در چارچوب سازگاری است که به برنامه ها اجازه می دهد تغییرات دیگری را که توسط targetSdkVersion
درج شده اند بدون تغییر targetSDKVersion
برنامه خود ، تغییر دهند. به همین دلیل ، شما نباید این تغییر را برای برنامه ای که Android 11 را هدف قرار می دهد غیرفعال کنید ، یا برنامه عملکردی نخواهد داشت.
این تغییر هیچ تاثیری برای برنامه هایی که از شناسه کاربر مشترک استفاده می کنند ندارد.
throw_security_exceptions
شناسه تغییر : 147340954
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
قبل از Android 11 ، SecurityException
فقط توسط API های setEnabled
برای خطای مجوز پرتاب می شود. در Android 11 این دیگر صادق نیست و SecurityException
به هر دلیلی قابل پرتاب است که هیچکدام در معرض تماس گیرنده قرار نمی گیرند.
برای حفظ رفتار API موجود ، اگر یک شکست اجازه میراث یا عدم موفقیت اجرای بازیگر برای برنامه ای که اندروید 11 را هدف قرار ندهد ، اتفاق می افتد ، استثناء به یک IllegalStateException
که در منبع قبل از اندروید 11 وجود داشته است ، وارد می شود.
use_set_location_enabled
شناسه تغییر : 117835097
حالت پیش فرض : برای برنامه هایی که Android 11 (API سطح 30) یا بالاتر را هدف قرار می دهند ، فعال شده است.
برنامه های سرپرست هدفمند Android 11 دیگر نمی توانند از DevicePolicyManager.setSecureSetting(ComponentName, String, String)
استفاده کنند تا Settings.Secure.LOCATION_MODE
مستهلک شده را تغییر دهند. secure.location_mode. در عوض ، آنها باید از DevicePolicyManager.setLocationEnabled(ComponentName, boolean)
استفاده کنند.