Якщо ви хочете точно знати, скільки місця займають додатки – вам доведеться користуватися смартфоном Samsung Galaxy з прошивкою One UI 6. Адже «чистий» Android 14 та оболонки інших виробників, які списаються на нього, неправильно розраховують обсяг пам’яті, який займають компоненти системи. Через це користувачі бачать завищене використання пам’яті системою, що потенційного вводить їх в оману.
Фахівець з Android Мішаал Рахман виявив, що алгоритм Google з розрахунку зайнятого компонентами системи простору, є помилковим. Він виконав команди оболонки, щоб створити файл розміром 3 ГБ у /data/media/0, який не є шляхом до файлу і який використовується для системних файлів Android. Однак розбивка пам’яті телефону показала помітне збільшення на 3 ГБ під «Система». Тобто для користувача ОС в його смартфоні раптово почала займати більше місця.
Це відбувається тому, що Android розраховує системне сховище як простір, який використовується будь-яким контентом, крім винесених в окремі категорії типу даних (аудіо, відео, зображення, документи, кошик, ігри тощо). Це означає, що показник «Система» містить не лише системні файли Android.
Android 14 також використовує цю помилкову логіку для розрахунку використання пам’яті. Крім того, додаток Files від Google також демонструє подібне використання пам’яті системними компонентами Android, можливо, через те, що він використовує ту саму логіку атрибуції.
Оскільки інші оболонки та прошивки також спираються на цей алгоритм обрахунку зайнятої пам’яті Android, вони також показують помилкові дані. Лише Samsung вирішила цю проблему за допомогою оновлення своєї прошивки One UI 6. Рахман підтверджує, що ця прошивка переносить некласифіковані файли в розділ «Інші файли» замість розділу «Система».
Рахман також підкреслив ще одну значну аномалію в тому, як Android обчислює використання пам’яті та як виробники смартфонів рекламують це. Більшість людей думають про ємність пам’яті свого телефону в байтах, які можна виразити як експоненціальний ступінь 10. Тобто ми часто думаємо, що один гігабайт містить 1000000000 байтів. Виробники смартфонів рекламують ємність пам’яті саме в гігабайтах.
Тим часом Android вимірює обсяг пам’яті в гібібайтах, який має 1073741824 байт, оскільки він представлений як експоненціальний ступінь 2. У результаті 1 гігабайт (ГБ) дорівнює 0,93 гібібайта (ГіБ).
Через таку різницю в одиницях вимірювання користувачі смартфонів можуть вважати, що встановлена ОС Android займає більше гігабайтів, ніж насправді. У поєднанні з помилковим підрахунком використання пам’яті середній користувач Android може вважати, що елементи займають зачно більше місця, ніж насправді.