MForum.ru
30.01.2006, MForum.ru
Главное отличие технологии i-mode от других мобильных платформ с точки зрения программирования – это своя версия платформы Java (DoCoMo Java или сокращенно DoJa). В новом материале, подготовленном компанией "Медиа Мобайл" для MForum.ru, описаны особенности использования этой технологии (в России используется DoJa 1.5) и ее отличия от технологии MIDP (Mobile Information Device Profile), используемой в J2ME.
Doja как и MIDP базируется на CLDL (Connected Limited Device Configuration), которая входит в состав J2ME. Более того, Doja API так же как и MIDP состоит из 2 частей – API относящийся к J2ME/CLDC и API содержащий непосредственно функции, относящиеся к платформе i-mode (i-mode Java API). i-mode Java API предоставляет функции работы с интерфейсом, связью, графикой и проигрыванием звука. По функциональности многие из них похожи на присутствующие в MIDP, но есть и довольно сильные отличия.
Пакеты, входящие в состав i-mode Java API:
• com.nttdocomo.io Cодержит в себе 2 класса – HttpConnection, отвечающий за сетевые соединения по протоколу HTTP и ConnectionException, содержащий исключения, возникающие при работе с сетью.
• com.nttdocomo.net Содержит классы для сетевого взаимодействия, в частности класс URLEncoder, конвертирующий строку в формат URL и URLDecoder, совершающий обратное преобразование.
• com.nttdocomo.util Содержит некоторые вспомогательные классы и интерфейсы, такие как, например, EventListener (уведомление о событиях) и интерфейсы работы с таймерами.
• com.nttdocomo.lang Содержит 2 класса исключений - UnsupportedOperationException и IllegalStateException.
• com.nttdocomo.ui Содержит различные классы для создания приложения и пользовательского интерфейса.
Основные особенности Doja-приложений
• Одновременно может быть запущено не более одного приложения
• Одно приложение не может получить доступ к скрэтчпаду (см. ниже) другого
• Приложение не может получить доступ к личным данным, таким как адресная книга
• Максимальный размер jar-файла – 30 кб
• Максимальный размер скрэтчпада – 100 кб
• Приложение может устанавливать сетевое соединение только с тем сервером, с которого было загружено
• Максимальная величина исходящего HTTP запроса – 5 кб, входящего – 10 кб
Хранение данных
Как в MIDP, так и в Doja, существует возможность сохранять данные необходимые приложению на мобильном телефоне, однако реализована эта возможность разными способами. В MIDP для постоянного хранения данных используется механизм RecordStore, который представляет собой разновидность базы данных. Вся работа с данными осуществляется через записи (как и в обычных БД). В Doja все данные, которые приложению необходимо сохранить, записываются в область, называемую скрэтчпад (Scratchpad), которую можно представить, как один большой файл, поддерживающий произвольный доступ. Приложение может также загружать картинки и звуки из интернета и сохранять их в скрэтчпаде для последующей загрузки и использования (обычно так и поступают, т.к. максимальный размер jar’а – 30 кб, чего зачастую не хватает для сохранения графики и звуков).
Особенности работы с графикой
Одной из главных проблем при работе с графикой в Doja является отсутствие функций клиппинга изображений. То есть, в классе Graphics нет аналогов функций clipRect и setClip, а также нет никакого способа их заменить. Таким образом, изображения можно выводить на экран только полностью, что является значительным ограничением. Еще одно отличие Doja 1.5 от MIDP – отсутствие якорей для вывода графики и текста. В MIDP при выводе картинки на экран функция drawImage, а также ряд других функций принимают в качестве одного из параметров так называемый якорь, который представляет собой набор флагов для выравнивания графических элементов относительно какой-либо позиции на экране. В Doja понятие якорей отсутствует. Также различаются поддерживаемые форматы графики – для MIDP основным является Png, тогда как Doja поддерживает только Gif и Jpeg.
У вас есть вопросы к авторам материала? Спрашивайте в форуме под статьей, вам ответят специалисты компании MediaMobile.
© "Мобильный форум"
20.08. [Новинки] Анонсы: Honor X7c 5G представлен официально / MForum.ru
19.08. [Новинки] Слухи: Meizu 22 сертифицирован по стандарту 3C, раскрыты основные характеристики / MForum.ru
19.08. [Новинки] Слухи: Раскрыты цены Xiaomi 15T и 15T Pro / MForum.ru
18.08. [Новинки] Слухи: Бюджетный крепыш Doogee Fire 3 готовится к анонсу / MForum.ru
18.08. [Новинки] Слухи: Doogee S200 Ultra с двумя дисплеями готовится к анонсу / MForum.ru
18.08. [Новинки] Анонсы: Бюджетный смартфон Vivo G3 появился в Китае / MForum.ru
15.08. [Новинки] Анонсы: Представлен Tecno Spark Go 5G c камерой на 50 МП и АКБ 6000 мАч / MForum.ru
15.08. [Новинки] Анонсы: Умные очки HTC Vive Eagle AI представлены официально / MForum.ru
14.08. [Новинки] Слухи: Samsung Galaxy S26 Edge на базе Snapdragon 8 Elite 2 замечен в базе Geekbench / MForum.ru
13.08. [Новинки] Слухи: Появились новые данные о чипсете iPhone 17 Air / MForum.ru
13.08. [Новинки] Анонсы: Poco M7 Plus 5G официально представлен в Индии / MForum.ru
13.08. [Новинки] Анонсы: Infinix Hot 60i 5G появится в Индии с 16 августа / MForum.ru
12.08. [Новинки] Слухи: Tecno MegaPad с 12-дюймовым экраном и AI-кнопкой готовится к анонсу / MForum.ru
12.08. [Новинки] Слухи: Появились новые подробности об iPhone 17 Pro / MForum.ru
11.08. [Новинки] Анонсы: HTC Wildfire E4 Plus представлен официально / MForum.ru
11.08. [ПО] Анонсы: Realme изменила подход к выпуску обновлений ПО / MForum.ru
08.08. [Новинки] Слухи: Подтверждены основные характеристики Infinix Hot 60i 5G / MForum.ru
08.08. [Новинки] Анонсы: Redmi 15 5G с АКБ 7000 мАч представлен официально / MForum.ru
08.08. [Новинки] Анонсы: Honor 400 Smart с АКБ 6500 мАч появился в Европе / MForum.ru
07.08. [Новинки] Слухи: Exynos 1680 замечен в листинге Geekbench 6 / MForum.ru