Пропонуємо вашій увазі частковий переклад статті Мішаала Рахмана про нові можливості Android 13

Google лиш щойно оприлюднив фінальний бета-реліз Android 12L з новими функціями для планшетів та інших пристроїв з великими екранами. Але компанія також вже показала й Android 13 – наступне велике оновлення ОС. Цей перший реліз дає нам змогу оцінити вигляд Android 13 і додає багато нових функцій, оновлень API, поліпшень користувацького інтерфейсу та поведінкових змін на платформі Android 13. У цьому матеріалі ми ретельно розглянемо ці зміни.

Перш ніж ми почнемо – невеличка ремарка: Google випустив лише першу версію Android 13 (Developer Preview), аби розробники з нею ознайомилися. Тобто буде ще багато додаткових змін у наступних версіях.

Коли вийде Android 13?

Згідно з графіком релізів, фінальна версія Android 13 очікується у третьому кварталі 2022 року. Перед тим буде два релізи для розробників і чотири бета-релізи. Планується, що платформа стане стабільною у червні 2022 року у третій бета-версії. Коли це станеться, SDK та NDK API, а також системні поведінки Android 13 вже не змінюватимуться.

Детальний огляд Android 13 Developer Preview

Графік релізів Android 13. Джерело: Google

Android 13 можна встановлювати на ПК через Android Emulator, на деякі пристрої Pixel через відповідні образи прошивки, а також на пристрої, що реалізують технологію Project Treble через образ Generic System Image. Сумісні з поточною версією Android 13 Developer Preview пристрої Pixel – це Pixel 4, Pixel 4 XL, Pixel 4a, Pixel 4a (5G), Pixel 5, Pixel 5a with 5G, Pixel 6, and Pixel 6 Pro.

Версія Developer Preview призначена лише для розробників, тож встановлюється лише вручну. Коли вийде перша бета-версія Android 13, користувачі зможуть приєднатися до бета-програми Android і отримати новий реліз у звичайний спосіб оновлень через бездротову передачу даних.

Які нові функції є в Android 13?

Новий системний діалог вибору фото

Google запровадив Scoped Storage – обмежений доступ додатків до файлової системи – в Android 10, аби додатки з широкими дозволами на зчитування даних із зовнішнього сховища не мали доступу до важливих файлів користувачів. Завдяки Scoped Storage додатки мають запрошувати доступи лише до конкретних папок, файлів чи їх типів, залежно від потреб. Додатки можуть використовувати наявні API для доступу до стандартних папок, або ж запропонувати користувачу надати такий доступ вручну через системний додаток для вибору файлів.

Системний додаток Files для вибору файлів у Android має базові можливості. У Android 13 до нього ще додається новий діалог для вибору фото. Він зробить наочнішим вибір конкретних фото та відео, доступ до яких користувач хотів би надати якійсь програмі. Новий діалог працюватиме для локального і для хмарного сховища даних.

Детальний огляд Android 13 Developer Preview

Додатки можуть використовувати новий діалог в Android 13, аби користувач сам обрав, до яких фото і відео дати доступ, не відкриваючи доступ до всіх медіафайлів. Цей діалог також з’явиться на ОС Android 11 і вище, включно з Android Go.

Налаштування мови для окремих додатків

Вибір бажаної мови в налаштуваннях ОС поширюється на всю систему, що не завжди зручно для тих, хто розмовляє кількома мовами. Деякі додатки дозволяють перемкнути мову інтерфейсу, але не всі. Аби зменшити об’єми написання розробниками типового коду і покращити сумісність із регіональними стандартами додатків, Android 13 надає новий API з даними про мову, яку хотів би бачити користувач.

Користувачі можуть змінити мову окремих додатків у Android 13 у Settings > System > Languages & input > App Languages. Додатки повинні своєю чергою мати локалізацію під бажану мову. Змінити мову також можна у Settings > Apps > All apps > {app} > Language.

Детальний огляд Android 13 Developer Preview

Налаштування мови для окремих додатків у Android 13

Швидкий запуск сканера QR-кодів

QR-коди стали важливим інструментом під час пандемії COVID-19. Це дешевий і легкодоступний спосіб для бізнесів привести користувачів на певний вебсайт, не взаємодіючи з ними напряму. У зв’язку з цим, Google додає можливість швидко запустити сканер QR-кодів.

