Последняя версия api android

Что нового в Android

Используем новые версии

Когда мы работаем с новыми версиями, всегда есть опасность вызвать методы, которые не будут работать на старых устройствах. Чтобы избежать потенциальных ошибок, нужно делать проверки.

Чтобы Lint не ругался на классы или методы, которые не поддерживаются в API, указанной в minSdkVersion, можно пометить их аннотацией @TargetApi() и в скобках указать поддерживаемую версию API.

Также в коде можно провести проверку на версию и выполнять код в зависимости от условия:

Что нового в Android 13

Летом 2021 года началась подготовка к новой версии Android 13 (рабочее название Tiramisu).

Что нового в Android 12

18 февраля 2021 года объявили о выходе новой версии Android 12 (Android S Preview, рабочее название Snow Cone).

Появилась удобная поддержка RenderEffect из коробки, применимая к компонентам: Blur, Desaturate, Color Filter.

Что нового в Android 11

19 февраля 2020 года Гугл официально создала на сайте раздел для новой версии Android 11 (рабочее название Red Velvet Cake).

Что нового в Android 10

3 сентября 2019 года вышла финальная версия Android 10, которая в бета-версии называлась Android Q (рабочее название Quince Tart). Теперь разработчики отказались от сладких названий в пользу чисел. Оно и понятно, у котов девять жизней.

Больше нельзя запустить Activity, когда ваше приложение находится в фоновом режиме. Рекомендуемый подход: создавать уведомление, запускающее активность.

Отменён доступ к идентификаторам устройства, по которым можно было определить его уникальность. Так, Mac-адрес теперь рандомизирован, а IMEI (TelephonyManager.getDeviceId()) и серийный номер больше не доступны. Используйте сбрасываемые идентификаторы, такие как Advertising ID, Instance ID или Globally-unique ID (GUID).

Фоновое определение локации усложнилось. Система будет различать запросы местоположения, сделанные на переднем плане и в фоне. Запрос на разрешение доступа к местоположению теперь будет иметь 3 варианта: Разрешать все время, Разрешать только при использовании приложения (доступ только на переднем плане) и Запретить (нет доступа).

Что нового в Android 9 Pie

7 марта 2018 года вышла предварительная версия Android 9 P. 6 августа она получила полное название Pie (Пирог) Запись в блоге.

Indoor positioning with Wi-Fi RTT
Display cutout support
Improved messaging notifications
Multi-camera API
ImageDecoder for bitmaps and drawables
HDR VP9 Video, HEIF image compression, and Media APIs
Data cost sensitivity in JobScheduler
Neural Networks API 1.1
Autofill improvements
Open Mobile API for NFC payments and secure transactions

Что нового в Android 8.1 Oreo

25 октября 2017 вышла предварительная версия для разработчиков.

Android Go (для слабых устройств), Neural Networks API, Shared memory API.

Что нового в Android 8.0 Oreo

21 марта 2017 года впервые объявили о новой версии Android 8. 21 августа 2017 во время солнечного затмения вышла финальная версия.

Сначала была просто буква «O» в названии Android. Одно из основных предположений — популярное печенье Oreo. Предположение оправдалось.

Ограничение фоновых задач: Для сторонних программ установлены дополнительные ограничения, которые помогут уменьшить вред для аккумулятора от плохих программ. Например, приложения смогут получать всего несколько обновлений местоположения в час.

При этом, эти ограничения не распространяются на приложения, если:

  • Приложение не в фоне
  • Приложение имеет активный Foreground-сервис
  • Другое Foreground-приложение имеет соединение с текущим (как через bind service, так и через content provider).

Получается, что пока для Foreground-приложений поведение будет таким же, как и раньше.

Если foreground service отсутствует, то запрос геолокации будет изменен:

