Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Wurfl logo main 114px.png

WURFL ( W ireless U niversal R esource F i L e) - это набор проприетарных программных интерфейсов приложений (API) и файл конфигурации XML, который содержит информацию о возможностях и функциях различных мобильных устройств, ориентированных на обнаружение мобильных устройств. [1] [2] До версии 2.2 WURFL выпускался под лицензией «с открытым исходным кодом / общественным достоянием». [3]До версии 2.2 информация об устройствах предоставлялась разработчиками со всего мира, а WURFL часто обновлялся, отражая появление на рынке новых беспроводных устройств. В июне 2011 года основатель проекта WURFL Лука Пассани и Стив Камерман, автор Tera-WURFL, популярного PHP WURFL API, создали компанию ScientiaMobile, Inc, чтобы предоставлять коммерческую поддержку и услуги по обнаружению мобильных устройств с использованием WURFL. [4] По состоянию на 30 августа 2011 г. API-интерфейсы ScientiaMobile WURFL лицензируются по модели двойной лицензии с использованием лицензии AGPL для некоммерческого использования и частной коммерческой лицензии. Текущая версия самой базы данных WURFL больше не является открытым исходным кодом.

Решение приближается [ править ]

Было несколько подходов к этой проблеме, включая разработку очень примитивного контента и надежду, что он будет работать на множестве устройств, ограничение поддержки небольшим подмножеством устройств или полный обход решения браузера и разработка клиентского приложения Java ME или BREW .

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

WURFL Cloud [ править ]

В марте 2012 года ScientiaMobile объявила о запуске облака WURFL. [5] Хотя WURFL Cloud является платной услугой, любителям и микрокомпаниям доступно бесплатное предложение для использования на мобильных сайтах с ограниченным трафиком. [6] В настоящее время WURFL Cloud поддерживает Java, Microsoft .NET, PHP, Ruby, Python, Node.js и языки программирования Perl [7] [8]

WURFL и Apache, NGINX и Varnish Cache [ править ]

В октябре 2012 года ScientiaMobile объявила о доступности C ++ API, модуля Apache, модуля NGINX и модуля Varnish Cache . [9] В отличие от других WURFL API, C ++ API и модули распространяются исключительно на коммерческой основе. Несколько популярных дистрибутивов Linux поддерживаются пакетами RPM и DEB . [10]

WURFL.io [ править ]

В 2014 году был запущен WURFL.io. WURFL.io предлагает некоммерческие продукты и услуги от ScientiaMobile:

  • WURFL.js: служба обнаружения устройств JavaScript, которая делает обнаруженные на стороне сервера свойства (возможности WURFL) доступными для JavaScript на веб-страницах. [11]
  • ImageEngine: CDN образов на основе WURFL для оптимизации доставки изображений в Интернете. [12]
  • MOVR (Mobile OverView Report) предоставляет самую последнюю статистику по мобильным устройствам и Интернету.

WALL, Беспроводная библиотека абстракции [ править ]

WALL (Беспроводная библиотека абстракции от Луки Пассани) - это библиотека тегов JSP, которая позволяет разработчику создавать мобильные страницы, похожие на обычный HTML, одновременно доставляя WML , C-HTML и XHTML Mobile Profile на устройство, с которого исходит HTTP-запрос , в зависимости от реальные возможности самого устройства. [13] Возможности устройства запрашиваются динамически с помощью WURFL API. Также доступен порт WALL на PHP (называемый WALL4PHP).

Поддерживаемые реализации [ править ]