Android 13 додає нову плитку у шторку для швидких налаштувань для запуску сканера. Сама ОС не матиме такого сканера, але підтримуватиме запуск додатків, які це вміють. На пристроях із сервісами Google таким додатком за замовчуванням, скоріш за все, стане Google Lens.

Детальний огляд Android 13 Developer Preview

Зліва: плитка запуску сканера неактивна. Справа: плитка активна.

Ще кілька нових плиток у шторці швидких налаштувань

На додачу до сканера QR-кодів, Google додала кілька нових плиток, зокрема:

  • менеджер активних процесів (певно, це для розробників);
  • кольорова корекція;
  • режим користування телефоном однією рукою.

Детальний огляд Android 13 Developer Preview

Зліва: плитка для менеджера активних процесів. По центру: менеджер активних процесів. Справа: плитки для режиму користування однією рукою і кольорової корекції

Автоочистка буфера обміну

Android має буфер обміну, доступний всім програмам для додавання туди й вичитування звідти тексту. Багато клавіатур, як-от Google’s Gboard, доповнюють цю функцію базою даних для зберігання різних об’єктів. Gboard навіть автоматично очищає з буфера всі записи, старші за одну годину.

В теорії, будь-який додаток може очистити головний буфер обміну, якщо додаток запущений не у фоновому режимі, або ж якщо він є методом вводу тексту за замовчуванням в Android 10+. Але сама ОС не очищає буфер. Таким чином, будь-який запис у буфері обміну може бути зчитаний якимось додатком, навіть якщо пройде багато часу. Швидше за все, ОС повідомить користувача про це push-повідомленням.

Android 13 впроваджує функцію автоочистки буфера обміну. Вона вимкнена за замовчуванням. Якщо її увімкнути, то вона видалятиме все з буфера через певний час (за замовчуванням це 60 хв, як і у Gboard).

Простіше встановлювати додатки у гостьові профілі

При створенні профіля гостьового користувача в Android 13 власник пристрою може обрати додатки, які будуть встановлені для цього профіля. Дані профіля власника не будуть доступні у гостьовому профілі, тобто гість заходитиме в облікові записи в додатках самостійно.

Детальний огляд Android 13 Developer Preview

Можна відключити реакцію кнопки Home на довге натискання

У розділі налаштувань Settings > System > Gestures > System є нове підменю для трикнопкової навігації, що дає можливість відключити виклик асистента за довгим натисканням кнопки Home.

Детальний огляд Android 13 Developer Preview

Події за останні сім днів у панелі приватності

У Android 12 додали панель приватності Privacy dashboard, що показує, які додатки користувалися “небезпечними” системними дозволами. Панель показує дані за останні 24 години, але в Android 13 зараз тестується можливість показувати події за останні сім днів.

Детальний огляд Android 13 Developer Preview

Ця можливість вимкнена за замовчуванням. Є шанс, що її також додадуть до Android 12.

Передача відтворення медіа на інший пристрій

У Android 13 є ознаки функції передачі відтворення медіа з одного пристрою на інший. Функція ще в розробці, оцінити її роботу складно. Деякі можливості можна увімкнути через командний рядок.

Детальний огляд Android 13 Developer Preview

Угорі екрана з’являється панель для передачі відтворення медіа.

Видання Android Police стверджує, що ця панель з’являтиметься, якщо користувач запустить відтворення на одному пристрої, як-от смартфон, і достатньо наблизиться до свого іншого відповідного пристрою, приміром, планшета. Кнопка пропонуватиме перемикнути відтворення з одного пристрою на інший. Як саме це відбуватиметься, поки неясно.

Режим хаба

Google вірить у майбутнє планшетів, тож вони нещодавно інвестували у новий підрозділ Android для планшетів. Він впроваджував нові функції в Android 12L – версії ОС для пристроїв з великими екранами. Деякі з цих змін для Android 12L покращують загальну зручність користування планшетами, але в Android 13 хочуть приділити увагу одній конкретній можливості їх застосування.

У Android 13 Developer Preview 1 вже доступні перші напрацювання для режиму хаба (внутрішня назва функції – “комунальний режим”). Він дозволить доступ до одного і того ж додатку для кількох користувачів у спільному середовищі. По наявному програмному коду видно, що користувачі зможуть обирати додатки з переліку тих, що підтримують режим хаба. Поки незрозуміло, які будуть вимоги до додатків, аби вони підтримували такий режим. Після вибору додатки будуть доступні кільком користувачам у спільному середовищі. Основний користувач також зможе обмежити мережі Wi-Fi, у яких працюватиме спільний доступ до додатків – так звані довірені мережі.