Fused Location Provider (FLP) Для Background-приложений система будет определять новое местоположение только несколько раз в час, даже если приложение явно запросило больше обновлений. Для Foreground-приложений логика работы останется без изменений Geofencing Background-приложения смогут получать обновления от Geofencing API чаще, чем обновления от Fused Location Provider GNSS Measurements, GNSS Navigation Message. Для приложений, находящихся в фоне не будут приходить обновления для сервисов GnssMeasurement и GnssNavigationMessage Location Manager Для Background-приложений система будет определять новое местоположение только несколько раз в час.

Ограничение фоновых сервисов — После того как приложение перешло в background, у него есть «окно» в несколько минут, в течение которого сервисы могут запускаться и работать. После истечения этого интервала все сервисы останавливаются, а запуск новых будет приводить к падению приложения. Используйте JobScheduler и GcmNetworkManager.

В случае если необходимо выполнять длительные задачи в фоне, рекомендуется использовать foregroundService, который будет явно говорить пользователю, что приложение работает. Стоит обратить внимание, что после того как вызвали Context.startForegroundService() необходимо в течение 5 секунд вызвать startForeground(), в противном случае система может показать ANR.

Ограничение на регистрацию Broadcast в манифесте — оставлен небольшой список исключений, которым ещё можно использовать манифест. Остальным нужно вызывать Broadcast динамически.

Доработана система уведомлений. Уведомления от каждого приложения будут делиться на несколько каналов. То есть, если, например, приложение постоянно отправляет в шторку рекламу — ее можно будет отключить через системные настройки, а не копаясь в приложении. Также отдельное уведомление можно отложить. Оно убирается из шторки, но появится там через заданное время — полчаса, час и т. д.

Можно смотреть видео в маленьком окне. Также появились новые возможности работы с дополнительными дисплеями — удаленное управление и работа.

Новое изменение для лаунчеров — адаптивные иконки. Теперь миниатюрные изображения для приложений будут подстраиваться под выбранную пользователем тему и изменять свою форму с анимацией.

Появятся дополнительные возможности для разработчиков музыкальных приложений с помощью набора AAudio API. Обещают упростить работу с выводом и записью звука и повысить качество.

поддержка Bluetooth аудиокодека LDAC и технологии Wi-Fi Aware (ранее известная как Neighbor Awareness Networking), с помощью которой можно обмениваться информацией по Wi-Fi между устройствами без подключения к точке доступа.

Читайте также:  Двигающиеся смайлики для андроид

API автозаполнения: пользователи теперь могут выбирать приложение для автозаполнения форм, аналогично тому, как они выбирают клавиатуру.

Ресурсы шрифтов в XML: шрифты теперь становятся полностью поддерживаемым типом ресурсом в Android O. Приложения могут использовать шрифты в XML-макетах, а также определять семейства шрифтов в XML – определяя стиль и весовой комплект шрифта вместе с файлами шрифтов.

Расширенная цветовая гамма для приложений: теперь разработчики могут создавать приложения с поддержкой расширенной цветовой гаммы для отображения на соответствующих дисплеях.

Поддержка навигации на клавиатуре: более надёжная и предсказуемая модель навигации при использовании клавиш «стрелки» и «табуляция».

Улучшения для WebView (просмотр веб-страниц в Android приложениях).

Оптимизация API для Java 8 и время выполнения.

У класса View появился новый метод setToolTipText(), позволяющий задать подсказку (а также getToolTipText()). Также подсказка доступна через XML-атрибут android:tooltipText. Появляется подсказка при долгом нажатии на компоненте, либо при прохождении указателя над ним (не удалось увидеть).

Подсказка может быть многострочной. Если числов символов будет больше 98, то текст подсказки будет обрезаться с выводом трёх точек.

Ожидается поддержка в библиотеке поддержки через ToolTipCompat.

ProgressDialog объявлен устаревшим.

Что нового в Android 7.1 (API 25)

5 декабря 2016 объявили о выходе Android 7.1.1.

В октябре 2016 сообщили о выходе Android 7.1 Developer Preview. Название Nougat сохранилось, поменялся только номер API 25. Константа N_MR1

App shortcuts API
Circular app icons support
Enhanced wallpaper metadata
Image keyboard support
Storage manager Intent
new APIs to support multi-endpoint calling and new telephony configuration options

