— размер экрана примерно (как минимум) 96x54 пикселей;
— глубина экрана 1 бит;
— клавиатура для работы одной или двумя руками, устройство ввода с сенсорного экрана;
— 128 Кб энергонезависимой памяти для MIDP-компонентов;
— 8 Кб энергонезависимой памяти для данных постоянного хранения;
— 32 Кб энергозависимой оперативной памяти для области динамической памяти Jra;
— двусторонняя беспроводная связь.
Поскольку диапазон возможностей MID столь широк, MIDP устанавливает рабочую величину минимального общего знаменателя возможностей устройств. MIDP поэтому определяет следующие API:
— приложения (семантика и управление приложениями MIDP);
— пользовательский интерфейс;
— постоянное хранение;
— организация сетей; таймеры.
В таблице 1.5. перечислены пакеты, которые содержит MIDP.
Таблица 1.5. Пакеты MIDP
Название пакета MIDP — Описание
javax.microedition.Icdui— Классы и интерфейсы интерфейса пользователя
javax.microedition.rms— Система организации ведения записей (Record management system, RMS], поддерживающая постоянное хранение устройства
javax.microedition.midlet— Типы классов поддержки определения приложений МЮР
javax.microedition.io— Классы и интерфейсы структуры общих соединений МЮР
java.io— Классы и интерфейсы стандартного ввода/ вывода Java
Java.lang— Классы и интерфейсы виртуальной Java машины
Java.util— Классы и интерфейсы стандартных утилит
Вы узнаете больше о деталях программирования API, перечисленных в таблице 1.5, в главах 3–9.
Реализация MIDP должна состоять из пакетов и классов, указанных в спецификации MIDP. Кроме того, она может иметь зависимые от реализации классы для доступа программного и аппаратного обеспечения родной системы.
На рисунке 1.3 сопоставляются структуры данных платформ CDC и CLDC. Как в CDC, так и в CLDC нет ничего такого, что препятствует производителю подключать любую из платформ к данному семейству устройств. Тем не менее, структуры платформ — особенно свойства конфигураций и профилей — были определены для работы с практическими ограничениями различных семейств аппаратных устройств.
Название пакета МIDР — Описание
javax.microedition.midlet— Типы классов поддержки определения приложений МЮР
javax.microedition.io— Классы и интерфейсы структуры общих соединений МЮР
java.io— Классы и интерфейсы стандартного ввода/ вывода Java
Java.lang— Классы и интерфейсы виртуальной Java машины
Java.util— Классы и интерфейсы стандартных утилит
Рисунок 1.3. CDC предназначена для стационарных устройств с фиксированным соединением и общим доступом. CLDC предназначена для персональных мобильных устройств с ограниченным соединением
Системы управления приложениями устройств
Все приложения J2ME — MID-леты и другие — являются настоящими приложениями Java, которые запускаются под контролем Java VM. Но что контролирует Java VM, например, на мобильном телефоне? Не существует командного процессора, с которого вы можете активизировать ваши любимые приложения Java, как вы можете сделать на рабочей станции. Запуск, остановка и управление приложениями Java контролируется программами управления приложениями {application management software, AMS), которые находятся на этом устройстве. В действительности AMS контролирует весь жизненный цикл приложения от установки, обновления и управления версиями до удаления программного обеспечения.
Производители устройств обычно предоставляют программное обеспечение AMS. Это самый логичный сценарий, потому что программное обеспечение AMS должно работать вместе с программным обеспечением родной системы устройства, которую, по всей видимости, производитель знает лучше всего. Тем не менее, производители комплектующего оборудования также могут разрабатывать системы AMS для определенных устройств. Программное обеспечение AMS может быть написано, например, в Java или некоторых других машинных языках, таких, как С. Понимание вопросов, связанных с управлением приложениями, важно для разработчика на J2ME. Управление приложениями описывается в главе 10. Вы должны знать о последствиях вашего выбора в отношении упаковки, лицензирования, загрузки для использования и так далее, и как эти решения повлияют на удобство, простоту использования и жизнеспособность вашего программного обеспечения.
Выводы по главе
Платформа J2ME предназначена для двух классов портативных компьютерных устройств. Первый класс состоит из стационарных устройств с фиксированными сетевыми соединениями, таких, как компьютерные приставки к телевизору. Второй класс состоит из персональных мобильных устройств с нестационарной сетевой связью, таких, как «карманные» компьютеры, мобильные телефоны и так далее.
Читать дальше