Ще до кінця не ясно, як виглядатиме спільне середовище. Спочатку ми думали, що ним стане екран блокування планшета. Для цього екрану в Android 13 додалися інші функції, пов’язані з багатокористувацьким режимом. Але у новому програмному коді є відсилки до так званих “dreams” – в Android так називають інтерактивні скрінсейвери. Тобто, схоже, що цю функцію хочуть, по-перше, переробити, і по-друге, пов’язати її з режимом хаба. Крім цього, у ядрі системи та в Android 13 з’явився новий програмний код для роботи з док-станціями. У сумі це натякає, що Google планує щось серйозне для планшетів, які стоятимуть стаціонарно десь у доку.

Режим хаба ще в розробці, тож ми не можемо продемонструвати його роботу. Але ми принаймні змогли дістатися до екрана вибору довірених мереж.

Детальний огляд Android 13 Developer Preview

Доповнення до скрінсейверів

Google додала скрінсейвери в Android ще у версію 4.2 Jelly Bean, але з того часу у них було мало оновлень. Маємо зазначити, що скрінсейвери раніше називалися “daydreams”, але їх перейменували у версії 7.0 Nougat, аби не плутати з закинутою вже платформою віртуальної реальності для смартфонів Daydream VR. Google досі називає скрінсейвери “dreams”, і це важливо знати, бо в Android 13 з’явилося багато коду для цих “dreams”. Очікуються суттєві оновлення.

Новий код в Android 13 призначений для додавання нового шару поверх скрінсейверів, що дозволить додавати нові елементи інтерфейсу (так звані “complications”). У системі Wear OS таке вже є: поверх циферблату годинника можна виводити додаткову інформацію. Схоже, скрінсейвери запозичать цю ідею, але поки нам не відомо, що саме можна буде так показати, окрім заряду батареї.

Google напевно має великі плани на скрінсейвери, але поки мусимо чекати на наступні релізи, аби дізнатися більше. Зважаючи на те, що ми бачили, компанія точно готує багато нового, але складно сказати, чи вони встигнуть все зробити до виходу фінальної версії Android 13.

Що нового у користувацькому інтерфейсі Android 13?

Панель задач може показувати до шести додатків

Панель задач, яку Google впровадила в Android 12L, може показувати до шести додатків, а не п’яти, як раніше. Там також можуть показуватися рекомендовані додатки.

Детальний огляд Android 13 Developer Preview

Новий дизайн вибору каналу відтворення медіа

Google додала в Android 10 можливість вибирати канал відтворення аудіо із доступних варіантів, як-от підключених по Bluetooth пристроїв. Це вікно відкривається по кнопці у правому верхньому куті медіаплеєра. У Android 13 інтерфейс цього вікна переробили.

Детальний огляд Android 13 Developer Preview

Новий інтерфейс зі збільшеним слайдером рівня гучності для кожного підключеного пристрою

Редизайн медіаплеєра

Google міняла елементи керування медіаплеєром в Android 11, аби додати підтримку кількох сесій і інтеграцію зі шторкою сповіщень. У Android 13 перероблять власне інтерфейс плеєра.

Детальний огляд Android 13 Developer Preview

Зліва: медіаплеєр в Android 12L. Справа: медіаплеєр в Android 13 (у розробці).

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

Беззвучний режим відключає всю вібрацію

Якщо перемикнутися в режим без звуку, то в Android 13 повністю відключається вібрація, включно з вібрацією при взаємодії з інтерфейсом, як-от при навігації жестами. У Android 12L налаштування вібрації теж стає неактивним і з’являється відповідне попередження, але в реальності пристрій продовжує реагувати вібрацією на взаємодію з інтерфейсом. У Android 13 такого вже нема.

Кнопка поділу екрану в режимі “картинка в картинці” повертається

Кнопка поділу екрану була вперше додана в Android 12L. Вона з’являлася на вікнах “картинка в картинці”, якщо відкрити інший додаток. Дотик до кнопки запускав обидва додатки у режимі поділу екрану як пару додатків. Врешті цю можливість відключили за замовчуванням у третій беті Android 12L, але вона знову з нами в Android 13 Developer Preview 1.

Ця функція, швидше за все, буде увімкнена лише для пристроїв з великими екранами.

Вибір користувача на екрані входу