Что нового в Android 7.0 Nougat (API 24)

9 марта 2016 вышла превью-версия Android 7.0 с названием N. 22 августа 2016 вышла финальная версия, которая получила название Nougat.

Поддержка Java 8 — лямбда, вискас и прочие плюшки языка.

Платформа Android 7.0 получила поддержку языка Java 8, которая требуют наличия нового компилятора Jack. Последняя версия Jack поддерживается только в Android Studio 2.1. Поэтому если вы хотите использовать возможности языка Java 8, вам понадобится Android Studio 2.1 и выполнить обновление до JDK 8.

Чтобы скомпилировать ваше приложение для платформы Android 7.0, необходимо использовать Java 8 Developer Kit (JDK 8), а для использования некоторых инструментов с Android Studio 2.1 необходимо установить Java 8 Runtime Environment (JRE 8).

Откройте проект в Android Studio, откройте окно Project Structure, выбрав File | Project Structure.

В левой панели окна щелкните SDK Location. В поле JDK Location укажите расположение Java 8 JDK (нажмите кнопку справа для просмотра своих файлов), затем нажмите OK.

Для использования API-интерфейсов Android 7.0 ваш проект должен быть сконфигурирован соответствующим образом.

Использование новых возможностей языка Java 8 не является обязательным требованием при разработке приложений для платформы Android 7.0. Если вы не хотите писать код с использованием возможностей языка Java 8, можно указать Java 7 в качестве значения совместимости для проекта, однако все-равно необходимо будет выполнить компиляцию с JDK 8 для осуществления сборки на платформе Android N.

В настоящее время Android поддерживает не все возможности языка Java 8. Однако при разработке приложений для Android 7.0 доступны следующие функции.

Кроме того, доступны следующие API-интерфейсы для реализации возможностей языка Java 8.

API-интерфейсы отражения и языковых функций:
java.lang.FunctionalInterface;
java.lang.annotation.Repeatable;
java.lang.reflect.Method.isDefault();
а также API-интерфейсы отражения, связанные с повторяющимися примечаниями, например, AnnotatedElement.getAnnotationsByType(Class).

Вспомогательные API:
java.util.function.

В Android 7.0 реализация лямбда-выражений выполнена с помощью анонимных классов. Данный подход обеспечивает их обратную совместимость и возможность выполнения в предыдущих версиях Android. При тестировании лямбда-выражений в предыдущих версиях перейдите в файл build.gradle и установите для параметров compileSdkVersion и targetSdkVersion значения 23 или ниже.

Чтобы использовать возможности языка Java 8 и набор инструментов Jack для проекта, добавьте в файл модуля build.gradle следующий код:

Обновление существующего проекта

Откройте файл build.gradle для своего модуля и укажите в нем следующие значения:

Создание нового проекта

Чтобы создать новый проект разработки с использованием Android N Preview SDK выполните следующие действия.

Выберите File | New Project и выполняйте указания, пока не перейдете на страницу «Target Android Devices». На этой странице выберите вариант Phone and Tablet. В разделе Phone and Tablet перейдите в список Minimum SDK и выберите N: Android API 23, N Preview (Preview).

В Android N удалены три неявных широковещательной рассылки с целью оптимизации потребления памяти и энергии: CONNECTIVITY_ACTION, ACTION_NEW_PICTURE и ACTION_NEW_VIDEO.

Приложения для Android N не получают широковещательные рассылки CONNECTIVITY_ACTION, даже если в их манифесте указаны требования получения уведомлений об этих событиях. Приложения в активном режиме могут следить за событиями CONNECTIVITY_CHANGE в своем основном потоке, если они запрашивают уведомление через BroadcastReceiver.

Приложения не могут отправлять или получать широковещательные рассылки ACTION_NEW_PICTURE и ACTION_NEW_VIDEO. Эта оптимизация влияет на все приложения, включая те, которые не предназначены для Android N.

