Firefox OS теперь с поддержкой Cordova


Это звучит безумно. Cordova, также известная как PhoneGap, — это система, которая позволяет запускать веб-приложения на мобильных телефонах как собственные приложения. Теперь Кордова поддерживает Firefox OS. Но собственные приложения для Firefox OS — это веб-приложения. В чем смысл?

Это может показаться безумием, но это очень умный ход.

Во-первых, стоит прояснить, что поддержка Cordova никоим образом не преобразует веб-приложения Firefox OS в «родные» приложения, как предлагается в ряде отчетов.

«Родные» приложения для Firefox OS — это веб-приложения, а приложения Cordova, ориентированные на Firefox OS, — это просто приложения на основе HTML / JavaScript / CSS.

Firefox OS пытается создать основанный на стандартах API, который позволит веб-приложениям, т. Е. Созданным с использованием только JavaScript, HTML и CSS, работать с тем же доступом к оборудованию, что и собственное приложение.

В Firefox OS либо нет собственных приложений, либо веб-приложения являются его собственными приложениями, в зависимости от того, как вы на это смотрите.

Проблема в том, что стандарты развиваются медленно, и сложно не отставать от того, как все должно быть реализовано. Кроме того, многие стандарты не реализованы на других платформах, поэтому создание веб-приложения для Firefox OS затрудняет перенос приложения на другие, возможно, более прибыльные устройства.

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

Здесь на помощь приходит Apache Cordova.

На других мобильных телефонах Кордова берет ваше веб-приложение и помещает его в контейнер, который является стандартным собственным приложением для этого конкретного телефона. Собственный контейнер действует как веб-браузер для кода HTML / JavaScript.

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

Это умная идея, и вы можете думать об этом как о предоставлении ОС на основе веб-приложений в исходной ОС телефона.

Ключ к важности Cordova для Firefox OS заключается в том, что для написания приложения Cordova вы должны использовать его четко определенные API. Если вы хотите получить доступ к камере, скажем, вы вызываете метод getPicture объекта камеры с помощью обратного вызова, который использует возвращенное растровое изображение:

navigator.camera.getPicture (function (src) {

сделайте что-нибудь с изображением, возвращенным в src});

Этот вызов одинаков для всех телефонов, которые поддерживает Кордова.

Теперь подумайте о том, чтобы проделать ту же работу в Firefox OS. Вам либо нужно решить, как использовать веб-активность, либо дождаться завершения полного API камеры, который является частью WebRTC. Независимо от того, как вы реализуете съемку, она почти наверняка не будет работать на любом другом телефоне в качестве собственного приложения и вряд ли будет работать как веб-приложение, пока мобильные браузеры не догонят WebAPI, создаваемые Mozilla.

Все это означает, что вы можете использовать API Cordova для написания веб-приложения, которое будет работать в ОС Firefox с помощью уровня перевода и на всех других телефонах, которые поддерживаются как собственные приложения.

Это кажется намного лучшей перспективой.

Вы можете не только писать новые приложения для Cordova / Firefox OS, но и существующие приложения Cordova должны работать в Firefox OS с небольшими дополнениями.

Mozilla настолько увлечена этой идеей, что расширила свою схему «телефоны для приложений» на приложения Cordova. Если у вас есть существующее приложение Cordova, вы можете показать его Mozilla, и, если оно им понравится, они дадут вам телефон Firefox, который поможет вам запустить его в Firefox OS.

Все это очень практично, но это действительно дает понять, что API-интерфейсы на основе стандартов HTML5, над которыми работают Mozilla и другие, на данный момент просто не подходят для работы и что API-интерфейсы Cordova являются стандартом де-факто.

Возможно, вам не понравится этот вывод, но на данный момент он кажется верным.


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