Android 12 представляє функцію сплячого режиму програми, яка видаляє тимчасові файли невикористаних програм, щоб звільнити місце.
Хоча Google не випускає вихідний код для нових версій Android до стабільного випуску для Pixel телефони готові, ми рідко отримуємо уявлення про деякі майбутні функції через зміни коду, надіслані до AOSP Герріт. Одна з функцій, яку ми очікували отримати в майбутньому Android 12 випуск — це сплячий режим програми, функція, яка буде звільнити місце для зберігання шляхом видалення тимчасових файлів із програм, які не використовуються. Хоча ця функція не з’явилася в жодній із двох загальнодоступних Developer Preview, ми можемо підтвердити, що код цієї функції присутній у витік збірки які ми нещодавно отримали.
Розбирання 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.