В будущих выпусках Android могут быть отменены другие неявные широковещательные рассылки, а также отменена привязка некоторых фоновых служб. Поэтому следует избегать зависимостей (или удалить их) в виде объявленных в манифесте получателей неявных широковещательных рассылок или фоновых служб.

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

Разрешение GET_ACCOUNTS теперь считается устаревшим. Система игнорирует это разрешение для приложений, разработанных для Android N.

Android N позволяет пользователям установить параметр Display size, который увеличивает или уменьшает все элементы на экране, делая таким образом устройство более удобным для пользователей со слабым зрением. Пользователи не могут масштабировать экран до ширины менее sw320dp (ширина экрана Nexus 4, обычного телефона среднего размера).

При изменении плотности экрана устройства система уведомляет запущенные приложения следующим способами.

Если приложение предназначено для API уровня 23 или ниже, система автоматически завершает все его фоновые процессы. Это означает, что если пользователь переходит из такого приложения на экран Settings и изменяет параметр Display size, то система завершает работу приложения таким же образом, как в случае нехватки памяти. Если у приложения имеются процессы, работающие в активном режиме, система уведомляет эти процессы об изменении конфигурации согласно описанию в документе Обработка изменений в режиме выполнения, как в случае изменения ориентации устройства.

Читайте также:  Iso to bin android

Если приложение разработано для Android N, все его процессы (активные и фоновые) уведомляются об изменении конфигурации, как это описано в документе Обработка изменений в режиме выполнения.

Большинству приложений не требуются какие-либо изменения для поддержки этой возможности при условии, что эти приложения соответствуют рекомендациям по разработке для Android.

В Android N появились настройки Vision Settings на экране приветствия, где пользователи могут установить следующие параметры специальных возможностей на новом устройстве: Magnification gesture, Font size, Display size и TalkBack. В результате этого изменения становятся более заметными ошибки, связанные с различными настройками экрана. Чтобы оценить влияние этой функции, следует протестировать свое приложение, включив эти настройки на экране Settings > Accessibility.

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

Вы должны протестировать свое приложение и убедиться, что оно не будет работать подобным образом. Для этого можно вызвать аналогичную ошибку, принудительно завершив процесс приложения через DDMS.

Приложения для N и последующих версий Android не завершаются автоматически при изменении плотности экрана, однако они могут плохо реагировать на изменения конфигурации.

Приложения для Android N должны уметь корректно обрабатывать изменения конфигурации и не должны завершаться с ошибкой при последующих запусках. Вы можете проверить поведение приложения, изменив размер шрифта (Setting > Display > Font size) и перезапустив затем приложение с экрана последних задач.

Android N обеспечивает расширенную поддержку многоязычных пользователей, позволяя им выбирать в настройках из нескольких языковых стандартов. Эта возможность реализована в Android N за счет значительного увеличения числа поддерживаемых языковых стандартов и изменения способа разрешения ресурсов в системе. Подробнее об этом

В Android N приложения могут использовать новые API-интерфейсы для запроса доступа к конкретным каталогам внешнего хранилища, включая каталоги на съемных носителях, таких как SD-карты. Новые API-интерфейсы значительно упрощают доступ к стандартным каталогам внешнего хранилища, таким как Pictures. Например, приложения, работающие с фотографиями, могут использовать эти API-интерфейсы вместо READ_EXTERNAL_STORAGE, который разрешает доступ ко всем каталогам хранилища или платформы Storage Access Framework, благодаря чему выполняется переход к указанному каталогу. Кроме того, новые API-интерфейсы упрощают процедуру предоставления доступа к внешнему хранилищу для приложения. Если вы применяете новые API, система использует простой интерфейс разрешений, в котором четко указаны каталоги, к которым приложение запрашивает доступ. Дополнительная информация содержится в документации для разработчиков Доступ к выделенным каталогам.

Multi-window — новый атрибут манифеста android:resizableActivity со значением true позволяет запускать активность в специальном режиме разбиения экрана. Вы можете указать минимальный размер. Также появился ещё один атрибут android:supportsPictureInPicture для режима Картинка-в-картинке.

