Платформа Java, микро-версия
Эту статью необходимо обновить . ( май 2023 г. ) |
платформы Java Редакции |
---|
|
Java Platform, Micro Edition или Java ME — вычислительная платформа для разработки и внедрения портативного кода для встраиваемых и мобильных устройств (микроконтроллеров, датчиков, шлюзов, мобильных телефонов, персональных цифровых помощников, ТВ-приставок, принтеров). [ 1 ] Java ME ранее была известна как платформа Java 2, Micro Edition или J2ME .
Платформа использует объектно-ориентированный язык программирования Java и является частью семейства программных платформ Java . Она была разработана компанией Sun Microsystems (ныне Oracle Corporation ) и заменила аналогичную технологию PersonalJava .
В 2013 году на рынке было представлено более 3 миллиардов мобильных телефонов с поддержкой Java ME. [ 2 ] Платформа продолжала приходить в упадок, поскольку смартфоны обогнали функциональные телефоны. [ 3 ]
История
[ редактировать ]Раньше эта платформа была популярна в функциональных телефонах, таких как модели Nokia Series 40 . Он также поддерживался в операционных системах Bada и Symbian OS вместе со собственным программным обеспечением. Пользователи Windows CE , Windows Mobile , Maemo , MeeGo и Android могут загрузить Java ME для своих соответствующих сред («проверка концепции» для Android). [ 4 ] [ 5 ]
Первоначально разработанный в рамках процесса сообщества Java как JSR 68, различные варианты Java ME превратились в отдельные JSR. Устройства Java ME реализуют профиль . Наиболее распространенными из них являются профиль мобильного информационного устройства, предназначенный для мобильных устройств, таких как сотовые телефоны, и личный профиль, предназначенный для потребительских товаров и встроенных устройств, таких как телеприставки и КПК. Профили представляют собой подмножества конфигураций , которых на данный момент существует две: конфигурация подключенного ограниченного устройства (CLDC) и конфигурация подключенного устройства (CDC). [ 6 ]
В 2008 году платформы Java ME были ограничены функциями JRE 1.3 и использовали эту версию формата файла классов (внутренне называемую версией 47.0).
Реализации
[ редактировать ]Oracle предоставляет эталонную реализацию спецификации, а также некоторые конфигурации и профили для MIDP и CDC. Начиная с JavaME 3.0 SDK, среда IDE на основе NetBeans поддерживала их в одной среде IDE.
В отличие от многочисленных двоичных реализаций платформы Java, созданных Sun для серверов и рабочих станций, Sun, как правило, не предоставляла двоичные файлы для целевых платформ Java ME, а вместо этого полагалась на предоставление своих собственных сторонними организациями.
Исключением стала MIDP 1.0 JRE (JVM) для Palm OS. [ 7 ] Sun не предоставляет J2ME JRE для устройств на базе Microsoft Windows Mobile (Pocket PC), несмотря на кампанию открытого письма в адрес Sun с просьбой выпустить, по слухам, внутреннюю реализацию PersonalJava , известную под кодовым названием «Капитан Америка». [ 8 ] Сторонние реализации широко используются поставщиками Windows Mobile.
В какой-то момент Sun выпустила ныне заброшенную эталонную реализацию под названием phoneME .
Операционные системы, ориентированные на Java ME, были реализованы DoCoMo в форме DoJa и SavaJe как SavaJe OS. Последняя компания была приобретена Sun в апреле 2007 года и теперь составляет основу Sun JavaFX Mobile .
с открытым исходным кодом Виртуальная машина Mika предназначена для реализации JavaME CDC/FP, но не сертифицирована как таковая (сертифицированные реализации требуют взимания роялти, что непрактично для проекта с открытым исходным кодом). Следовательно, устройства, использующие эту реализацию, не могут заявлять о совместимости с JavaME CDC.
Операционная система Android на базе Linux использует проприетарную версию Java, которая схожа по своему назначению, но во многом отличается от Java ME. [ 9 ]
Ограниченная конфигурация подключенного устройства
[ редактировать ]Конфигурация подключенного ограниченного устройства (CLDC) содержит строгое подмножество библиотек классов Java и представляет собой минимальный объем, необходимый для виртуальной машины Java работы . CLDC в основном используется для классификации множества устройств в фиксированной конфигурации.
Конфигурация предоставляет самый базовый набор библиотек и функций виртуальной машины, которые должны присутствовать в каждой реализации среды J2ME. В сочетании с одним или несколькими профилями конфигурация Connected Limited Device дает разработчикам надежную платформу Java для создания приложений для потребительских и встраиваемых устройств. Конфигурация предназначена для устройств с общим объемом памяти от 160 КБ до 512 КБ, которые имеют минимум 160 КБ ПЗУ и 32 КБ ОЗУ, доступного для платформы Java.
Профиль мобильного информационного устройства
[ редактировать ]Разработанный для мобильных телефонов, профиль мобильного информационного устройства включает в себя графический интерфейс и API хранения данных, а MIDP 2.0 включает базовый API для 2D-игр . Приложения, написанные для этого профиля, называются MIDlet .
JSR 271: Профиль мобильного информационного устройства 3 (окончательный выпуск 9 декабря 2009 г.) определяет профиль мобильного информационного устройства третьего поколения (MIDP3), расширяя функциональные возможности во всех областях, а также улучшая совместимость между устройствами. Ключевой целью разработки MIDP3 является обратная совместимость с содержимым MIDP2.
Профиль информационного модуля
[ редактировать ]Профиль информационного модуля (IMP) — это профиль для встроенных «безголовых» устройств, таких как торговые автоматы, промышленные встроенные приложения, системы безопасности и аналогичные устройства с простым дисплеем или без него и с некоторыми ограниченными возможностями подключения к сети.
Первоначально представленный Siemens Mobile и Nokia как JSR -195, IMP 1.0 представляет собой строгое подмножество MIDP 1.0, за исключением того, что он не включает API пользовательского интерфейса — другими словами, он не включает поддержку пакета Java. javax.microedition.lcdui
. JSR-228, также известный как IMP-NG, представляет собой следующее поколение IMP, основанное на MIDP 2.0 и использующее новые типы безопасности и сетевых интерфейсов MIDP 2.0, а также API-интерфейсы, а также другие API-интерфейсы, такие как PushRegistry
и platformRequest()
, но опять же, он не включает в себя ни API пользовательского интерфейса, ни игровой API.
Конфигурация подключенного устройства
[ редактировать ]Конфигурация подключенного устройства — это подмножество Java SE , содержащее почти все библиотеки, не связанные с графическим интерфейсом. Он богаче, чем CLDC.
Профиль Фонда
[ редактировать ]Профиль Foundation — это профиль конфигурации подключенного устройства Java ME (CDC). Этот профиль предназначен для использования устройствами, которым требуется полная реализация виртуальной машины Java, включая всю платформу Java Standard Edition API. Типичные реализации будут использовать некоторое подмножество этого набора API в зависимости от поддерживаемых дополнительных профилей. Эта спецификация была разработана в рамках процесса сообщества Java.
Личный базовый профиль
[ редактировать ]Персональный базовый профиль расширяет базовый профиль, включая поддержку упрощенного графического интерфейса в форме подмножества AWT . Это платформа, BD-J на которой построен .
JSR (запросы спецификации Java)
[ редактировать ]Фундамент
[ редактировать ]JSR # | Имя | Описание |
---|---|---|
68 | Спецификация платформы J2ME | |
30 | CLDC 1.x | |
37 | МИДП 1.0 | |
118 | МИДП 2.x | |
139 | CLDC 1.1 | |
271 | МИДП 3.0 | Только Java ME 3.4 и более ранние версии, последняя спецификация для мобильных телефонов, функции языка Java аналогичны Java SE 1.3. |
360 | CLDC 8 | Новое в Java ME 8 |
361 | МЕЭП 8 | Новое в Java ME 8, языковая функция, как в Java SE 8, для Интернета всего устройств . |
Основные расширения
[ редактировать ]JSR # | Имя | Описание | MSA |
---|---|---|---|
75 | Подключение файлов и API PIM | Файловая система, контакты, календарь, список дел | |
82 | Bluetooth | Связь через последовательный порт Bluetooth и обмен файлами (OBEX) | |
120 | API беспроводного обмена сообщениями (WMA) | ||
135 | API мобильных медиа (MMAPI) | Аудио, видео, мультимедиа | |
172 | API веб-служб | XML-парсеры и RPC | |
177 | API служб безопасности и доверия (SATSA) | APDU, Java Card RMI (JCRMI), инфраструктура открытых ключей (PKI) и криптография | |
179 | API местоположения | GPS-координаты, адреса, датчики ориентации, ориентиры магазинов | |
180 | SIP API | ||
184 | Мобильная 3D-графика (M3G) | 3D-графика высокого уровня | |
185 | Технология Java для индустрии беспроводной связи (JTWI) | Общий | |
205 | API беспроводного обмена сообщениями (WMA) 2.0 | Отправка и получение SMS и MMS | |
211 | API обработчика контента (CHAPI) | ||
226 | Масштабируемый API векторной 2D-графики для J2ME (M2G) | Обработка SVG Tiny | |
228 | Профиль информационного модуля – следующее поколение (IMP NG) | ||
229 | Платежный API | ||
234 | Расширенные мультимедийные дополнения (AMMS) | Расширения MMAPI | |
238 | API мобильной интернационализации | Локализованные ресурсы, форматирование даты и чисел локали, сравнение строк локали | |
239 | Привязки Java для API OpenGL ES | ||
248 | Архитектура мобильных услуг (MSA) | ||
253 | API мобильной телефонии | ||
256 | API мобильных датчиков | Чтение значений акселерометров, гироскопов, компасов, термометров, барометров и т. д. | |
257 | API бесконтактной связи | ||
258 | API настройки мобильного пользовательского интерфейса | ||
272 | API службы мобильного вещания для портативных терминалов | ||
280 | XML API для Java ME | ||
281 | API сервисов IMS | ||
287 | Масштабируемый API 2D векторной графики 2.0 для Java ME | ||
293 | API местоположения 2.0 | ||
298 | Телематический API для Java ME | ||
300 | API DRM для Java ME | ||
325 | Средства связи IMS |
Будущее
[ редактировать ]JSR # | Имя | Описание |
---|---|---|
297 | API мобильной 3D-графики (M3G) 2.0 | Предлагаемый окончательный проект от 14 апреля 2009 г. |
СОЭ
[ редактировать ]Консорциум ESR занимается стандартами для встроенной Java. Особенно экономически эффективные стандарты. Типичными областями применения являются промышленный контроль, межмашинный обмен, медицина, электронные измерения, домашняя автоматизация , потребительский, человеко-машинный интерфейс, ...
СОЭ # | Имя | Описание |
---|---|---|
001 | B-ON (за пределами CLDC) | B-ON служит очень надежной основой для реализации встроенного программного обеспечения Java. Он определяет надежную фазу инициализации устройства Java и 3 типа объектов: неизменяемые, бессмертные и обычные (моральные) объекты. |
002 | Микроинтерфейс | MicroUI определяет расширенную архитектуру, позволяющую использовать открытую стороннюю среду разработки приложений для встроенных устройств HMI. Такие устройства обычно имеют тот или иной дисплей, несколько датчиков ввода и, возможно, некоторые возможности рендеринга звука. Эта спецификация охватывает потенциально широкий набор устройств. |
011 | МВТ | MWT определяет три отдельные роли: дизайнеры виджетов, дизайнеры внешнего вида и дизайнеры приложений. MWT позволяет бинарному приложению HMI запускаться одинаково на всех устройствах, которые обеспечивают совместимую структуру MWT (встроенные устройства, мобильные телефоны, ТВ-приставки, ПК и т. д.), обеспечивая истинную согласованность и повсеместное распространение приложений во всех линейках продуктов ( Я, ЮВ, ЭЭ). |
015 | ЭКЛАССПУТЬ | ECLASSPATH объединяет среды выполнения CLDC, CDC, Foundation, SE и EE с набором из около 300 классов API. Компиляция с использованием CLDC1.1/ECLASSPATH делает двоичный код переносимым во все среды выполнения Java. |
См. также
[ редактировать ]- Андроид (операционная система)
- iOS
- Блэкберри ОС
- Опасный хиптоп
- Встроенная Java
- JavaFX для мобильных устройств
- Мобильная разработка
- Мобильные игры
- Мобильное обучение
- Квалкомм Брю
- Смартфон
Ссылки
[ редактировать ]- ^ «Обзор Java ME» . Корпорация Оракл . Проверено 26 февраля 2017 г.
- ^ «Узнайте о технологии Java» . Архивировано из оригинала 8 марта 2013 года . Проверено 15 февраля 2024 г.
- ^ Фаривар, Сайрус (14 августа 2013 г.). «Смартфоны впервые в мире продаются лучше обычных телефонов» . Арс Техника . Проверено 15 марта 2024 г.
- ^ phoneME для Windows CE, Windows Mobile и Android (разработка остановлена 15 июня 2011 г.) - источник здесь.
- ^ «App Runner (разработка остановлена 11 мая 2010 г.)» . Архивировано из оригинала 3 января 2012 года . Проверено 5 августа 2012 г.
- ^ Технология Java ME
- ^ MIDP для Palm OS 1.0: Разработка Java-приложений для устройств Palm OS, январь 2002 г.
- ^ CDC и личный профиль - Открытое письмо в SUN о создании персональной Java JRE для Pocket PC. Архивировано 3 июня 2008 г., на Wayback Machine 2003.
- ^ Разработка мобильных приложений: Android по сравнению с J2ME. Архивировано 25 сентября 2018 г., в Wayback Machine , февраль 2013 г.
- Примечания
- JSR 232: Mobile Operational Management – передовая платформа на базе технологии OSGi для мобильных вычислений.
- JSR 291: Поддержка динамических компонентов для Java SE – модель симметричного программирования для Java SE и Java ME JSR 232
Библиография
[ редактировать ]- Бен Хаюн, Рой (30 марта 2009 г.). Java ME в ОС Symbian: Внутри модели смартфона (1-е изд.). Уайли . п. 482. ИСБН 978-0-470-74318-8 .
- Кнудсен, Джонатан (8 января 2008 г.). Надрать задницу с помощью MIDP и MSA: создание отличных мобильных приложений (1-е изд.). Прентис Холл . п. 432 . ISBN 978-0-321-46342-5 .
- Ли, Синг; Кнудсен, Джонатан (25 апреля 2005 г.). Начало J2ME: от новичка до профессионала (3-е изд.). Апресс . п. 480 . ISBN 1-59059-479-7 .
Внешние ссылки
[ редактировать ]- Сеть разработчиков Sun, Java ME
- Страницы Java-сайта Центра разработчиков Nokia
- Блоги о среде выполнения Java для Nokia S60
- Мир разработчиков Sony Ericsson
- Сеть разработчиков Motorola. Архивировано 21 июля 2009 г. в Wayback Machine.
- Инструмент разработки J2ME Сеть пользователей LMA
- Сайт мобильного разработчика Samsung
- Веб-сайт разработчика приложений Sprint
- База данных производительности устройств, совместимых с Java ME.
- Платформы MicroEJ для встраиваемых систем
- Книга - Программирование мобильных телефонов с использованием Java ME (J2ME)
- Мастер-класс по J2ME