Android 12 въвежда функция за хибернация на приложения, която премахва временни файлове на неизползвани приложения, за да освободи място.
Въпреки че Google не пуска изходния код за нови версии на Android преди стабилната версия за Pixel телефоните са готови, рядко виждаме някои предстоящи функции чрез промени в кода, изпратени до AOSP Герит. Една от функциите, които очаквахме да се появи в предстоящото Android 12 освобождаването е хибернация на приложението, функция, която ще освободи място за съхранение чрез изтриване на временни файлове от неизползвани приложения. Въпреки че тази функция не се е появила в нито една от двете публично достъпни визуализации за разработчици, можем да потвърдим, че кодът за функцията присъства в изтекла конструкция които получихме наскоро.
Разглобяването на APK често може да предвиди функции, които може да се появят в бъдеща актуализация на приложение, но е възможно някоя от функциите, които споменаваме тук, да не се появи в бъдеща версия. Това е така, защото тези функции в момента не са внедрени в живата компилация и могат да бъдат изтеглени по всяко време от разработчиците в бъдеща компилация.
С пускането на Android 11 Developer Preview 3, Google добавен нова функция за „автоматично отмяна на разрешения“, която отменя разрешението на приложение, ако приложението не е използвано няколко месеца. След стабилната версия на Android 11, Google споделено повече подробности за функцията, включително екранна снимка, която показва известие, информиращо потребителя, когато разрешенията на приложението са били отменено и екранна снимка, която показва страница с настройки за „неизползвани приложения“ със списък с приложения, които автоматично са получили своите разрешения отменен.
В Android 12 Google изглежда разширява концепцията за „неизползвани приложения“ с новата функция за хибернация на приложенията. В допълнение към автоматичното отнемане на разрешения за неизползвани приложения, Android 12 също така ще изчисти временните файлове, за да освободи място за съхранение.
Активирахме нов раздел „Неизползвани приложения“ на страницата „Информация за приложението“ за всяко приложение и той съдържа нов превключвател „премахване на разрешения и освобождаване на място“. За сравнение, превключвателят за „автоматично отмяна на разрешения“ на Android 11 (по-късно преименуван на „премахване на разрешения, ако приложението не се използва“) може да бъде намерен под подстраницата „Разрешения за приложението“ на страницата „Информация за приложението“ на приложението. Тази промяна в местоположението има смисъл, тъй като новият превключвател се занимава както с разрешения, така и с хранилище, а не само с разрешения.
След като поставихме ръчно в хибернация няколко приложения, страницата „неизползвани приложения“ се появи в Настройки > Приложения. Тази страница показва приложения, които не са отваряни от няколко месеца, а в описанието й се посочва, че разрешенията са анулира, известията се спират и временните файлове се премахват, ако дадено приложение не е използвано няколко пъти месеца.
Според промените в кода ние забелязан по-рано тази година, функцията за хибернация на приложението ще изчисти кеша и/или ще изтрие артефактите на компилация, за да освободи място за съхранение. Нито едно от тези действия няма да освободи много място, но това зависи от това какво точно приложение е в хибернация и колко/какви кеширани файлове са съхранени. Потребителите, които имат устройства от по-нисък клас с по-малко място за съхранение, ще видят по-голяма полза, но всички потребители ще се възползват от това, че неизползваните приложения имат автоматично отменени разрешения.
Въпреки че компилацията, която получихме, е по-нова от Developer Preview 2, не знаем дали функцията за хибернация на приложението ще се появи публично в DP3 или Beta 1. Въпреки това, след като е наличен, неговият интерфейс на командния ред може да бъде достъпен чрез "cmd app_hibernation
" команда.
Благодарим на PNF Software, че ни предостави лиценз за използване JEB декомпилатор, професионален инструмент за обратно инженерство за приложения за Android.