Mozilla WebAPI — будущее наступило?

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

Конечно, когда-нибудь все это придет в стройную систему… или нет. Как бы то ни было, пока многие участники разработки стандартов пытаются систематизировать новые клиентские веб-технологии, дальше всего в этом продвинулись в Mоzillа Foundation, выдвинув концепцию WebAPI (не путать с ASP. NET WEB API) — стек технологий, включающий и местами перекрывающий (по их словам) решения всех встающих перед современным вебом задач.

Вообще, WebAPI — это основа новой операционной системы от Mozilla, изначально разрабатываемой под именем Boot to Gecko (B2G) с 2011 года, но в начале июля 2012 года переименованной в Firefox OS. Впрочем, этот аспект нам не очень интересен. Важно другое. Mozilla декларирует полную открытость проекта Web API, по возможности базируется на уже принятых стандартах, расширяя их в необходимых направлениях. Разработчики проекта намерены передать эталонную реализацию Web API в организацию W3C для утверждения в качестве веб-стандарта. Правда, только после окончания работ по Firefox OS, в 2013 году.

В WebAPI включены как полностью готовые к использованию разработки, так и те технологии, степень готовности которых находится на стадии признания их необходимости.

Давайте посмотрим, что нам обещают, и на этой обнадеживающей ноте завершим наше повествование.

API

Описание

Стадия

WebTelephony

Позволяет совершать и отвечать на телефонные звонки

В разработке. Планируется в FirefoxOS

Vibration API

Контроль над «осязательным» оборудованием, вибрацией, отвечающей, например, за обратную связь в играх. Не предназначен для работы с вибрацией как уведомлением о звонке

Реализован в FirefoxOS и Android. Идет процесс стандартизации

WebSMS

Прием и передача SMS-сообщений

Реализован в FirefoxOS и Android. В последнем может быть заблокирован из соображений безопасности

Idle API

Получает уведомление, когда пользователь бездействует

Реализован

Screen

Orientation

Получает информацию по ориентации экрана в пространстве

Реализован в FirefoxOS и Android

Settings API

Устанавливает все настройки конфигурации системы с периодическим их сохранением на физический носитель, например на SSD-накопители AMD

В процессе реализации

Power

Management

API

Включение/выключение экрана, процессора прочих аппаратных ресурсов от питания. Контроль над блокированием ресурсов

В процессе реализации

Mobile

Connection

API

Позволяет установить силу GSM-сигнала, оператора и прочие данные

Реализован

TCP Socket API

Низкоуровневый API TCP-сокетов. Предполагается поддержка SSL

В процессе реализации

Geolocation

API

Реализация Geolocation API

Реализован

WiFi

Information

API

API, дающий полномочия просматривать список доступных WiFi-сетей, а также мощность сигнала и имя текущего соединения

Начата реализация

Device Storage API

Доступ к хранилищу данных на устройстве. Например, к папке «pictures» настольного компьютера или телефона

Начата реализация

Contacts API

Доступ к адресной книге устройства

Реализован в версии 1, в процессе реализации версии 2

API

Описание

Стадия

Mouse Lock API

Позволяет получить контроль над указателем мыши

Реализован

Open

WebApps

Установка веб-приложений и управление ими

Начата реализация

WebBluetooth

Низкоуровневый доступ к Bluetooth-оборудованию

Реализация близка к завершению

Network

Information

API

Получение базовой информации о текущих сетевых соединениях

Реализован в Android

Battery Status API

Информация о состоянии заряда аккумулятора устройства

Реализован

Alarm API

API для уведомлений, спланированных по времени

В процессе реализации

Browser API

Реализация API-браузера, полностью построенного на веб-технологиях

Реализован

Time/Clock

API

Установка текущего времени.

Установка Timezone войдет в Settings API

Реализован

Web Activities

Переадресовка запроса действий к стороннему приложению

Реализация начата

Keyboard/IME

API

Реализует доступ к виртуальной клавиатуре

В разработке. Планируется в Firefox OS

Push

Notifications

API

Позволяет платформе открывать окна уведомлений указанным приложениям

На уровне чернового API

Permissions

API

Позволяет приложению централизованно управлять всеми разрешениями

На уровне предложений

FM Radio API

Компоненты FM-радио

В разработке. Планируется в Firefox OS

FileHandle API

Возможность блокирующего доступа к файлам на запись

Реализован

Планы на будущее

API

Описание

Состояние

Resource_lock_

API

Допуск к блокированию ресурсов — например, выключению WiFi в спящем режиме

Завершено

UDP

Datagram Socket API

Низкоуровневый API для протокола UDP

Планируется

USB file-reading API

Позволяет монтировать USB-накопители в файловую систему

Планируется закончить в ближайшее время

API

Описание

Состояние

Camera API

Часть поддержки технологии WebRTC

В стадии реализации

Peer to Peer API

Часть поддержки технологии WebRTC

В стадии реализации

WebNFC

Низкоуровневый доступ к NFC-устройствам (Near Field Communication — технология беспроводной высокочастотной связи малого радиуса действия)

Планируется закончить в ближайшее время

WebUSB

Низкоуровневый доступ к USB-устройствам

Планируется

HTTP-cache

API

API для доступа к http-кэшу браузера — добавление/удаление записей. Установка времени хранения, получение данных из кэша

Calendar API

Доступ к календарю устройства

Планируется

Spellcheck

API

Включает проверку орфографии на странице

Background

Services

Позволяет веб-приложению запускаться в фоновом режиме с возможностью синхронизации и обмена сообщениями между процессами

На уровне предложений

LogAPI

Позволяет регистрировать пользовательскую телефонную активность

На уровне предложений

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *