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.
© "Мобильный форум"
17.04. [Новинки] Слухи: Realme GT 8 Pro на базе Snapdragon 8 Elite 2 представят в октябре/ноябре / MForum.ru
17.04. [Новинки] Слухи: OnePlus 13s может появиться в Индии в июне / MForum.ru
16.04. [Новинки] Анонсы: Redmi A5 – новое поколение сверхбюджетных смартфонов / MForum.ru
16.04. [Новинки] Анонсы: Представлен Motorola Edge 60 Stylus с встроенным стилусом и рейтингом IP68 / MForum.ru
15.04. [Новинки] Cлухи: Oppo K13 получит новый чип Qualcomm и емкую АКБ / MForum.ru
15.04. [Новинки] Компоненты: OmniVision OV50X – сенсор камеры «кинематографического уровня» / MForum.ru
14.04. [Новинки] Анонсы: Oppo Watch X2 Mini и Enco Free4 представлены официально / MForum.ru
14.04. [Новинки] Анонсы: Oppo Pad 4 Pro на базе Snapdragon 8 Elite представлен официально / MForum.ru
11.04. [Новинки] Анонсы: Oppo Find X8s и Find X8s+ на базе Dimensity 9400+ представлены официально / MForum.ru
11.04. [Новинки] Анонсы: Представлен Oppo Find X8 Ultra с улучшенными двумя телеобъективами 50 МП / MForum.ru
10.04. [Новинки] Слухи: Realme Neo 7 Pro с Dimensity 9400e могут представить в мае / MForum.ru
10.04. [Новинки] Слухи: Раскрыты ключевые спецификации Honor Power / MForum.ru
09.04. [Новинки] Анонсы: Moto G Stylus (2025) представлен официально / MForum.ru
09.04. [Новинки] Анонсы: Infinix Note 50s 5G – самый тонкий телефон в Индии с дисплеем AMOLED 144 Гц / MForum.ru
08.04. [Новинки] Анонсы: Стильные смарт-часы Huawei Watch Fit 3 представлены официально / MForum.ru
08.04. [Новинки] Слухи: Realme Narzo 80 Pro 5G и Narzo 80x 5G готовятся к анонсу / MForum.ru
08.04. [Новинки] Слухи: Vivo T4 получит Snapdragon 7s Gen 3 и яркий AMOLED-дисплей / MForum.ru
07.04. [Новинки] Анонсы: Redmi Buds 7S представлены официально / MForum.ru
04.04. [Новинки] Анонсы: Honor Play 60 и Play 60m представлены официально / MForum.ru
04.04. [Новинки] Слухи: Раскрыт дизайн Motorola Razr 60 и Razr 60 Ultra / MForum.ru