Известно, что для разработки мобильныхJava ME приложений необходимо создать у себя на компьютере специальнуюсреду разработки. Основу этой среды составляетJava ME SDK - специальный комплект средств разработки. В настоящее время существует несколько различных версийSDK от разных производителей, их использование позволяет создавать мобильные приложения, заточенные под определенные телефоны и мобильные платформы. Соответственно доступные программисту JSR расширения и функциональные возможности среды разработки будут сильно зависеть от выбранного SDK. Ниже будут рассмотрены следующиеJava ME SDK.
Sun Java ME SDK 3.0 стала де-факто стандартом на рынке мобильных программ.Java ME SDK - кульминация проектаJava Wireless Toolkit.J2ME SDK поддерживает следующие JVM платформы:
Java ME SDK - одна из нескольких доступныхSDK ориентированных на некое гипотетические устройство, что дает возможность разрабатывать и отлаживать мобильные приложения перед "заточкой" их под конкретную мобильную платформу. SDK содержит Platform Manager, который позволяет эмулировать конкретную платформу. На рисунке показанJava ME SDK 3.0с запущенным эмулятором JavaFX телефона.
В отличие отJava Wireless Toolkit,Java ME SDK содержит IDE и Вы можете разрабатывать и тестировать свои приложения в этой среде. Нужно отметить, чтоJava ME SDK не поддерживает разработку JavaFX приложений, однако он содержит несколько эмуляторов JavaFX 1.1 телефонов (один с тачскрином и один - без), которые позволяет запускать и тестировать JavaFX Mobile приложения. Для создания JavaFX Mobile приложений можно использовать NetBeans IDE. Основным отличием Java ME SDK 3.0 от предыдущих версий является процесс конфигурирования SDK для Blu-ray разработки. Последняя сборка содержит BD-J библиотеки. Таким образом, устранены преграды, стоявшие перед разработчиками BD-J приложений.
Одной из главных особенностейJava ME SDK 3.0 является возможность пошагово отлаживать приложения на реальном мобильном устройстве. Данная возможность пока доступна только для Windows Mobile 6 устройств.
Если вы хотите поработать над визуальным аспектом своего приложения, то вам следует воспользоватьсяNetBeans IDE. Эта среда наиболее подходит для разработки, проектирования и тестирования JavaFX приложений. Основным принцип JavaFX - дать разработчикам возможность разрабатывать десктопные, веб-ориентированные и мобильные приложения, используя один API framework.
В составNetBeans 6.5 IDE входит Mobility Visual Designer - WYSIWYG утилита, позволяющая в визуальном режиме проектировать интерфейс Вашего приложения. В состав NetBeans 6.5 IDE (org.netbeans.microedition) входят следующие визуальные компоненты: Alert, File Browser , Form, List , Login Screen , PIM Browser , SMS Composer , Splash Screen , Text Box , Wait Screen.
Mobility Visual Designer поддерживает векторную SVG графику и анимацию.
MOTODEV Studio for Java ME - еще одна Java ME SDK, ориентированная наMotorola устройства и имеющая ряд дополнительных сервисов:
Эти сервисы позволяют Вам симулировать реальные события без необходимости отладки на реальном устройстве. Например, Bluetooth Service содержит Rococo Bluetooth симулятор, который позволяет симулировать Bluetooth устройства вMOTODEV Studio.
MOTODEV Studio отлично подходит для разработки приложений ориентированных на Motorola утстройста. Вы можете отлаживать приложения на реальных устройствах подключив их по USB.
Nokia предлагает программистам 3 SDK для разработки мобильных приложений. В составSDK различные утилиты, например SVG => SVG-Tiny конвертор, который может быть очень полезным, если Вы планируете использовать JSR 226 API для отображения векторной графики. Как и рассмотренные выше SDK,S60 SDK позволяет проводить отладку приложений на реальных устройствах, однако он имеет особенность, позволяя перенаправлять System.out иSystem.err сообщения.
S40 SDK включает Nokia Connectivity Framework, который позволяет эмулировать Bluetoth и SMS сообщения.
Если Вы хотите заняться разработкой для wireless smart card, Вам стоит задуматься над использованием инструментовS40 Nokia 6212 NFC SDK. Этот SDK не только поддерживает JSR 257 API, но и позволяет симулировать наличие либо отсутствие виртуальной смарт карты. SDK также поддерживает OMNIKEY и PEGODA карт-ридеры, которые подключены к Вашему настольному компьютеры, что позволяет быстро создавать и тестировать приложения на реальных NFC картах. Скриншот S40 Nokia 6212 NFC SDK показан ниже.
BlackBerry JDE 4.7 - это полноценная среда для разработки и тестирования мобильного приложений дляBlackBerry. Чтобы помочь разработчикам с их проектами,BlackBerry JDE 4.7 содержащих более 50 примеров проектов, которые используютJava ME JSR API и дополнительныеBlackBerry API. JDE 4.7 содержит эмуляторы BlackBerry 9500/9530 с сенсорным экраном. Кроме того эмулятор может реагировать на следующие события:
Если Вы хотите сосредоточить свое внимание над экспериментами с JSR расширениями, можете поиграться сSony Ericsson SDK 2.5 for Java ME. Особенно Вам следует обратить внимание на этот SDK, если Вы хотите использовать JSR 177 Security или Trust Services API (SATSA):
Sony Ericsson SDK 2.5 for Java ME поддерживает 3D графику и анимацию: JSR 184 (Mobile 3D Graphics), JSR 239 (Java Binding for OpenGL ES) и Mascot Capsule API.Sony Ericsson SDK 2.5 for Java ME один из нескольких SDK, которые поддерживают JSR 229 Java Payment API. На приведенном ниже рисунке показана интеграцияSony Ericsson SDK 2.5 в NetBeans 6.5 IDE.
LG SDK 1.2 for Java ME не блещет особой функциональностью и не очень хорошо поддерживает JSR расширения. Однако, это единственный SDK с поддержкой JSR 300, и DRM API, которые обеспечивают работу с защищенным цифровым контентом (графикой, звуком, видео).LG SDK 1.2 for Java ME не содержит IDE, однако он, как впрочем и все другие SDK, может использоваться с NetBeans IDE.
LG SDK 1.2 может симулировать различные события:
LG SDK 1.2 содержит также средства просмотра SVG файлов.
JSR API Support | Java ME SDK 3.0 |
NetBeans IDE 6.5 | MOTODEV Studio for Java ME |
Nokia S60 5th Edition SDK |
Nokia S40 6th Edition SDK |
Nokia S40 6212 NFC SDK |
BlackBerry JDE 4.7 |
Sony Ericsson SDK 2.5 |
LG SDK 1.2 for Java ME |
JSR 66 RMI | - | - | - | - | - | - | - | - | - |
JSR 75 PDA | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 82 Bluetooth | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 118 MIDP 2.1 | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 135 Mobile Media 1.2 | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 139 CLDC 1.1 | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 169 JDBC | - | - | - | - | - | - | - | - | - |
JSR 172 Web Services | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 177 Security and Trust Services | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 179 Location | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 180 SIP | YES | YES | YES | - | - | - | - | YES | YES |
JSR 184 Mobile 3D Graphics | YES | YES | YES | YES | YES | YES | - | YES | YES |
JSR 185 JTWI 1.0 | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 195 Information Module | - | - | - | - | - | - | - | - | - |
JSR 205 Wireless Messaging 2.0 | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 209 AGUI | YES | YES | - | - | - | - | - | - | - |
JSR 211 Content Handler | YES | YES | YES | - | YES | YES | YES | YES | YES |
JSR 217 Personal Basis Profile 1.1 | YES | YES | - | - | - | - | - | - | - |
JSR 218 CDC 1.1 | YES | YES | - | - | - | - | - | - | - |
JSR 219 Foundation Profile 1.1 | YES | YES | - | - | - | - | - | - | - |
JSR 226 Scalable 2D Vector Graphics | YES | YES | YES | YES | YES | YES | YES | YES | YES |
JSR 229 Payment | YES | YES | - | - | - | - | - | YES | YES |
JSR 234 Advanced Multimedia Supplements | YES | YES | YES | YES | YES | YES | - | YES | YES |
JSR 238 Mobile Internationalization | YES | YES | YES | - | - | - | - | YES | YES |
JSR 239 Java Binding for OpenGL ES | YES | YES | YES | - | - | - | - | YES | YES |
JSR 248 MSA 1.0 | YES | YES | YES | - | YES | YES | - | YES | YES |
JSR 256 Mobile Sensor | YES | YES | - | - | - | - | - | YES | YES |
JSR 257 Contactless Communication | - | - | - | - | - | YES | - | - | YES |
JSR 271 MIDP 3 | - | - | - | - | - | - | - | - | - |
JSR 280 XML | YES | YES | - | - | - | - | - | - | - |
JSR 300 DRM | - | - | - | - | - | - | - | - | YES |
Other Java API Support | |||||||||
BD-J | YES | YES | - | - | - | - | - | - | - |
JavaFX 1.1 | YES | YES | - | - | - | - | - | - | - |
LWUIT | YES | YES | - | - | - | - | - | - | - |
Security (JAAS) | YES | YES | - | - | - | - | - | - | - |
Security (JCE) | YES | YES | - | - | - | - | - | - | - |
Security (JSSE) | YES | YES | - | - | - | - | - | - | - |
NetBeans Mobile Components | - | YES | - | - | - | - | - | - | - |
G24 MOTO2MOTO | - | - | YES | - | - | - | - | - | - |
Motorola APIs | - | - | YES | - | - | - | - | - | - |
Nokia UI API | - | - | - | YES | YES | YES | - | YES | - |
eSWT API | - | - | - | YES | - | - | - | - | - |
IAP Info | - | - | - | YES | - | - | - | - | - |
BlackBerry API | - | - | - | - | - | - | YES | - | - |
Mascot Capsule API | - | - | - | - | - | - | - | YES | - |
Источник:Java ME Tools: The State of the Union, Q2 2009 by Bruce Hopkins
Перевод:aRix