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.
© "Мобильный форум"
25.11. [Новинки] Анонсы: Представлен Vivo Y300 5G с 50-мегапиксельной основной камерой / MForum.ru
25.11. [Новинки] Слухи: Moto G 5G (2025) замечен на рендерах / MForum.ru
22.11. [Новинки] Слухи: Google отменила Pixel Tablet 2, а не Pixel Tablet 3 / MForum.ru
22.11. [Новинки] Анонсы: Nubia Z70 Ultra дебютирвал с SD 8 Elite и 35-миллиметровой основной камерой с переменной апертурой / MForum.ru
21.11. [Новинки] Анонсы: Oppo Find X8 и X8 Pro выходят на глобальный рынок / MForum.ru
21.11. [Новинки] Слухи: Google отменяет Pixel Tablet 3 / MForum.ru
20.11. [Новинки] Слухи: Reno 13 и Reno 13 Pro замечены в Geekbench / MForum.ru
20.11. [Новинки] Слухи: Nubia Z70 Ultra с впечатляющей камерой представят 21 ноября / MForum.ru
19.11. [Новинки] Анонсы: Представлен ZTE Blade V70 с основной камерой 108 МП и аналогом Dynamic Island / MForum.ru
19.11. [Новинки] Слухи: HMD Icon Flip 1 готовится к анонсу / MForum.ru
18.11. [Новинки] Слухи: Samsung Galaxy A36 получит улучшенную фронтальную камеру / MForum.ru
18.11. [Новинки] Слухи: Vivo Y300 5G появился на «живых» фото / MForum.ru
15.11. [Новинки] Слухи: Стали известные некоторые спецификации Realme C75 / MForum.ru
15.11. [Новинки] Слухи: Realme Narzo 70 Curve готовится к анонсу / MForum.ru
14.11. [Новинки] Анонсы: Представлены Nubia Red Magix 10 Pro и 10 Pro+ с SD 8 Elite и огромными батареями / MForum.ru
13.11. [Новинки] Слухи: Vivo X200 и X200 Pro готовятся к глобальному релизу / MForum.ru
13.11. [Новинки] Слухи: Стали известны основные характеристики и особенности серии iQOO Neo10 / MForum.ru
12.11. [Новинки] Анонсы: Red Magic 10 позирует на рендерах / MForum.ru
11.11. [Новинки] Анонсы: Huawei MatePad 11.5 (2024) представлен официально / MForum.ru
11.11. [Новинки] Слухи: Samsung выпустит Galaxy S25 Slim в 2025 апреле года / MForum.ru