Перейти до змісту
A8

Android 8.1 Developer Preview for Android APK

Видавництво: Google
Android APK Free
Завантажити vPreview 1K завантаження
Тип файлуAPK
ВерсіяPreview
Видавництво Google
Дата випуску25 жовт. 2017 р.
Дату додано25 жовт. 2017 р.
Вимоги ОСAndroid
ВимогиOnly compatible with the Nexus 5X, Nexus 6P, Pixel C, Pixel, Pixel XL, Pixel 2, and Pixel 2 XL.
Загальна кількість завантажень1 002
Завантаження на тиждень8
ЦінаFree

Опис

Android O представляє низку нових функцій і можливостей для користувачів і розробників. Цей документ висвітлює нові можливості для розробників.

Обов’язково ознайомтеся зі змінами в поведінці Android O, щоб дізнатися про сфери, де зміни платформи можуть вплинути на ваші програми.

API нейронних мереж

API нейронних мереж (NNAPI) надає додаткам апаратне прискорення для операцій машинного навчання на пристрої. API підтримує створення, компіляцію та виконання моделі на пристрої. Програми зазвичай не використовують NNAPI безпосередньо; натомість NNAPI призначено для виклику бібліотек машинного навчання, фреймворків та інструментів, які дозволяють розробникам тренувати свої моделі та розгортати їх на пристроях Android.

Щоб дізнатися більше про Neural Networks API, перегляньте довідкову документацію Neural Networks API і посібник розробника Neural Networks API.

Сповіщення

Android 8.1 Developer Preview 1 містить такі зміни в сповіщеннях:

Програми тепер можуть видавати звукове сповіщення лише раз на секунду. Звуки сповіщень, які перевищують цю частоту, не ставляться в чергу та втрачаються. Ця зміна не впливає на інші аспекти поведінки сповіщень, і сповіщення все одно публікуються належним чином.

NotificationListenerService та ConditionProviderService не підтримуються на пристроях Android із низьким обсягом оперативної пам’яті, які повертають true під час викликуActivityManager.isLowRamDevice().

Покращене націлювання на пристрої з низьким обсягом оперативної пам’яті

Android 8.1 (рівень API 27) додає дві нові константи апаратних функцій, FEATURE_RAM_LOW і FEATURE_RAM_NORMAL, до Package Manager. Ці константи дозволяють націлити розповсюдження ваших програм і APK-файлів на пристрої зі звичайним або низьким об’ємом оперативної пам’яті.

Ці константи дозволяють Play Store сприяти кращому користуванню, виділяючи програми, які особливо добре підходять для можливостей даного пристрою.

Оновлення системи автозаповнення

Android 8.1 Developer Preview (API рівень 27) містить кілька покращень у Autofill Framework, які ви можете включити у свої програми.

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

Попередній перегляд розробника дозволяє вказати об’єкт Validator, який ваша програма може використовувати, щоб вирішити, чи повинна система Android показувати інтерфейс користувача для збереження автозаповнення. Ця функція забезпечується методом setValidator() класу SaveInfo.Builder.

Клас BaseAdapter у попередньому перегляді розробника включає метод setAutofillOptions(), який дозволяє надавати рядкові представлення значень у адаптері. Це корисно для елементів керування спінером, які динамічно генерують значення у своїх адаптерах. Наприклад, ви можете використовувати метод setAutofillOptions(), щоб надати рядкове представлення списку років, які користувачі можуть вибрати як частину терміну дії кредитної картки. Служби автозаповнення можуть використовувати представлення рядків, щоб належним чином заповнити представлення, які потребують даних.

Крім того, клас AutofillManager включає метод notifyViewVisibilityChanged(View, int, boolean), який можна викликати, щоб сповістити фреймворк про зміни у видимості перегляду у віртуальній структурі. Існує також перевантаження методу для невіртуальних структур. Однак невіртуальні структури зазвичай не вимагають явного сповіщення фреймворку, оскільки метод уже викликається класом View.

Оновлення EditText

