Изменить стиль страницы

Файл дескриптора приложения используется по двум причинам. Программное обеспечение управления приложениями устройства (AMS) использует информацию из этого файла для первоначальной проверки того, что все MID-леты в файле JAR соответствуют требованиям устройства, перед тем как оно загрузит полный файл JAR. AMS также использует эту информацию для управления MID-летом. AMS устройства отвечает за установку и удаление наборов MID-летов. Оно также обеспечивает MID-леты средой исполнения, требуемой спецификацией MIDP. Наконец, AMS управляет выполнением MID-летов, а именно запуском, приостановкой и закрытием всех MID-летов.

Наконец, сами MID-леты могут извлекать из конфигурации JAD-файла специфические атрибуты, которые представляют собой параметры MID-лета. Файл ресурсов приложения является основным механизмом для распаковки конфигураций MIDP-прило-жений.

Создание файла манифеста JAR

ЕСЛИ вы хотите добавить файл Manifest к вашему заархивированному набору MID-летов, вам необходимо создать его прежде, чем вы создадите сам JAR-архив. Вы можете создать этот файл в любом текстовом редакторе. Потом создайте JAR-файл с помощью стандартной утилиты JAR J2SE. Утилита JAR включается в утилиты инструментария Wireless Toolkit.

Спецификация MIDP требует, чтобы в файле Manifest присутствовали определенные поля. Требуемые поля показаны в таблице 2.2.

Таблица 2.2. Обязательные атрибуты файла MANIFEST.MF

Имя атрибута — Описание

MIDlet-Name — Название набора MID-летов

MIDlet-Versiorv — Номер версии набора MID-летов в форме .., определяемой схемой спецификации управления версиями продукта JDK

MIDlet-Vendor — Разработчик приложения (компания или частное лицо)

MIDlet- — По одному на MID-лет в данном наборе, содержит разделяемый запятой список из текстового имени MID-лета, значка и имени класса п-ного MID-лета в наборе

MicroEdition-Profile — Профиль J2ME, необходимый для исполнения MID-лета

MicroEdition-Configuration — Конфигурация J2ME, необходимая для исполнения MID-лета

Файл манифеста содержит строки атрибутов, один атрибут на строку. Каждый атрибут состоит из ключа и значения. После ключа ставится двоеточие, которое отделяет его от связанного с ним значения. Файл MANIFEST.MF программы HelloWorld находится в папке HelloWorld/bin/. Он выглядит следующим образом:

MIDlet-l: HelloWorld, HelloWorld.png, HelloWorld

MIDlet-Narae: HelloWorld

MIDlet-Vendor: Vartan Piroumian

MIDlet-Version: 1.0

MicroEdition-Configuration: CLDC-1.0

MicroEdition-Profile: MIDP-1.0

Обратите внимание на имя атрибута MIDlet-1: в файле MANIFEST.MF. Файл манифеста различает различные MID-леты, нумеруя их от MIDlet-l до MIDlet-/!. Число 1 должно идентифицировать первый MID-лет.

У атрибута MIDlet-1 существует три значения. Первое — название набора MID-летов, который содержит данный MID-лет. Это значение может быть именем, воспринимающимся человеком. Второе значение является именем файла изображения PNG, который AMS использует как значок, представляющий этот MID-лет. Последнее значение является именем файла класса MID-лета, который определяет входную точку исполнения MID-лета.

Наверное, самыми важными атрибутами являются атрибуты MicroEdition-Configuration и MicroEdition-Profile. AMS использует эти значения для определения того, подходит ли MID-лет для данного устройства.

Спецификация MIDP позволяет также создавать необязательные поля в файле манифеста. В таблице 2.3 показаны необязательные поля файла манифеста.

Таблица 2.3. Необязательные атрибуты файла MANIFEST.MF

Имя атрибута — Описание

MIDiet-Description — Описание набора MID-летов

MIDlet-Icon — Имя файла PNG, содержащегося в JAR

MIDlet-Info-URL — URL, который содержит дополнительную информацию об этом наборе MID-летов

MIDlet-Data-Size — Минимальное количество байт данных постоянного хранения, требуемое набором

Создание файла JAR для набора МID-летов

Теперь, когда вы создали файл манифеста, вы готовы к созданию файла JAR приложения. Используйте следующую команду jar:

$ jar craf bin/MANIFEST.MF bin/HelloWorld.jar — C classes/. -C res.

$

Эта команда создаст файл JAR для вашего набора MID-летов HelloWorld. Листинг содержимого директории bin/ обнаруживает только что созданный файл HelloWorld. jar:

$ Is — i bin

total 2

— rw-r-r- 1 vartan None 1393 HelloWorld.jar

— rw-r-r- 1 vartan None 193 MANIFEST.MF

$

Листинг содержимого файла JAR, который вы только что создали, выдает следующую информацию:

$ jar tf bin/HelloWorld.jar

META-INF/

META-INF/MANIFEST.MF

classes/./

classes/./HelloWorid.class

HelloWorld.png

$

Как вы можете видеть, файл манифеста включается в файл JAR. Файл JAR содержит один файл. class для нашего приложения HelloWorld. Он также содержит файл формата. png (portable network graphics — переносимая сетевая графика), который является подходящим вариантом для использования в качестве значка приложения. Файл MANIFEST.MF, конечно, был создан вручную, как описано выше.

Создание файла дecкpиптopa приложения для набора МID-летов

Программное обеспечение управления приложениями на устройстве, таком, как мобильный телефон, использует файл JAD для получения информации, необходимой для управления ресурсами во время выполнения MID-лета. Файл дескриптора приложения является необязательным, однако полезным. Вы можете использовать любой текстовой редактор для его создания, но вы должны дать файлу расширение. jad. Чтобы избежать путаницы, я рекомендую давать ему имя, которое характеризует весь набор MID-летов.

Таблица 2.4. Обязательные атрибуты файла дескриптора приложения

Имя атрибута — Описание

MIDlet-Jar-URL — URL файла JAR набора MID-летов

MIDlet-Jar-Size — Размер (в байтах) файла JAR

MIDlet-Name — Имя набора MID-летов

MIDlet-Vendor — Разработчик приложения (например, название компании или имя частного лица]

MIDlet-Version — Номер версии набора MID-летов в форме . ., определяемой схемой спецификации управления версиями продукта JDK

MicroEdition-Configuration — Конфигурация J2ME, необходимая для исполнения MID-лета

MicroEdition-Profile — Профиль J2ME, необходимый для исполнения MID-лета

Таблица 2.5. Необязательные атрибуты файла дескриптора приложения

Имя атрибута — Описание

MIDlet-Data-Size — Минимальное количество байт данных постоянного хранения, требуемое набором

MIDlet-Delete-Confirm — Указывает, должна ли AMS запрашивать подтверждение пользователя перед удалением MID-лета

MIDiet — Description — Описание набора MID-летов

MIDlet-Icon — Имя файла PNG, содержащегося в JAR

MIDlet-Info-URL — URL, который содержит дополнительную информацию об этом наборе MID-летов

MIDlet-Install-Notify — Указывает, должна ли AMS уведомлять пользователя перед установкой нового MID-лета