SD Maid 2/SE
Українська

Цей переклад може бути застарілим. Читати англійську версію

Налаштування SD Maid SE

Інформація про різні кроки налаштування SD Maid SE.

SD Maid пристосовується до наявного доступу. Хоча всі дозволи необов’язкові, якщо не надати жодного дозволу, більшість функцій не працюватиме. SD Maid працює найкраще, коли виконано всі пункти налаштування.

SD Maid автоматично спробує виконати деякі кроки налаштування, якщо доступний root або доступ ADB.

Деякі дозволи перетинаються або є надмножинами одне одного, наприклад, ви можете надати SD Maid і root-доступ, і доступ ADB. SD Maid завжди намагається використати найкращий можливий спосіб доступу для будь-якої дії, а якщо це не вдається, повторює спробу з другим за якістю способом, потім із третім тощо. Надання SD Maid дозволів, що перетинаються, підвищує надійність.

Порада: деякі кроки налаштування нижче передбачають виконання команд ADB. Якщо на вашому комп’ютері не налаштовано ADB, ви можете скористатися Web ADB Helper, щоб виконати їх прямо з браузера.

Керування сховищем

Дозвіл «Керування сховищем» є дозволом на широкий доступ до сховища.

Статистика використання

Дозволи статистики використання дають SD Maid доступ до розмірів даних і кешу, а також до відомостей про те, чи працює додаток і коли його востаннє використовували.

Система доступу до сховища

SD Maid використовує Android Storage Access Framework (SAF), щоб отримати доступ до додаткових областей сховища. SD Maid попросить вас надати доступ до певних шляхів, які недоступні лише з дозволом «Керування сховищем» (Just Android Things™️).

Повторюйте цей процес, доки всі шляхи не стануть зеленими.

SAF: усунення проблем

На випадок, коли щось іде не за планом.

SAF: доступ до Android/data|obb

На Android 11 та Android 12 надати доступ до Android/data|obb неможливо з новішими версіями системного додатка Files (com.google.android.documentsui). Якщо встановлений додаток Files орієнтований на Android 14 (рівень API 34) або новіший, SD Maid приховує запит доступу SAF для цих шляхів (як на Android 13+).

Google Play оновлює додаток Files через службу Google Play system update. Оригінальний додаток «Files» (зібраний для рівня API 31, наприклад aml_doc_310851020 (310851020)), що постачався з ОС Android 12, дозволяє SD Maid відкрити вікно вибору шляху SAF для Android/Data, тоді як найновіший додаток «Files» (зібраний для рівня API 34 або новішого, наприклад 14-10492947 (340916000)) цьому перешкоджає.

Обхідний шлях:

Можна видалити оновлення додатка Files, а потім налаштувати SD Maid. Повторне оновлення додатка Files не скасує вже надані дозволи.

або

Цю команду також можна виконати за допомогою Web ADB Helper.

adb uninstall com.google.android.documentsui

SAF: OPEN_DOCUMENT_TREE ActivityNotFoundException

Надання доступу до шляхів через Storage Access Framework потребує додатка, який дає користувачеві змогу підтвердити шляхи, до яких буде надано доступ. Цей додаток називається «Documents» («Документи»). Це системний додаток, вбудований у кожен пристрій Android починаючи з Android 5.0 (com.android.documentsui або com.google.android.documentsui). Якщо ви отримуєте цю помилку, хтось видалив або вимкнув цей додаток. Найчастіше хтось запустив надто завзятий інструмент для «очищення від bloatware», який його вимкнув. Його можна знову ввімкнути через ADB:

Ці команди також можна виконати за допомогою Web ADB Helper.

adb shell pm enable com.android.documentsui
or
adb shell pm enable com.google.android.documentsui

SAF: порожнє вікно

Якщо вікно для надання доступу до шляхів порожнє, то, можливо, вимкнено пакет постачальника зовнішнього сховища (com.android.externalstorage) (імовірно, надто завзятим інструментом для «очищення від bloatware»). Його можна знову ввімкнути через ADB:

Цю команду також можна виконати за допомогою Web ADB Helper.

adb shell pm enable com.android.externalstorage