Direct reply notifications: RemoteInput notification API впервые появились в Android Wear. Теперь доступно для телефонов и планшетов.

Bundled notifications — можно использовать новый метод Notification.Builder.setGroup() для группировки уведомлений.

Что нового в Android 6.0 Marshmallow

Версия Android 6.0 (API 23) получила название Marshmallow. Одна японская фирма выпускает сладости из marshmallow в виде котиков, которых кладут в кофе. Учитывая, что логотипом Java является кружка с кофе, можно сделать вывод, что новая версия Android по-прежнему дружит с Java.

О новой превью-версии объявили 28 мая 2015 года на Google I/O. Финальная версия прилетела мне на Nexus 7 11 ноября 2015 года, пока котик спал.

Android Pay и отпечатки пальцев

Для внедрения платёжной системы Android Pay требовалось два компонента, работающих на уровне системы: NFC, внедренный версии Android 2.3, и эмуляция банковских карт, которая появилась в версии Android 4.4. Появился Fingerprints API — еще один компонент безопасной и простой системы, который позволяет работать с биометрическими данными на уровне ОС.

Вместе Android 6 и Android Pay позволяют пользователям подтверждать покупки (как в розничных сетях, так и в Google Play) одним прикосновением к сканеру отпечатков пальцев. С добавлением поддержки отпечатков на системном уровне в Android M пользователи смогут обезопасить себя от несанкционированных покупок, разблокировать телефон и отдельные приложения; а разработчики — использовать универсальные системные API для работы с биометрической авторизацией в своих приложениях, причём работать это будет на всех поддерживаемых системой устройствах и сканерах.

Android 6.0 Marshmallow позволит разработчикам использовать системные API для работы со всевозможными датчиками биометрической авторизации, а разработчикам приложений обращаться к данным датчикам с помощью этих API и не городить велосипеды из костылей. Зачем вводить сложный пароль, когда можно просто приложить палец?

С помощью класса android.hardware.fingerprint.FingerprintManager проверяем наличие в устройстве сенсора isHardwareDetected(), запрашиваем разрешение USE_FINGERPRINT, и если у пользователя есть откатанные пальчики hasEnrolledFingerprints(), показываем стандартный диалог авторизации по отпечатку authentificate().

Confirm Credentials

Теперь у нас есть возможность перепроверить, что сейчас устройство в руках у его владельца, показав экран разблокировки перед важным действием в приложении, например, при попытке открыть папку «отдых с киской 2011».

Расширение памяти

Некоторые пользователи сталкивались с ситуацией, когда их устройство сообщало о недостатке памяти на накопителе, не смотря на то, что SD-карта имеет ещё достаточное количество свободного места. Теперь Android 6 умеет монтировать SD-карты как «продолжение» встроенного накопителя, тем самым избавляя пользователей от необходимости вручную переносить приложения, кэши тяжелых игрушек или ещё какой-нибудь контент на карту памяти. Кроме того, файлы, которые хранятся на SD-карте в режиме Flex Storage зашифрованы, и могут быть прочитаны только на том устройстве, к которому была привязана карта памяти. Безопасность и удобство.

Text Selection

Теперь контекстное меню для действий с выделенным текстом появляется непосредственно рядом с кареткой. Для добавления своих действий мы так же можем воспользоваться меню, описанным в menu.xml, и добавить его с помощью метода startActionMode(Callback, ActionMode.TYPE_FLOATING).

Встроенный перевод Google Translate

Пользователи, у которых установлено приложение Google Translate, получат возможность перевода на 90 языков внутри некоторых приложений на любом устройстве под управлением Android 6.0, Marshmallow.

Приложения, которые используют встроенную функцию выделение текста (см. выше), встроенный перевод будет уже включен по умолчанию, поэтому никаких дополнительных шагов делать не нужно. Разработчикам, которые реализовали собвственное выделение текста для своих приложений, могут легко реализовать функцию встроенного перевода, выполнив следующие шаги:

Просканировать с помощью PackageManager все пакеты, которые имеют фильтр PROCESS_TEXT (например: com.google.android.apps.translate — если он установлен).

Читайте также:  Android zeroflte что это

Добавить их в качестве MenuItems в окно выбора у TextView.

Метки для каждого элемента можно получить через код:

Намерение для каждого элемента можно создать, используя фильтр

Добавление параметра перевода в меню выбора текста вашего приложения (если вы не используете поведение выделения текста в Android по умолчанию ) делается просто и занимает всего несколько дополнительных строк кода. В процессе перевода, ваше приложение должно удерживать выделение текста, пока Google Translate работает.

Voice Interaction

Приложение, будучи запущенным из Google Now, может вести диалог с пользователем с помощью класса android.app.VoiceInteractor.

Устаревшее

Если вы используете устаревший Apache Http client, то нужно добавить в build.gradle:

Из SDK удалили OpenSSL: libcrypto.so и libssl.so заменены на BoringSSL.

Удалён старый метод для уведомлений notification.setLatestEventInfo(), используйте Notification.Builder.

Из Android Keystore provider убрали поддержку DSA-шифрования.

Разное

Доступ к мак-адресам устройств в округе теперь возможен только при сканировании методами WifiManager.getScanResults(), BluetoothLeScanner.startScan() и при запрошенных разрешениях ACCESS_FINE_LOCATION или ACCESS_COARSE_LOCATION. А вот методы WifiInfo.getMacAddress() и BluetoothAdapter.getAddress() вернут всегда значения 02:00:00:00:00:00. Это сделано в целях повышения безопасности пользователя.

Теперь состояния WifiConfiguration-объектов наши приложения могут менять только, если они сами их создали.

У камеры изменения по работе с доступом к сервису. Если приложение ушло в фон, а другое приложение наоборот вышло на первый план, то ему отдастся приоритет, а первое лишится сервиса. Теперь можно использовать из разных приложений одновременно доступ к разным камерам устройства.

  • App Linking
  • Auto Backup for Apps
  • Authentication
  • Fingerprint Authentication
  • Direct Share
  • Voice Interactions
  • Assist API
  • Notifications
  • Bluetooth Stylus Support
  • Improved Bluetooth Low Energy Scanning
  • Hotspot 2.0 Release 1 Support
  • 4K Display Mode
  • Themeable ColorStateLists
  • Audio Features
  • Video Features
  • Camera Features
  • Flashlight API
  • Reprocessing API
  • Android for Work Features

Изменения в API

Type Additions Changes Removals Total
Packages 4 52 28 84
Classes and Interfaces 121 236 27 384
Constructors 3 0 2 5
Methods 510 123 28 661
Fields 403 81 39 523
Total 1041 492 124 1657

Что нового в Android 5.0 Lollipop

12 ноября 2014 года официально вышла новая версия Android 5.0 под кодовым названием Lollipop.

Ещё во время конференции Google I/O, компания заявила, что Lollipop (Леденец) — это самый масштабный релиз для Android: разработчиков ожидает более 5000 новых API. Lollipop разработана для пользователя, который постоянно пользуется несколькими устройствами: телефоном, планшетом, телевизором и т. д. С новой ОС переключение с одного экрана на другой будет происходить незаметно: запустит последнее из открытых приложений, позволит продолжить поиск, начатый на другом устройстве Android и т.д.

Интерфейс Lollipop получил название Material Design. Также можно самостоятельно установить ограничение доступности, чтобы принимать звонки только от определенных людей и видеть только важные уведомления (они будут появляться даже на заблокированном экране).

В новой ОС предусмотрен режим экономии аккумулятора, который может продлить его заряд еще на 90 минут. А чтобы личные данные пользователя всегда оставались в безопасности, в Android Lollipop есть функция входа с нескольких аккаунтов, а также гостевой режим. Более того, можно дополнительно защитить свое устройство с помощью ПИН-кода, пароля или графического ключа, а также связав его с другим устройством, например, часами или автомобилем (функция Smart Lock).