Android 13 дає можливість показувати великий перемикач профілів користувачів на екрані входу в систему (там, де вводиться пін-код, пароль чи графічний ключ). У портретній орієнтації перемикач буде вгорі, в альбомній – зліва. За замовчуванням ця можливість відключена.

Детальний огляд Android 13 Developer Preview

Зміна орієнтації екрана входу на великих пристроях

Традиційно цей екран в Android не мінявся при зміні орієнтації пристрою. Тепер ця можливість за замовчуванням увімкнена для пристроїв з великими екранами.

Детальний огляд Android 13 Developer Preview

Нові динамічні кольори Material You

Google впровадила динамічні кольори – одну з ключових особливостей нового стилю Material You – у Android 12 на телефонах Pixel. Google стверджує, що підтримка динамічних кольорів буде на інших виробників у найближчому майбутньому завдяки новим вимогам для роботи сервісів Google. Рушій Google для динамічних кольорів під кодовою назвою monet обирає один колір із фону на екрані телефона і генерує п’ять тональних комбінацій, кожна яких має 13 кольорів у близьких тонах з різною яскравістю. Ці 65 кольорів доступні для зчитування для додатків, аби вони могли підлаштовувати свої теми у цей стиль.

Рушій може на льоту міняти відтінок кожного з цих кольорів. Google, схоже, користується цим у новій функції Android 13, яка дозволить користувачам обирати додаткові тональні комбінації.

Поведінкові зміни в Android 13

Дозвіл на доступ до точок Wi-Fi поблизу

Місцезнаходження пристрою можна вирахувати, відслідковуючи доступні йому мережі і пристрої з Bluetooth. Через це Google обмежила додаткам доступ до результатів сканування Wi-Fi та Bluetooth, якщо у цих додатків немає дозволу на доступ до геолокації. Такі обмеження стали логічним кроком Google, інакше можна було би визначити, де фізично перебуває користувач пристрою. Але це призвело до непорозумінь з боку самих користувачів, у яких складалося враження, що додатки відслідковують їх геолокацію.

Аби зняти частину непорозумінь, Google в Android 12 виокремила ряд дозволів для додатків, яким потрібен Bluetooth для роботи. У таких випадках додаток питатиме згоди користувача саме на доступ до даних про пристрої поблизу. Розробники таких додатків можуть також виводити системне повідомлення, що вони не просять доступ до геолокації.

У Android 13 Google впроваджує подібне і для Wi-Fi, аби розділити сканування доступних мереж і геолокацію.

Швидша розстановка переносів у тексті

Якщо текст у додатку на Android доходить до краю рядка, то він не вийде за межі екрану, а перенесеться на наступний рядок. Також наприкінці рядка може додаватися дефіс як знак переносу, аби текст легше читався. Водночас автоматична розстановка переносів впливала на швидкодію системи. Google виявила, що ця функція забирала до 70% процесорного часу, який витрачався на обробку тексту, тому в Android 10 її відключили за замовчуванням.

У Android 13 ця система працює набагато швидше, з приростом до 200%. Таким чином, розробники можуть сміливо користуватися нею, не хвилюючись за швидкість роботи додатку.

Економія ресурсів у Android

З кожним новим релізом Google все більше обмежує роботу додатків у фоновому режимі, і Android 13 – не виняток.

У ОС з’являється нова система економії ресурсів The Android Resource Economy (TARE). Вона працює за принципом виділення певної кількості “кредитів” для додатків, які можуть “витрачати” їх на запуск нових задач у системі. Загальна кількість “кредитів” залежатиме від різних факторів на кшталт поточного рівня заряду акумулятора, а кількість “кредитів” для старту кожної задачі залежатиме від її сутності.

Детальний огляд Android 13 Developer Preview

Що нового в API в Android 13?

API для тем іконок

Google підготувала третю версію їх стилю Material разом з релізом Android 12 минулого року. Одна з ключових особливостей Material You – це назва нової версії дизайну – динамічний колір. Це п’ять динамічних тональних кольорових комбінацій, кожна з яких має 13 кольорів різної яскравості. API для роботи з цими кольорами доступний і для сторонніх додатків. Додатки можуть або дотримуватися рекомендацій стилю Material по роботі з динамічним кольором, або розробити власний підхід до підбору кольорової гами свого інтерфейсу. Кольорові комбінації формуються на основі одного кольору, який зазвичай береться із фону робочого столу користувача, тому виходять дуже різні кольорові теми інтерфейсу, і у користувача складається враження глибокої персоналізації.

