Данная статья - краткий обзор распространенных "связок" базовых профилей Java 2 ME. Базовые профили определяют основную функциональность устройств. Существуют следующие "связки": CLDC+MIDP - Самая распространенная связка профилей. Характеристика телефона: поддержка J2ME именно говорит именно о поддержке CLDC+MIDP. На данный момент количество устройств с поддержкой данного профиля J2ME несколько сотен миллионов. CLDC+IMP - Поддерживается GSM-терминалами (их также называют GSM модулями и GPRS модемами). Эти устройства используются для построения M2M GSM систем. CLDC+DoJa - Профиль придуманный NTT DoCoMo (самый крупный в Японии оператор сотовой связи) для создания ПО для i-mode - I-Aply. Официально не признан JCP, но несмотря на это телефонов с поддержкой I-Aply больше 50 милионов. CDC - Профиль используемый в мобильных устройствах, по характеристикам превосходящим мобильные телефоны. К сожалению, MRC Altalabs не вела разработку на этом профиле. И судить об этом профиле мы ничего не можем. CLDC отвечает за: Математику. Программы могут выполнять простые операции с целыми числами. И генерировать псевдослучайные цифры. За счет довольно больших трудовых затрат, жертвования скорости и размерами программы разработчики могут добавлять сложные математические функции и производить операции с числами с "плавающей точкой" Работу с сетью. Некоторые устройства могут поддерживать http, UDP, TCP и даже работу с Com и инфракрасными портами Массивы. К примеру, можно создать массив целых чисел, игровых объектов и элементов меню. Кроме массивов есть еще и вектора (аналогия с геометрией здесь не уместна) и стэки. Это массивы длину, которых очень легко увеличить, но расплачиваться приходиться скоростью работы приложений Работа со строками. Строки необходимы для ввода-вывода информации. Строки могут быть и формата UniCode, который позволяет вывод информации на разных языках, в том числе и русском. Получение программой системной информации. Программа может узнать модель телефона, системное время. Программа может также узнать возможность поддержки опциональных пакетов, но об этом ниже. MIDP отвечает за: Графический интерфейс позволяет организовывать меню, выводить на экран сообщения. А также позволяет пользователю вводит текстовую информацию. Таймеры. Канву. Есть возможности выводить эллипсы, линии, картинки. Это позволяет создавать графическую часть игры. Эту связку СLDC 1.0 и MIDP 1.0 поддерживают мобильные телефоны сертифицированные, как Java2 ME: Motorola: A388, A388c, E380, T280i, T720, V60i, V66i. Nokia: 3100, 3108, 3200, 3120, 3300, 3410, 3510i, 3590, 3600, 3650, 5100, 5140, 6010, 6100, 6200, 6220, 6230, 6310i, 6585, 6600, 6610, 6620, 6650, 6800, 6800, 6810, 6820, 7200, 7210, 7250, 7250i, 7600, 7600, 7610, 7650, 7700, 8910i, 9210, Communicator 9210i, Communicator 9290, Communicator 9500, Nokia N-Gage Game Deck, 3120, 7610. Siemens: C(T)56, C55, C61, CF62, M46, M50, S55, SL42, SL45i/6688i, SL55, SX1 и вся 65ая серия. Sony Ericsson: F500, K500, K700, P800, P900, P910, S700, T616, T628, T630, Z1010, Z500, Z600. MIDP 2.0 Наиболее значительное изменение - добавилось несколько новых классов для реализации 2D движка. 2D движок позволяет работать со спрайтами, слоями и использовать двойную буферизацию. Спрайты - это анимированные картинки. Вы их часто можете наблюдать в 2D компьютерных играх. Несколько облегчилась работа программиста при создании меню, добавилось пару незначительных видоизменений графического интерфейса. Почти на всех MIDP 2.0 телефонах есть поддержка Push-регистра. В него заносятся порты, зарезервированные под приложения и при передачи информации на них запускается соответствующий мидлет. Расширены возможности сетевых соединений - добавлен защищенный протокол связи HTTPS. Теперь почти на всех телефонах есть целый ряд соединений: TCP, UDP и HTTP. Иметься довольно многофункциональная работа со звуком: вывод мелодий, звуков и произвольных тонов (нот). Также можно прослушивать звуки с вебсервера. Есть довольно широкие возможности настройки генератора мелодий, управление громкостью. Эту связку поддерживают все мобильные телефоны сертифицированные, как Java2 ME MIDP 2.0: Nokia: 5140, 5140, 6230, 6585, 6620, 7610, 7700, 9500. Sony Ericsson: F500i, F500i, K500c, K500i, K506c, K508c, K508i, K700c, K700i, P910a, P910c, P910i, S700c, S700i, S710a, Z1010, Z500a, Z500i. Siemens: Вся 65ая серия кроме А65. IMP По функциональности IMP напоминает MIDP. IMP превосходит по функциональности MIDP связанной с сетью и не поддерживает поточечный экран (его в IMP устройствах нет). Также с помощью профиля можно работать со входами-выходами устройства GPIO, I2P и COM портом. Главное преимущество профиля IMP перед MIDP - поддержка AT команд. В IMP устройствах возможно присоединение построчного экрана через I2P и клавиатуры. Удобно сравнивать IMP c MIDP. IMP 1.0 это аналог MIDP 1.0, а IMP NG (он же IMP 2.0) аналог MIDP 2.0. В принципе эти два профиля по архитектуре очень даже похожи. Но цели для которых они созданы различны: IMP предназначен для телеметрических и телемеханических бизнес приложений. А MIDP для развлекательных программ и утилит. M2M устройства не обладают встроенным экраном и профиль. Но зато IMP обладает более широкими возможностями для коммуникации: настройка соединения с помощью AT команд, некоторые терминалы могут осуществлять коммуникацию при помощи USSD. DoJa (I-Aply или i-mode) В отличие от MIDP больше "заточен" под сеть. Портировать приложения с MIDP на DoJa не слишком проблематично, если заранее предусматривать эту возможность и проектировать приложение таким образом, чтобы облегчить портирование на I-mode. DoJa отличается от MIDP большим числом возможностей работы с сетью, но однопользовательские игры на этом профиле писать намного сложнее, чем на MIDP 2.0. В DoJa есть новый тип приложений именуемый "агент". В определенное время программа сама запускается и связывается с сервером, производит какие-то действия и засыпает. Например, ночью узнает прогноз погоды на день и если есть вероятность снегопада ставит будильник на более ранее время, чтобы хозяин не опоздал на работу. Одной из заманчивых функций последней версии является 3D звук в играх, но телефон должен быть оснащен двумя динамиками. DoJa приложение должны не превышать 50 килобайт, а все что выше загружать после установки. В DoJa не возможности выводить кусок изображения (.setClip()) и нет "архоров" вывода изображения.
|