Android 11 ще засили скритите ограничения на API и ще премахне мета-отражението

Android 9 Pie въведе скрити API ограничения и сега Android 11 ще засили тези ограничения, за да премахне байпаса на мета-отражението.

За тези от вас, които не са запознати, Google въведе доста досадна промяна в Android 9 Pie, която засяга разработчиците ентусиасти, които искат да прокарат границите на възможното в Android. Говоря, разбира се, за добавянето на скрития черен списък на API. С намерението да насърчи стабилността на приложението Google блокира достъпа до повечето скрити API – API, които съществуват в рамката на Android, но не са документирани в Android SDK. Тези API можеха да бъдат достъпни чрез отражение до Android 9 Pie и в момента все още могат да бъдат достъпни чрез заобиколното решение за мета отражение.

Ако нямате представа за какво говоря, вероятно трябва да го направите прочетете статията, която написах преди няколко месеца по тази тема. Ще обясни всичко, което трябва да знаете за мета отражението и как работи. За съжаление, изглежда, че Google е забелязал това решение (упс). В нов ангажимент към AOSP Google въведе код за „втвърдяване“ на скритите API проверки на Android. Това основно означава, че мета отражението вече няма да работи.

Разбира се, това няма да засегне всички приложения. Точно както при оригиналния черен списък на API, ще бъдат засегнати само приложения, насочени към Android 11 (API ниво 30) или по-нова версия. Все още можете да се насочите към API ниво 29 или по-ниско и да използвате мета отражение. С Play Store's прогресивно нарастващи минимални целеви изисквания за SDK, обаче, това няма да е валидно решение за дълго.

Понастоящем не знам за заобиколни решения за приложения, насочени към API 30. Android 11 обаче е далече, така че има голям шанс някой да намери начин да възстанови достъпа. Междувременно, ако използвате скрити API, може да искате подадете искане те да бъдат публично достояние в Android 11. Ако сте добри в анализирането на C++ и Java и искате да опитате да „поправите“ тази малка ситуация с черния списък, разгледайте съответния ангажимент.