Інтерфейси додатків – лише один варіант застосування динамічних кольорів. Можна також міняти кольори віджетів і деяких піктограм додатків у Android 12 на пристроях Pixel. Якщо ця експериментальна функція увімкнена, то динамічні кольори мінятимуться для піктограм додатків Google при кожній зміні фону. Перелік піктограм був фіксований.

Детальний огляд Android 13 Developer Preview

У Android 12 на Pixel мінялися кольори лише піктограм додатків від Google. У Android 13 мінятимуться всі піктограми. Джерело: Google

У Android 13 динамічні кольори Material You працюватимуть для всіх піктограм додатків. Розробник просто має додати монохромний варіант піктограми для свого додатку.

У Google говорять, що такі піктограми спочатку будуть лише на пристроях Pixel, але компанія працює зі своїми партнерами, аби ця можливість з’явилася і на інших пристроях.

Детальний огляд Android 13 Developer Preview

API для додавання плиток у швидкі налаштування

У Android 7.0 Nougat Google надала API, що дозволило додаткам встановлювати власні плитки у шторку швидких налаштувань. Однак для цього користувач мусить відкрити шторку, зайти в редагування для швидких налаштувань і гортати перелік плиток, аби знайти потрібну. Додатки мають різні способи сповістити користувача, що у них є такі плитки, але встановлювати їх все одно треба вручну.

Детальний огляд Android 13 Developer Preview

Скріншот прикладу використання нового API, аби запропонувати користувачу додати нову плитку до швидких налаштувань. Джерело: Google.

Однак починаючи з Android 13, буде доступний новий API, який дозволить пропонувати користувачам відразу додати нову плитку додатку до швидких налаштувань. Виклик цього API покаже системний діалог, що дозволить юзеру одним дотиком додати нову плитку. Це полегшить користувачам процес пошуку плиток додатків.

Підтримка OpenJDK 11

Google вже певний час експериментує з написанням коду для Android на Java 11 як основній версії. Компанія говорить, що вони таким чином оновлять не лише ключові бібліотеки Android 13, а й переведуть Android 12 на нову версію. Тепер ключові бібліотеки Android будуть узгоджені з OpenJDK 11 LTS, що принесе оновлення для бібліотек і відкриє розробникам доступ до нових можливостей мови.

Дозвіл на сповіщення

На відміну від інших API, додатки не потребують жодних дозволів на показ push-сповіщень. Сповіщення в Android є ключовим способом взаємодії додатків з користувачами поза власне додатками, тому було логічно, що Google не ставила тут додаткових обмежень.

Більшість додатків використовує сповіщення, аби надсилати корисні повідомлення чи нагадування. Однак деякі додатки дозволяють собі зайвого, ставлячи у них непрохану рекламу. Android дає користувачам можливість вимкнути сповіщення для додатка чи каналу у налаштуваннях, але цей підхід має ряд недоліків. Оскільки від сповіщень треба відписуватися, а не підписуватися на них, і їх відключення заховане глибоко, то більшість користувачів залишається на стандартних налаштуваннях. Це подобається розробникам і маркетологам, які розсилають сповіщення, аби нагадати про свої додатки, але коли сповіщень стає забагато, їх важливість падає і вони тиснуть на користувачів.

Саме тому в Android 13 Google готується змінити цей спосіб взаємодії додатків і ОС. У новій версії ОС буде додатковий дозвіл на сповіщення. Додатки, які орієнтуються на 33 рівень API, не зможуть публікувати push-сповіщення, якщо у них не буде такого дозволу. Цей дозвіл вважається “небезпечним”, і для нього треба показати користувачу системний діалог, де той має погодитися дати такий дозвіл. Сповіщення від додатків без дозволу просто не будуть ніяк показуватися.

Додатки, що орієнтуються на 32 рівень API чи нижче, не потребуватимуть такого дозволу, але історія змін вимог Google Play до рівня API підказує, що розробників врешті змусять готувати свої додатки для 33 рівні, якщо вони хочуть опублікувати їх чи випустити оновлення для них.

Ця зміна відповідає подібній функції iOS, яка теж запитує користувачів про дозвіл отримувати сповіщення від додатків. Розробники під Android тепер муситимуть докладати зусиль, аби переконати користувачів увімкнути їхні сповіщення.