Повторний запуск Google Play system update відновить оновлення. Також можна вручну завантажити оновлену версію з APKMirror.com.

Сповіщення

Без цього дозволу SD Maid не зможе показувати сповіщення. На деяких ROM це може погіршити надійність роботи у фоні.

Інвентар додатку

SD Maid потребує дозволу QUERY_ALL_PACKAGES, щоб перевіряти, які додатки встановлено на вашому пристрої (тобто «видимість переліку встановлених додатків»). Див. також «Дозвіл статистики використання»

Дозвіл QUERY_ALL_PACKAGES обов’язковий для:

Цей дозвіл існує починаючи з Android 11 і зазвичай надається за замовчуванням. Починаючи з Android 14 існують пристрої (наприклад, #1015, #1354), на яких цей дозвіл не надається за замовчуванням або може бути відкликаний.

Недійсний список додатків

На деяких пристроях дозвіл «App list» («Список додатків», QUERY_ALL_PACKAGES / GET_INSTALLED_APPS) надано, але система все одно повертає неповний список встановлених додатків, наприклад список, у якому бракує основних системних пакетів, як-от android. Коли SD Maid це виявляє, він показує в картці налаштування попередження «Недійсний перелік додатків» і примітку «Можливе обмеження пристрою» замість того, щоб продовжувати.

SD Maid зупиняється тут навмисно: якщо він не бачить повного списку встановлених додатків, він не може надійно визначити, які файли належать додатку, що досі встановлений. Продовження попри це могло б означати видалення даних, які належать додатку, якого SD Maid просто не побачив, тому функції, пов’язані з додатками, залишаються вимкненими, доки не буде доступний повний список.

Що можна спробувати:

Якщо дозвіл «App list» («Список додатків») уже надано, а список і далі вважається недійсним, зазвичай це обмеження пристрою, а не те, що можна виправити: деякі системи (наприклад, HarmonyOS або сильно змінені збірки Android) ніколи не передають стороннім додаткам повний список додатків. Приклад див. у #2441.

У такому разі інструменти, пов’язані з додатками (Пошук рештків, Очищувач додатків, Управління додатками), залишаються вимкненими для захисту ваших даних, але Аналізатор сховища і далі працює: він показує, скільки місця зайнято у вашому сховищі, лише з меншою деталізацією, бо розміри папок показуються лише для перегляду і не можуть бути віднесені до окремих додатків.

Сервіс спеціальних можливостей

Сервіс спеціальних можливостей дає SD Maid змогу взаємодіяти з вашим пристроєм як людина, тобто бачити екран і натискати кнопки. SD Maid може використовувати його для автоматизації монотонних дій, як-от натискання «Очистити кеш» у сотнях додатків. Сервіс спеціальних можливостей є службою, яку сам додаток запустити не може: її має запустити система, оскільки такий тип служби надає додатку додатковий доступ до вашого пристрою.

ACS: усунення проблем

Служба може перестати працювати й вимагати повторного ввімкнення за різних обставин:

ACS: служба вимкнена

Деякі ROM (наприклад, MIUI) відомі тим, що агресивно зупиняють усе, що не внесено до білого списку виробником пристрою. Якщо вас постійно просять знову ввімкнути сервіс спеціальних можливостей, можливо, система вимикає його щоразу, коли SD Maid не використовується активно.

Спробуйте вимкнути оптимізацію батареї, а на ROM MIUI є додатковий параметр «Autostart» (автозапуск), увімкніть його для SD Maid. Для пристроїв Xiaomi/POCO/Redmi:

Також можна надати додатковий дозвіл, який дає SD Maid змогу автоматично перезапускати службу.

ACS: заблоковано Phone Manager (OnePlus, OPPO, Realme)

В OxygenOS і ColorOS попередньо встановлений додаток «Phone Manager» може самостійно вимикати сервіс спеціальних можливостей, зазвичай протягом секунди після завершення очищення. Після цього перемикач спеціальних можливостей Android справді вимкнений, тож здається, що SD Maid перестав працювати посеред виконання.

Вимкніть цю функцію в Phone Manager>Utilities>Block suspicious app activities.

На тому самому екрані зберігається список того, що було заблоковано. Записи з позначкою «Abnormal device control» («Аномальне керування пристроєм») із часом, що збігається з очищеннями, які ви запускали, підтверджують, що причина саме в цьому. Перемикач «Blocking alerts» («Сповіщення про блокування») поруч лише визначає, чи отримуєте ви сповіщення, тож коли сповіщення вимкнено, це відбувається непомітно.

ACS: увімкнення через ADB

Якщо на вашому пристрої немає способу ввімкнути сервіси спеціальних можливостей через екран (наприклад, на телевізорі), службу можна ввімкнути через ADB, виконавши:

Цю команду також можна виконати за допомогою Web ADB Helper.

adb shell settings put secure enabled_accessibility_services eu.darken.sdmse/.automation.core.AutomationService

ACS: автоматичний перезапуск служби

Примітка: це просунутий прийом, призначений для досвідчених користувачів.

Можна надати додатковий дозвіл, який дає SD Maid змогу самостійно перезапускати службу. Дозвіл називається WRITE_SECURE_SETTINGS і може бути наданий лише через ADB. Якщо ADB у вас налаштовано, виконайте цю команду, щоб надати дозвіл:

Цю команду також можна виконати за допомогою Web ADB Helper.

adb shell pm grant eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

Коли цей дозвіл надано, SD Maid може за потреби вмикати службу за допомогою команди, описаної тут. SD Maid використовуватиме це, лише якщо ви хоча б один раз увімкнули сервіс спеціальних можливостей вручну. Якщо ви знову зайдете в налаштування й скажете SD Maid не використовувати сервіс спеціальних можливостей, цей прийом автоматичного перезапуску не використовуватиметься, доки ви знову не ввімкнете сервіс спеціальних можливостей вручну.

Щоб знову забрати цей дозвіл у SD Maid, скористайтеся цією командою:

Цю команду також можна виконати за допомогою Web ADB Helper.

adb shell pm revoke eu.darken.sdmse android.permission.WRITE_SECURE_SETTINGS

Якщо ви отримуєте Operation not allowed: java.lang.SecurityException, див. тут. Деякі пристрої обмежують дозволи ADB. Перевірте, чи є в параметрах розробника додатковий параметр (наприклад, Disable Permission Monitoring), який потрібно перемкнути; після виконання команди його можна знову вимкнути.

ACS: Advanced Protection

На Android 17 і новіших режим Google Advanced Protection (розширений захист) не дає додаткам, які не є спеціалізованими засобами спеціальних можливостей (програми зчитування з екрана, доступ за допомогою перемикачів тощо), використовувати сервіс спеціальних можливостей. SD Maid є інструментом для обслуговування та очищення, тому, поки ввімкнено Advanced Protection, його сервіс спеціальних можливостей неможливо ввімкнути: Android відхиляє службу на системному рівні, навіть якщо ви намагаєтеся надати її через root або доступ ADB.

SD Maid не може зробити для себе виняток: право на це мають лише додатки, які Google класифікує як засоби спеціальних можливостей, а засоби очищення явно виключено.

У вас є два варіанти:

ACS: обмеження AppOps

Android 13+ може застосовувати додаткові обмеження до додатків, встановлених в обхід магазинів (side-loading). Тож якщо SD Maid встановлено не з відомого (для Google) джерела, як-от Google Play чи інші магазини додатків, ви, можливо, не зможете напряму надати SD Maid деякі дозволи, наприклад запустити сервіс спеціальних можливостей.

OxygenOS 15 - OnePlus

OnePlus забули (або просто не захотіли) додати дію Allow restricted settings («Дозволити обмежені налаштування») до налаштувань додатків в OxygenOS 15. Якщо ви встановлюєте не через Google Play, інсталятор має встановити прапорець INSTALL_ALL_WHITELIST_RESTRICTED_PERMISSIONS. Якщо у вас налаштовано Shizuku, можна скористатися додатком «Install with Options».

Інші ROM

Щоб зняти ці обмеження, відкрийте в системі екран налаштувань додатка SD Maid. Відкрийте меню у правому верхньому куті та виберіть Allow restricted settings («Дозволити обмежені налаштування»), після чого можна повернутися до списку сервісів спеціальних можливостей і ввімкнути службу SD Maid.

Примітка: Щоб покращити зручність використання (це сарказм), Google вирішив, що цей параметр буде видимим, лише якщо:

😮‍💨

Деяку додаткову довідкову інформацію можна знайти тут.

Root доступ

З root-доступом SD Maid має повний доступ до вашого пристрою і може виконувати найретельніше можливе сканування. Зазвичай це означає, що ви розблокували завантажувач і встановили Magisk.

Якщо SD Maid вважає, що на вашому пристрої може бути root, він спершу попросить root-доступ. Якщо root-доступ надано, SD Maid використає його, щоб надати якомога більше інших дозволів. Root-доступ є найвищим рівнем доступу, який можна дати додатку; інші дозволи тоді потрібні лише для зручності та продуктивності, тому вони не потребують окремої згоди під час налаштування, якщо SD Maid уже має root.

Доступ ADB

Доступ ADB дає SD Maid змогу використовувати інтерфейс налагодження Android (ADB) для операцій із підвищеними правами. Для цього потрібен окремий додаток, який запускає службу ADB на вашому пристрої та надає іншим додаткам доступ до неї: Porter або Shizuku. Це модифікація, яку ви можете внести у свій телефон і якою можуть користуватися інші додатки.

Вона схожа на root, але це не одне й те саме. Дозволи трохи слабші, зате модифікація не є постійною і не потребує розблокування завантажувача.

Porter

Porter є моїм підтримуваним форком Shizuku з необов’язковою підтримкою root. На його вебсайті пояснено, як його встановити й запустити. На Android 11 і новіших бездротове налагодження дає змогу запустити його без комп’ютера.

Якщо ви налаштовуєте доступ ADB вперше, використовуйте Porter. Збірки SD Maid із GitHub і F-Droid направляють вас до Porter, коли не встановлено жодного додатка для доступу ADB. Збірка з Google Play направляє вас до Shizuku в Google Play, але з Porter працює так само.

Якщо встановлено і Porter, і Shizuku, SD Maid використовує Porter. Тоді картка налаштування показує Porter встановлено, тому SD Maid чекає на Porter замість Shizuku. Запустіть Porter, щоб продовжити, або видаліть його, якщо хочете, щоб SD Maid використовував Shizuku.

Використання Shizuku

Існує дві збірки Shizuku:

Їх не можна встановити одночасно. Якщо оригінал у вас уже працює, переходити немає потреби.

Надання доступу

Після того як ви налаштували Porter або Shizuku:

Налаштування доступу ADB, якщо ви вже надали SD Maid root-доступ, не вмикає додаткових функцій, але підвищує надійність. Якщо дії з правами root не вдаються, SD Maid повторить спробу з доступом ADB.

Доступ ADB: усунення проблем

Перевірити стан доступу ADB у SD Maid можна в Налаштування > Налаштування, переглянувши картку налаштування Доступ ADB. На ній має бути напис SD Maid тепер може використовувати доступ ADB через Porter (або через Shizuku).

Shizuku ніколи не підключається

Картка показує Помилка доступу ADB і Shizuku працює, але воно ніколи не з'єднало SD Maid зі своїм допоміжним сервісом. Старіші версії показували Waiting for link with Shizuku («Очікування зв’язку з Shizuku») або Shizuku link failed («Помилка зв’язку з Shizuku»).

Відкрийте додаток Shizuku. Якщо він каже, що працює, і SD Maid є в його списку авторизованих, Shizuku налаштовано правильно, і повторне налаштування не допоможе. Збій відбувається в допоміжній службі Shizuku: вона аварійно завершується під час запуску, перш ніж встигає відзвітувати, і SD Maid здається приблизно через 15 секунд. Повторити виконує ту саму перевірку й так само зазнає невдачі.

Це помилка Shizuku (RikkaApps/Shizuku#1198), а не SD Maid, і вона ламає будь-який додаток, що використовує допоміжну службу Shizuku. Вона стосується пристроїв MediaTek, а також пристроїв із HyperOS або MIUI.

За повідомленнями, форк від thedjchi це виправляє. Щоб перейти: