Инструментальные средства Wireless Toolkit. Основы

Раздел 1. Введение


Что такое Wireless Toolkit?

Wireless Toolkit (WTK) - это интегрированная среда разработки Java 2 Micro Edition (J2ME) приложений (более известных как мидлеты).

Этот документ содержит подробное пошаговое описание загрузки, инсталляции и настройки toolkit-а. Ниже достаточно подробно описаны процессы компиляции, предварительной проверки и создания MIDlet пакетов. Кроме этого будет показано, как реализовать загрузку мидлета с удаленного сервера, и как осуществить его проверку. Достаточно подробно будут рассмотрены возможности toolkit-а по обеспечению безопасности. В частности мы познакомимся с подписыванием мидлетов, созданием сертификатов и установкой разрешений. Наконец мы затронем некоторые другие возможности и особенности WTK, включая средства отладки.

Раздел 2. Закачка и формирование среды разработки

Требуемые компоненты

Вам потребуются следующие компоненты:

  • The Java Development Kit (JDK)
  • The Wireless Toolkit (WTK)


В состав JDK входят Java компилятор и утилиты для создания Java архивов: JAR файлов. Работа со второй версией WTK требует установки JDK не младше 1.4. Скачать JDK можно здесь:
http://java.sun.com/products/jdk/1.4.1

В состав WTK входят IDE и библиотеки, необходимые для создания мидлетов. Вы можете совершенно бесплатно скачать и использовать WTK:http://java.sun.com/products/j2mewtoolkit

Примечание. В настоящее время доступна версия WTK для платформы Windows. В дальнейшем компания Sun обещает выпустить версии для Linux и Solaris.

Установка софта


При установке Java Development Kit (JDK) просто следуйте подсказкам инсталлятора и отвечайте на его вопросы. Вы можете выбрать каталог, куда следует установить JDK. Запомните путь к каталогу, он нам еще понадобится. При установке WTK инсталлятор попытается установить местоположение Виртуальной Машины Java (JVM); в случае неудачи, вам придется вручную указать каталог, куда вы установили JDK.

Инсталляция WTK не вызывает трудностей. Просто запустите самораскрывающийся архив и выберите папку для установки. Внимание! путь к этой папке не должен содержать пробелов.

Раздел 3. Создание первого мидлета

Запуск KToolbar


Перейдите в папку WTK и запустите KToolbar. Вы должны увидеть такое окно:



Давай создадим новый проект. Щелкните по иконке New Project. Введите название проекта и имя класса мидлета, затем щелкните Create Project



Определение свойств проекта

Следующим шагом является настройка атрибутов нашего мидлета. Все атрибуты разделены на шесть групп. Давайте обсудим каждую из них.

Required attributes. Эти семь атрибутов необходимо задать перед созданием мидлета. Они будут в дальнейшем разделены между файлом манифеста JAR архива и дескриптором мидлета (текстовый файл с расширением JAD).  Для нас разбор всех этих атрибутов не так уж важен. Прелесть интегральных сред состоит как раз в том, что мы можем не обращать внимание на мелочи. WTK самостоятельно заполнит эти атрибуты. В большинстве случаев вполне допустимо использовать значения по-умолчанию.



Optional attributes. Эти атрибуты задавать не обязательно. Они содержат дополнительную информацию о вашем мидлете.



User-defined attributes. Как разработчику, вам могут понадобиться какие-нибудь уникальные атрибуты. Например, если Вы работаете над бурно развивающимся проектом, вам наверняка потребуется хранить его версию. Пример того, как это можно сделать, показан на следующем рисунке.



MIDlet attributes.  Здесь можно задать атрибуты нашего мидлета. По умолчанию WTK заполняет поле для MIDlet-1 на основании введенной нами при создании проекта информации. Именно здесь хранится название проекта, его иконка и название класса мидлета. Иконку приложения следует поместить в папку images.



Push registry attributes. Вторая версия профиля MIDP 2.0 позволяет нашему мидлету соединяться с удаленными ресурсами. Здесь вы можете задать список удаленных адресов с которыми разрешено соединение. Более детально на этом вопросе мы остановимся позже.



Permission attributes. Согласно MIDP 1.0 спецификации мидлет должен использовать только библиотеки (API), которые были добавлены в мидлет пакет: такая модель получила название песочница (sandbox model). Согласно этой модели, мидлет не может использовать дополнительные функции (API), предоставляемые устройством.  В MIDP 2.0 вводится концепция доверенных приложений (trusted applications), которая позволяет получить доступ к объектам вне песочницы. В этой секции вы можете определить, какие API будут доступны. Атрибуты, указанные в MIDlet-Permissions необходимы для запуска мидлета. А указанные в MIDlet-Permissions-opt  - являются дополнительными.



Написание кода


Приведенный ниже листинг иллюстрирует использование компонентов List и Ticker.

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

/*--------------------------------------------------
* TickerDemo.java
*-------------------------------------------------*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
publicclass TickerDemoextends MIDlet implements CommandListener
{
private Display display;// Reference to Display object
privateList lsProducts;// Main productlist
private Ticker tkSale;// Ticker of what's on sale
private Command cmExit;// Command to exit the MIDlet
public TickerDemo()
{
display= Display.getDisplay(this);
cmExit=new Command("Exit", Command.SCREEN,1);
tkSale=new Ticker("Current Sale: Torchiere Lamp only$29.00");
lsProducts=newList("Products", Choice.IMPLICIT);
lsProducts.append("Floor Lamp",null);
lsProducts.append("Chandelier",null);
lsProducts.addCommand(cmExit);
lsProducts.setCommandListener(this);
lsProducts.setTicker(tkSale);
}
public void startApp()
{
display.setCurrent(lsProducts);
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}
public void commandAction(Command c, Displayable s)
{
if(c== cmExit)
{
destroyApp(true);
notifyDestroyed();
}
}
}

Сохранение, компиляция и предварительная проверка


Сохраните исходный код файл TickerDemo.java в папку С:\WTK20\apps\TickerDemo\src\. Конечно вместо C:\WTK20 необходимо использовать папку, куда вы установили WTK. Как вы уже, наверное, догадались, подкаталог src служит для хранения исходников проекта.

После того, как файл сохранен, щелкните кнопку Build на панели инструментов KToolbar-а. В результате будет вызван Java компилятор и осуществлена предварительная проверка проекта. Если не возникло никаких ошибок, Вы можете запустить проект, нажав кнопку Run.

Устранение неисправностей


Если Вы предварительно установили на своем компьютере какой-либо MIDP софт (отличный от WTK), то вероятно вы увидите в окне KToolbar-а сообщения об ошибках (см. рисунок ниже). Чтобы устранить эти ошибки, Вы должны удалить переменную окружения MIDP-HOME и перезапустить WTK.

Запуск мидлета

Как только Вы запустите мидлет, откроется менеджер приложений. В его окне Вы найдете название своего проекта с соответствующей иконкой.

Выберите свое приложение и нажмите Select. Мидлет запустится. Вы увидите бегущую строку вверху экрана (Tricker) и список (List) из двух позиций.


Раздел 4. Over-the-air provisioning

WTK 2.0 имеет очень полезную особенность: моделирует Over-the-air (OTA) provisioning. Это позволяет демонстрировать работу OTA функций: поиск и закачку мидлета с удаленного сервера.

В этом разделе мы рассмотрим все необходимые шаги для создания пакета мидлета, его поиска, загрузки и установки мидлета с удаленного ресурса.  Выделим несколько последовательных этапов, которые нам предстоит преодолеть:

  • Упаковка мидлета в JAR архив и создание JAD файла.
  • Создание простейшего HTML файла со ссылкой на JAD.
  • Размещение JAD, JAR и HTML файлов на Web сервере.
  • Поиск, загрузка и установка мидлета.

Шаг 1: Обновление атрибутов

С помощью WTK создание JAR и JAD файлов не представляет трудности. Однако прежде чем сделать это, нам необходимо внести небольшие изменения в один из установленных нами атрибутов. Если Вы помните, мы присвоили атрибуту MIDlet-Jar-URL на вкладке Required свойств проекта значение TickerDemo.jar. В случае если мы хотим запустить наш мидлет с сервера, нужно изменить его на URL адрес нашего мидлета. У меня на машине установлен локальный сервер Tomcat, и адрес мидлета на этом сервере имеет вид:
http://localhost:8080/examples/midp20/TickerDemo.jar

Замечание. Я рекомендую вам установить либо Apache либо Tomcat. Оба эти локальных сервера  абсолютно бесплатны и хорошо документированы.

Шаг 2: Создание пакета

Итак, мы исправили  все необходимые атрибуты и можем приступать к созданию пакета. Это очень просто. Вам надо кликнуть на меню Project, выбрать строку Select Package и щелкнуть по Create Package. Все. Упаковка займет несколько секунд.

Шаг 3: Создание HTML файла

Чтобы указать менеджеру приложений, какие файлы можно загрузить с сервера, мы должны создать простой HTML файл:

<html>
<head>
<title>TickerDemo</title>
</head>
<body>
<a href="/http://localhost:8080/examples/midp20/TickerDemo.jad">TickerDemo</a>
</body>
</html>

Загоните этот текст в редактор и сохраните его в файл с именем TickerDemo.html. Осталось загрузить файлы на сервер.

Шаг 4: Копирование файлов на Web сервер


В подкаталоге bin каталога нашего проекта вы найдете файлы, которые создал для нас WTK. Загрузим файлы TrickerDemo.jar, TrickerDemo.jad и TrickerDemo.html на наш сервер. Как Вы помните, атрибут MIDlet-Jar-URL имеет значениеhttp://localhost:8080/examples/midp20/TickerDemo.jar. Это означает, что нам нужно скопировать файлы в папку examples\midp20 нашего сервера. Как только файлы окажутся на месте,  мы сможем загружать мидлет с нашего сервера.

Подведем промежуточные итоги

Итак, давайте еще раз вспомним, что мы сделали.

  • Мы написали текст программы откомпилировали его и проверили.
  • Мы изменили значение атрибута MIDlet-Jar-URL на адрес JAR файла на нашем Web сервере.
  • Мы упаковали мидлет (создали JAR и JAD файлы).
  • Мы создали HTML страницу со ссылкой на мидлет.
  • Мы поместили JAR, JAD и HTML файлы на Web сервер.

Теперь настало время запустить эмулятор и найти, загрузить, установить и выполнить наш мидлет.

Запуск эмулятора через OTA

Для начала откройте меню и щелкните по Run via OTA. В результате запустится эмулятор, в окне которого Вы должны увидеть следующее изображение:

Чтобы запустить менеджер приложений, выберите Apps. В открывшимся окне менеджера Вы найдете лишь одну строку: Install Application. Запустите программу, нажав на кнопку Menu в правом нижнем углу экрана. Когда меню высветится,  выберите Launch.

Вводим адрес Web сервера


Настало время ввести адрес страницы на нашем Web сервере. Введитеhttp://localhost:8080/examples/midp20/TickerDemo.html, затем нажмите menu и выберите пункт Go. Устройство установит соединение с сервером и загрузит HTML файл. Вы увидите следующее сообщение:

Установка мидлета, Шаг 1: Выбор приложения

Как только загрузка будет окончена, менеджер приложений выведет список мидлетов, доступных для скачивания. В нашем случае будет присутствовать только TickerDemo.jad. Выберите его и нажмите кнопку Install в правом нижнем углу экрана. Обратите внимание на то, что сначала должен быть загружен именно JAD файл. Подробнее об этом читайте ниже.


Установка мидлета, Шаг 2: Подтверждение установки


После загрузки JAD файла менеджер проектов покажет версию и размер JAR архива мидлета, а также некоторую другую полезную информацию. Теперь вам понятно почему менеджер проектов не загрузил JAR файл сразу? Он мог оказаться слишком большим или у вас могла быть установлена более новая версия этого мидлета. Менеджер спросит, надо ли продолжать установку.

Нажмите кнопку Install в нижнем правом углу экрана, чтобы загрузить JAR файл.

Как только загрузка завершится, менеджер проверит содержание загруженного пакета, и если все правильно, то позволит запустить мидлет.

Теперь в окне менеджера проектов появилась еще одна строка: TickerDemo. Нажмите кнопку Menu и выберите пункт Launch, чтобы запустить  мидлет. Как видите все прошло успешно.


Раздел 5. Безопасность

Введение

Как упоминалось ранее, все мидлеты по спецификации MIDP 1.0 работали, используя модель безопасности под названием "песочница" (sandbox). То есть, мидлеты могли получить доступ к API, являющимся частью MIDP спецификации (например, компоненты пользовательского интерфейса) или библиотек, включенных в мидлет. Таким образом, не было возможности получить доступ к специфическим функциям устройства.

MIDP 2.0 построена на концепции недоверенных и доверенных приложений. Недоверенные приложение полностью соответствуют модели MIDP 1.0 со всеми ее ограничениями. Доверенные мидлеты могут получить доступ к внешним функциям.  Например, телефон может предоставлять функции для работы с адресной книгой.

Далее речь пойдет о том, как можно с помощью WTK получить доступ к этим специфическим функциям.


Основы безопасности


Система безопасности мидлета работает подобно ореховой скорлупе. Область защиты (protection domain) определяет что может использовать мидлет (в рамках данной области). Владелец области решает кто может получить доступ к защищенным функциям. Он также определяет что считать доверенным мидлетом. Идентификация доверенного мидлета осуществляется согласно X.509 Public Key Infrastructure (PKI) сертификату.

Таким образом, мидлет должен уметь генерировать PKI сертификат. Этот процесс получил название подпись (signing). Как только мидлет окажется подписанным,  устройство сможет проверить подпись и предоставить доступ к защищенным функциям.

Очевидно, вопрос безопасности не относится к разряду простых.  Цель данной статьи научить Вас использовать WTK, а не воспитать эксперта по безопасности. Мы затронем лишь те вопросы и приемы, которые могут пригодиться на практике.


Подпись мидлета


В установках продукта сертификат должен генерироваться специально уполномоченным центром.  В нашем случае, можно генерировать сертификат для эмуляции создания подписанного мидлета.

Шаг 1. Мы будем использовать созданный нами ранее проект TickerDemo. Упакуйте мидлет, создав JAR и JAD файлы. Для этого откройте проект, выберите пункт Project в меню KToolbar-а и нажмите на Create Package.

Шаг 2. Выберите пункт меню File. Щелкните по Utilities. В открывшемся диалоге выберите Sign MIDlet. Обратите внимание на диапазон дат, когда сертификат считается действительным.
Valid from Sun Jan 05 04:26:34 CST 2003 to Tue Oct 11 05:26:34 CDT 2005
Мы вернемся к этому опросу позже, когда будем проверять сертификат на устройстве.

Шаг 3. Нажмите кнопку Sign MIDlet Suite на верхней панели.


Загрузка и запуск подписанного мидлета


Скопируйте новые JAD и JAR файлы на наш Web сервер. Выберите в меню KToolbar-а пункт Project, а затем Run via OTA. В появившемся окне введите URL нашего мидлета (точно так же как мы это делали в предыдущем разделе).
http://localhost:8080/examples/midp20/TickerDemo.html
Установите и выполните мидлет.



Как мы можем проверить мидлет?


Итак, чем же отличается этот процесс от проделанного ранее, когда мидлет не был подписан? Все выглядит так,  будто подписание мидлета это просто упражнение.  Пока менеджер приложений проверяет мидлет, Вы видите незамысловатое сообщение на экране телефона: Verifying the application ... Оно создает впечатление, что проверка действительно происходит. Давайте выясним так ли это.

  • Измените на компьютере год на 2006.
  • Выберите в меню KToolbar-а Project->Run via OTA.
  • В появившемся окне введите URL нашего мидлета (http://localhost:8080/examples/midp20/TickerDemo.html).
  • Установите и запустите мидлет.

Если вы помните, то при подписи мидлета мы использовали строку:

Valid from Sun Jan 05 04:26:34 CST 2003 to Tue Oct 11 05:26:34 CDT 2005
Если мы установим на компьютере дату, выходящую за пределы этого промежутка, то при загрузке мидлета (опять через OTA) мы должны получить сообщение о том, что срок действия сертификата иссек. Давайте проверим так ли это:


Все будет идти прекрасно до момента проверки сертификата. На этом шаге Вы получите сообщение, что его срок действия иссек:

Как видите, WTK действительно проверяет сертификаты, а не просто выводит красивую картинку.

Вы можете задаться вопросом: А что же WTK делал, когда мы тестировали неподписанную версию мидлета, и почему не появилось сообщение об ошибке? Даже если мидлет не подписан, он должен проверяться. В этом случае просто проверяется, соответствует ли размер JAR архива указанному в JAD файлы и синхронизирован ли JAD с манифестом.


Требование разрешений


Стоит упомянуть еще один важный пункт. Предыдущий пример просто демонстрировал средства  конфигурирования настроек безопасности. До сих пор мы не пытались воспользоваться защищенными функциями. На практике при конфигурировании требуется проделать дополнительный шаг: обозначить используемые нами защищенные ресурсы.

Перед тем как приступить к настройке нашей системы, давайте рассмотрим два варианта задания разрешений: вручную и с помощью WTK.

Установка разрешений в WTK


Wireless Toolkit предоставляет набор утилит для настройки разрешений.

  • щелкните по кнопке Settings на панели KToolbar-а.
  • Активизируйте вкладку Permissions.
  • Введите разрешения в диалоговом окне.


Все введенные здесь разрешения будут добавлены в JAD файл. Вы могли сделать это и вручную в любом текстовом редакторе.


Заключение


В этом разделе мы только коснулись возможностей WTK по настройке безопасности. Если Вы собираетесь распространять свои приложения, вам стоит более близко познакомиться с этой темой. Незаменимым подспорьем здесь будет документация, поставляемая вместе с WTK.



Раздел 6. Регистрация входящих соединений

MIDP 2.0 включает поддержку уведомления о входящем соединении. Основная идея заключается в том, что при попытке входящего соединения установить связь с мидлетом, он может быть оповещен менеджером проектов. Если мидлет уже запущен, то соединение будет установлено. Если мидлет не активен, менеджер приложений запустит его, с помощью метода startApp().

Для того чтобы мидлет обрабатывал входящее соединение, он должен зарегистрировать список действительных связей. Это можно сделать, добавляя соответствующие строки в JAD файл, или запустив мидлет и вызвав метод registerConnection().


Редактирование JAD файла


При добавлении новой записи в список соединений через JAD файл, Вы должны использовать следующий формат:

MIDlet-Push-<n>: <ConnectionURL>, <MIDletClassName>, <AllowedSender>

где:

  • ConnectionURL - URL соединения
  • MIDletClassName - определяет, какой метод будет ассоциироваться с соединением.
  • AllowedSender - определяет какие отправители (имеется в виду источник, пытающийся установить соединение) имеют право выполнить соединение через URL. Вы можете разрешить устанавливать соединение не только отдельному пользователю, но и целой подсети. Например, значение 128.1.3.* разрешит соединение со всеми отправителями, чьи IP адреса начинаются с 128.1.3

Чтобы  не быть голословным, рассмотрим несколько примеров:

MIDlet-Push-1: socket://:88, Chatterbox, *
MIDlet-Push-2: datagram://:50000, Chatterbox, *

Эти строки говорят, что мидлет Chatterbox будет обрабатывать соединения через socket и datagram через указанные порты от всех отправителей.


Регистрация в WTK

Чтобы настроить список разрешенных внешних соединений с помощью WTK надо:

  • Выбрать Settings в меню KToolbar-а
  • Кликнуть по вкладке Push Registry
  • Добавить новые соединения. Все добавленные здесь строки будут автоматически созданы в JAD файле проекта.

 

Заключение

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


Раздел 7. Радио сообщения

Введение

Спецификация MIDP 2.0 не поддерживает радио сообщения (такие как SMS). Однако, поскольку API радио сообщений (Wireless Message API - WMA) является дополнительным пакетом для J2ME, WTK позволяет разрабатывать мидлеты использующие WMA.

Вы можете настроить WMA следующим образом:

  • Выберите Edit в меню KToolbar-а.
  • В выпавшем меню щелкните по Preferences.
  • Выберите вкладку API Availability.

Для того чтобы включить поддержку Wireless Messaging API, поставьте на соответствующем поле галочку.


Тестирование


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

  • Выберите Edit в меню.
  • В выпавшем меню щелкните по Preferences.
  • Выберите вкладку WMA.

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


Раздел 8. Поддержка звука

Mobile Media API (MMA) поддерживается J2ME устройствами с расширенными возможностями по воспроизводству звука.  Для устройств с ограниченными звуковыми возможностями, MIDP включает поднабор MMA.

WTK позволяет разрабатывать приложения как с использованием полной версии MMA, так и с урезанным API, входящим в состав MIDP 2.0 спецификации. Выбрать один из этих вариантов можно в Preferences меню.

  • Выберите Edit в меню.
  • В выпавшем меню щелкните по Preferences.
  • Выберите закладку API Availability.

Здесь Вы можете указать, стоит ли использовать MMA или достаточно возможностей MIDP 2.0 API.

Вы также можете выбрать поддерживаемые форматы звука и  дополнительные аудио функции. Для этого перейдите на вкладку MMedia. Названия говорят сами за себя.


Раздел 9. Обзор игрового API

В силу того, что мощность телефонных процессоров оставляет желать лучшего,  графические возможности в MIDP 1.0 были существенно ограничены. Это привело к тому, что разработчики игр вынуждены были изобретать велосипед. В MIDP 2.0 это упущение было устранено. В состав MIDP 2.0 был добавлен игровой API, который предоставлял более широкие графические возможности и состоял из следующих классов:

  • GameCanvas - создает платформу для пользовательского интерфейса игры.
  • Layer - предоставляет графические элементы.
  • LayerManager - управляет одним или более Layer-объектом.
  • Sprite - предоставляет спрайт - визуальный элемент, который можно анимировать, деформировать, вращать, и т.д.
  • TiledLayer - позволяет создавать сетку, ячейки которой заполняются изображениями из набора рисунков.

В дополнение к игровым расширениям, MIDP 2.0 поддерживает представление рисунков в виде  массива целых чисел. Это позволяет получить прямой доступ к изображению и редактировать его в памяти телефона.

Раздел 10. Контроль за выполнением

Введение

С помощью WTK вы можете следить за ходом выполнения вашего приложения: просматривать используемую память, сетевой трафик и время выполнения методов. Для реализации этих возможностей необходимо проделать следующие шаги:

  • Выберите Edit в меню.
  • В выпавшем меню щелкните по Preferences.
  • Выберите закладку Monitor.
  • Пометить необходимые поля.


Когда вы запустите мидлет, вместе с эмуляторам будут открыты дополнительные окна (по одному на каждый помеченный вами тип мониторинга).

Мониторинг сети (Network Monitor)

С помощью этого монитора, вы можете просматривать сетевой трафик между вашим мидлетом и удаленным ресурсом. Просмотр возможен для протоколов HTTP, HTTPS,
datagrams, sockets, SSL, comm, SMS, и CBS. Монитор отображает как входящие, так и исходящие сообщения. Вы также можете использовать различные фильтры, чтобы ограничить поток выводимой информации.

Мониторинг памяти (Memory Monitor)


С помощью этого монитора Вы можете узнать сколько памяти использует ваше приложение. Возможно представление информации в виде графика или в виде таблицы, где показано распределение памяти по объектам.

Контроль быстродействия (Application Profiler)

С помощью этого монитора можно узнать сколько времени занимает выполнение того или иного метода. Этот монитор незаменим при оптимизации программы. Он позволяет быстро находить слабые места приложения.


Раздел 11. Подведем итоги

Новые возможности MIDP 2.0

Как Вы могли убедиться, WTK поддерживает все функциональные возможности спецификации MIDP 2.0. Ниже приведен список не упомянутых нами возможностей:

  • Расширенные возможности по работе с формами.
  • Возможность создавать собственные Item компоненты, которые затем можно помещать на форму.
  • Spacer - новый компонент, позволяющий создавать отступы между другими визуальными компонентами формы.
  • POPUP - новый стиль компонента ChoiceGroup, похожий на combo box.
  • Поддержка HTTPS.
  • Другие незначительные обновления.


Заключение


Wireless Toolkit прекрасно подходит на роль отправного пункта для J2ME разработчика. В этом документе было показано как списать и установить Wireless Toolkit, как с его помощью создать простейший мидлет. Большая часть была отведена под over-the-air (OTA) provisioning, позволяющий эмулировать процессы загрузки и установки мидлета с удаленного web сервера на устройство.

В Wireless Toolkit 2.0 были существенно расширены возможности по настройке параметров безопасности проекта. В рамках данного документа мы создали подписанный мидлет и проверили подлинность подписи через OTA provisioning. Мы также затронули вопрос настройки WTK для работы с защищенным API.

В WTK 2.0 была добавлена поддержка  регистрации, радио сообщений, аудио и игрового API. Мы коротко рассмотрели их основные возможности.

В рамках документа был затронут вопрос осуществления мониторинга за ходом выполнения приложения.

Вы познакомились с основными возможностями среды WTK, теперь вы можете сосредоточить свои усилия на изучении MIDP API и написании кода. Удачи в этом нелегком, но интересном деле!




Наши соцсети

Подписаться Facebook Подписаться Вконтакте Подписаться Twitter Подписаться Google Подписаться Telegram

Популярное

Ссылки

Новости [1] [2] [3]... Android/ iOS/ J2ME[1] [2] [3]) Android / Архив

Рейтинг@Mail.ru Яндекс.Метрика
MobiLab.ru © 2005-2018
При использовании материалов сайта ссылка на www.mobilab.ru обязательна