WURFL в настоящее время поддерживается следующими способами.

  • Java (через WALL)
  • PHP (через Tera-WURFL (на основе базы данных), новый WURFL PHP API и WALL4PHP)
  • .NET Framework (через Visual Basic / C # / любой API-интерфейс .NET и Somms.NWURFL (C #))
  • Perl
  • Рубин
  • Python (через инструменты Python)
  • XSLT
  • C ++
  • Мобильный фильтр Apache

API Tera-WURFL на основе PHP / MySQL поставляется с удаленным веб-сервисом, который позволяет запрашивать WURFL с любого языка, который поддерживает веб- службы XML [14], и включает клиентов для следующих языков из коробки:

  • PHP
  • Perl
  • Python
  • JavaScript
  • ActionScript 3 (Flash / Flex / AIR / ECMAScript)

Обновление лицензии [ править ]

Обновление WURFL от 29 августа 2011 г. включало новый набор условий лицензирования. Эти условия устанавливают ряд лицензий, по которым может использоваться WURFL. Бесплатная версия лицензии не разрешает производные работы и запрещает прямой доступ к файлу wurfl.xml. В результате пункта «без производных» пользователям больше не разрешается добавлять новые возможности устройства в файл WURFL напрямую или посредством отправки «патчей». Для использования сторонних API с репозиторием WURFL требуется коммерческая лицензия.

3 января 2012 года ScientiaMobile подала уведомление DMCA об удалении базы данных устройств с открытым исходным кодом OpenDDR, которая содержит данные из предыдущей версии WURFL. Согласно OpenDDR, эти данные были доступны по лицензии GPL. [15]

22 марта 2012 года Мэтью Вейер О'Финни объявил, что Zend Framework прекращает поддержку WURFL с версии 1.12. [16] Это было связано с изменением лицензии , что делает его несовместимым с Zend Framework «s лицензирования [17] в качестве нового лицензирования теперь требует , чтобы вы« с открытым исходным кодом полный исходный код вашего веб - сайта, независимо от того , что вы можете изменять WURFL API или нет ". [18]

См. Также [ править ]

  • UAProf
  • Пользовательский агент

Ссылки [ править ]

  1. Хатем (11 февраля 2007 г.). «WURFL, беспроводной универсальный файл ресурсов» . phpmagazine.net . Проверено 29 декабря 2011 года . WURFL - это проект с открытым исходным кодом, целью которого является сбор информации о конфигурациях, возможностях и функциях беспроводных устройств. [...] Файл в формате XML [...]
  2. Вонг, Ричард (4 марта 2010 г.). «В мобильных устройствах фрагментация - это навсегда. Смирись с этим» . TechCrunch . Проверено 29 декабря 2011 года . WURFL - беспроводной универсальный файл ресурсов - проект с открытым исходным кодом; "конфигурационный файл, содержащий всю информацию обо всех беспроводных устройствах на Земле"
  3. ^ «Доступен новый снимок WURFL, НО С ВАЖНЫМИ ИЗМЕНЕНИЯМИ» . 30 августа 2011 . Проверено 7 сентября 2013 года .
  4. Кришна Гуда, генеральный директор ScientiaMobile, Inc «Команда WURFL запускает ScientiaMobile» , 6 июня 2011 г., по состоянию на 27 июня 2011 г.
  5. ^ Passani, Лука (13 марта 2012). «Слушайте! Слушайте! Наконец-то WURFL Cloud здесь!» . ScientiaMobile . Проверено 25 марта 2012 года . Многие спрашивали о доступности WURFL Cloud на протяжении многих лет. Появление ScientiaMobile сделало это возможным.
  6. ScientiaMobile, Inc. (19 марта 2012 г.). «ScientiaMobile запускает обнаружение мобильных устройств WURFL в облаке» . PRWeb . Проверено 25 марта 2012 года . ScientiaMobile всегда уделяла особое внимание сообществу разработчиков. Доказательством этого является тот факт, что мы поддерживаем бесплатную опцию для определенных классов пользователей. В то же время наш опыт в корпоративном мире позволил нам предоставить решение, которое «сокращает его» и для крупных компаний.
  7. ScientiaMobile, Inc. (17 октября 2012 г.). «ScientiaMobile запускает клиент Perl для облака WURFL» . PRWeb.
  8. ^ «Начало работы с облаком WURFL» . ScientiaMobile, Inc.
  9. ^ Passani, Лука (2 октября 2012). «HTTP и мобильные устройства: отсутствующий заголовок» . ScientiaMobile . Проверено 20 октября 2012 года . Обогащение HTTP-запроса или переменных среды новыми заголовками и значениями - очевидные варианты использования. Это позволяет организациям «внедрить» ценность WURFL без нарушения (или даже без повторного развертывания) существующих сайтов и систем.
  10. ScientiaMobile, Inc (2 октября 2012 г.). «ScientiaMobile FAQ: C ++ NGINX Varnish Apache» . ScientiaMobile . Проверено 20 октября 2012 года . В отличие от API Java, .NET, PHP и DB, API и модули C ++ выпускаются не по двойной лицензии, а исключительно по коммерческой лицензии. Заинтересованные лица могут узнать о лицензировании обычным способом.
  11. ^ "Обнаружение на стороне сервера с помощью JavaScript" . smashingmagazine.com.
  12. ^ "ImageEngine, Fast Image CDN" . ImageEngine.io . ScientiaMobile.
  13. ^ "WURFL и СТЕНА" . palowireless.com . Проверено 29 декабря 2011 года . Библиотека беспроводных абстракций (называемая WALL) - это библиотека тегов Java, которая дает универсальную разметку для беспроводных устройств.
  14. ^ Удаленный веб-сервис . Тера-ВУРФЛ. Проверено 23 мая 2014.
  15. ^ Теренс Иден : WURFL и авторские права на базу данных , 2012-01-06
  16. ^ ... из-за изменения лицензирования проектом WURFL - теперь бесплатная версия AGPL - мы удаляем адаптер WURFL из Zend_Http_UserAgent ...
  17. ^ Zend Framework . Framework.zend.com. Проверено 23 мая 2014.
  18. ^ Лицензия AGPL требует, чтобы вы открыли полный исходный код своего веб-сайта, независимо от того, можете ли вы изменять WURFL API или нет.

Внешние ссылки [ править ]

  • ScientiaMobile
  • WURFL.io
  • ImageEngine.io
  • WURFL на SourceForge (сайт 1)
  • Беспроводной универсальный файл ресурсов на SourceForge (сайт 2)
  • WURFL на GitHub