Починаючи з рівня API 27, метод EditText.getText() повертає Editable; раніше він повертав CharSequence. Ця зміна зворотно сумісна, оскільки Editable реалізує CharSequence.

Редагований інтерфейс надає цінні додаткові функції. Наприклад, оскільки Editable також реалізує інтерфейс Spannable, ви можете застосувати розмітку до вмісту в екземплярі EditText.

Програмні дії безпечного перегляду

Використовуючи реалізацію WebView API безпечного перегляду, ваша програма може виявити, коли примірник WebView намагається перейти до URL-адреси, яку Google класифікує як відому загрозу. За замовчуванням WebView показує проміжне оголошення, як показано на малюнку 1, попереджаючи користувача про відому загрозу та надаючи йому можливість все одно завантажити URL-адресу або повернутися до попередньої безпечної сторінки.

У Android 8.1 Developer Preview ви можете програмно визначити, як ваша програма реагує на відому загрозу:

Ви можете контролювати, чи ваша програма повідомляє про відомі загрози Безпечному перегляду.

Ви можете дозволити програмі автоматично виконувати певну дію, як-от повернення до безпечного стану, щоразу, коли вона зустрічає URL-адресу, яку Безпечний перегляд класифікує як відому загрозу.

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

Екстракт мініатюр відео

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

Ми рекомендуємо використовувати цей метод замість getFrameAtTime(), який може витрачати пам’ять, оскільки повертає растрове зображення з такою самою роздільною здатністю, що й вихідне відео. Наприклад, кадр із відео 4K буде растровим зображенням розміром 16 МБ, набагато більшим, ніж вам знадобиться для мініатюрного зображення.

API спільної пам'яті

Android 8.1 (рівень API 27) представляє новий клас SharedMemory. Цей клас дозволяє створювати, відображати та керувати анонімною спільною пам’яттю, яка може використовуватися кількома процесами або програмами.

WallpaperColors API

Android 8.1 Developer Preview (API рівень 27) додає підтримку для керування кольорами шпалер. Ця функція дає змогу створювати об’єкт WallpaperColors із растрового зображення, малювати або використовувати перші три візуально найбільш репрезентативні кольори. Ви також можете отримати деталі перших трьох помітних кольорів шпалер.

Щоб створити об’єкт WallpaperColors, виконайте одну з таких дій:

Щоб створити об’єкт WallpaperColors за допомогою трьох кольорів, створіть екземпляр класу WallpaperColors, передавши основний, вторинний і третинний колір. Основний колір не має бути нульовим.

Щоб створити об’єкт WallpaperColors із растрового зображення, викличте метод fromBitmap(), передавши джерело растрового зображення як параметр.

Щоб створити об’єкт WallpaperColors із креслення, викличте метод fromDrawable(), передавши джерело креслення як параметр.

Щоб отримати деталі основного, вторинного або третинного кольорів із шпалер, викличте такі методи:

getPrimaryColor() повертає найбільш помітний колір шпалер.

getSecondaryColor() повертає другий найвидатніший колір шпалер.

Метод getTertiaryColor() повертає третій найвидатніший колір шпалер

Щоб повідомити систему про будь-які значні зміни кольору, викличте метод notifyColorsChanged(). Цей метод запускає подію життєвого циклу onComputeColors(), де ви маєте можливість надати новий об’єкт WallpaperColors.

Щоб додати слухач для змін кольору, ви можете викликати метод addOnColorsChangedListener(). Ви також можете викликати метод getWallpaperColors(), щоб отримати основні кольори шпалер.

Оновлення відбитків пальців

Клас FingerprintManager представив такі коди помилок:

FINGERPRINT_ERROR_LOCKOUT_PERMANENT - користувач забагато разів намагався розблокувати свій пристрій за допомогою пристрою для зчитування відбитків пальців.

FINGERPRINT_ERROR_VENDOR – сталася помилка пристрою зчитування відбитків пальців певного постачальника.

Подібні програми

Альтернативи

Більше від цього видавця