На этой странице будет собираться новая информация, которая пригодится разработчикам.

  1. A New Design — Material Design
  2. A New Runtime — ART (Android Runtime)
  3. Enhanced Notifications
  4. Project Volta- Increased Efficiency
  5. Support for OpenGL ES 3.1
  6. Android Extension Pack
  7. Camera API for advanced camera capabilities
  8. Storage — Directory selection
  9. Multiple network connections
  10. Bluetooth broadcasting
  11. NFC enhancements
  12. Scheduling jobs — Пример
  13. Enterprise — Managed provisioning
  14. Render PDF as bitmap
  15. Testing and accessibility improvements
  16. Easier switching between input languages

Изменения в API

Type Additions Changes Removals Total
Packages 8 43 0 51
Classes and Interfaces 87 232 0 319
Constructors 84 2 0 86
Methods 408 69 17 494
Fields 754 22 1 777
Total 341 368 18 1727

Новые пакеты

  • android.app.job
  • android.bluetooth.le
  • android.hardware.camera2
  • android.hardware.camera2.params
  • android.media.session
  • android.media.tv
  • android.service.voice
  • android.system

Добавлена новая ADB-команда dumpsys batterystats:

Появились новые виды уведомлений, которые можно выводить на экран блокировки через метод setVisibility(), используя константы.

  • VISIBILITY_PRIVATE — базовый случай: значок, не показывая содержимое уведомления
  • VISIBILITY_PUBLIC — показывает содержимое уведомления
  • VISIBILITY_SECRET — ничего не показывает

Экран недавно запущенных программ переименовали в Overview и добавили API для управления своей программой в этом экране.

Компонент WebView теперь использует движок Chromium и может обновляться без обновления самой системы, а при обновлении браузера.

Новый API android.media.browse позволяет просматривать медиа-содержимое других приложений. Класс MediaBrowserService позволяет использовать медиа совместно с классом MediaBrowser.

Появились два новых класса для управления проигрыванием. Класс MediaSession заменил RemoteControlClient. Класс MediaController позволяет создать свой контроллер.

Два новых сенсора: Tilt Detector и Heart Rate Sensor.

Захват экрана для скриншотов доступен через android.media.projection. Используйте VirtualDisplay.

У камеры появились новые возможности в новом пакете android.hardware.camera2.

Поддержка Bluetooth Low Energy доступна через android.bluetooth.le.

Улучшена работа с NFC.

Класс PdfRendered позволяет рендерить Bitmap из PDF-документов.

А не козёл ли, пользователь?

Переработан метод isUserAGoat(). Подробнее читайте в моей статье А не козёл ли ты, пользователь?

В коде при использовании новых возможностей делайте проверку.

Для старых устройств доступна библиотека совместимости для работы с Material Design и поддержки компонентов CardView и RecyclerView.

Обнаружен секретный пакет com.android.internal.telephony.cat, содержащий различные классы для работы с котами, например CatService. Из студии пакет недоступен. Свободу кошакам!

Полезные ссылки

Что нового в Android 4.4 KitKat

Вышла новая версия Android 4.4 под кодовым названием KitKat. А счастье было так близко (((.

На самом деле планировалось название Kitekat (корм для энергичных кошек), но секретарша-дура сделала опечатку в документах. А когда заметили ошибку, то было уже поздно исправлять. Но мы-то с вами знаем правду.

Новый Toast. Теперь банановый закруглённый. Ничего менять не надо.

Добавлены новые флаги для скрытия системных панелей в новом режиме погружения.

Новые способы анимаций для компонентов — Android: Transition в Android 4.4

Новый механизм взаимодействия с контент-провайдерами для работы с документами — Storage Access Framework

В Android 4.4 компонент WebView использует новый движок от Chromium. Прирост производительности впечатляет. От 5 до 354%.

Появилось понятие программы по умолчанию для работы с SMS и MMS.

Источник

Оцените статью