Авторизироваться
Меню сайта
Категории раздела
Для начинающих [16]
С этих статей вырасли все, кто сейчас программирует на MP. Именно с этих статей надо начинать новичку, качество у них не всегда хорошее, но почитать стоит.
Разбираем.Обьясняем [1]
В этой категории обьясняем, разьясняем библиотеки,примеры,мидлеты и т.д.
Прочее [4]
Прочее, что не касается программирования: как настроить MP, что нужно для работы и др...
Наш опрос
Стоит ли на нашем сайте публиковать мобильные новости?
Всего ответов: 190
Мини-чат
210
Статистика

Онлайн : 1
Гостей: 1
Пользователей: 0
Главная » Статьи » Midlet Pascal » Прочее

Получите распишитесь.
 Вот через несколько часов, а то и дней тяжелой работы, умственного напряжения и стучания пальцами по клавиатуре мы нажимаем на F7 и, затаив дыхание, через секунду блестящими глазами, в появившемся окошке, читаем эту замечательную надпись: «Build finished successfully!». Мигом заливаем полученные файлы на телефон, устанавливаем и бежим хвастаться друзьям своим новым «супер» приложением часто не задумываясь о том, что же это за магические файлы с расширением JAR и JAD созданные при компиляции. При создании несложных программ данная информация не обязательна, но ведь знания лишними не бывают. После компиляции мы получаем JAR и JAD файлы, о которых пойдет речь дальше.
  Начнем с файла с расширением JAD, который является файлом-«дескриптором». В нем находится вспомогательная информация, необходимая Java-машине для корректного запуска мидлета (некоторые телефоны могут обходиться и без него). То есть это просто файл, в котором описывается что и как, описывается размер JAR файла, имя автора и т.д. Создай новый проект и компилируй его. Теперь зайди в папку bin этого проекта и при помощи любого текстового редактора открой файл с расширением JAD. Ты должен увидеть следующее:
MIDlet-1: NewProject, /icon.png, FW
MIDlet-Jar-Size: 2914
MIDlet-Jar-URL: NewProject.jar
MIDlet-Name: NewProject
MIDlet-Vendor: MIDletPascal
MIDlet-Icon: /icon.png
MIDlet-Version: 1.0.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0

Рассмотрим здесь самые интересные строки. MIDlet-Jar-Size: 2914 – показывает получившийся размер JAR файла в байтах (это значение должно быть точным до последнего байта). Следующая строка MIDlet-Jar-URL: NewProject.jar – это ссылка на JAR файл. Если тут просто имя файла, то предполагается, что JAR лежит в той же папке, что и JAD. «Что же это за ссылка?»,- поинтересуешься ты. При загрузке мидлета с WAP-портала телефон сперва скачивает JAD файл, в нем смотрит и показывает владельцу телефона свойства JAR (имя, размер), а затем с его согласия скачивает мидлет по этой самой ссылке. Едем дальше. MIDlet-Name: NewProject – собственно, название мидлета. MIDlet-Vendor: MIDletPascal – разработчик. MIDlet-Version: 1.0.0 – версия твоего приложения. Далее MicroEdition-Configuration: CLDC-1.0 и MicroEdition-Profile: MIDP-1.0 – означает, что для работы программы необходимо мобильное устройство с поддержкой платформы CLDC 1.0 и MIDP 1.0. Теперь переключись в MidletPascal и найди в левой части, что то похожее на объектный инспектор в Delphi, на вкладке Properties поменяй следующие значения: в поле MIDlet name измени NewProject на SuperMidlet; в поле MIDlet vendor затри MIDletPascal и напиши Microsoft; MIDlet version меняем с 1.0.0 на 2.0.0 и компилируем наш проект. Снова смотрим наш JAD и видим следующее:

MIDlet-1: SuperMidlet, /icon.png, FW
MIDlet-Jar-Size: 2971
MIDlet-Jar-URL: NewProject.jar
MIDlet-Name: SuperMidlet
MIDlet-Vendor: Microsoft:)
MIDlet-Icon: /icon.png
MIDlet-Version: 2.0.0
MicroEdition-Configuration: CLDC-1.0
MicroEdition-Profile: MIDP-1.0

Теперь, при установке нашего приложения или в его свойствах будет высвечиваться, что разработчиком SuperMidlet-а версии 2.0.0 является Microsoft.

  Так, с JAD разобрались, переходим к JAR. Для начала определение. JAR файл – это Java архив (сокращено от англ. Java ARchive). Представляет собой обычный ZIP-архив, в котором содержится часть программы на языке Java. Чтобы JAR файл был исполняемым, он должен содержать файл MANIFEST.MF в каталоге META-INF. В какой то мере JAR это обычный ZIP-архив, потому что компания Sun приняла популярный формат архивирования файлов Zip как основу для Java-архивов. Она расширила использование формата zip различными конвенциями, обеспечив возможность упаковки классов Java в архив. С дополнением файла манифеста JAR среда исполнения Java-программ может легко найти и непосредственно выполнить main-класс Java-приложения, содержащегося в jar-файле. Выходит, что если это обычный архив, то и открыть его можно каким ни будь архиватором. Открой при помощи WinRAR наш JAR файл, полученный минуту назад. Ты увидишь следующее:


В JAR архиве находятся два класса необходимые для запуска мидлета. Если бы во время создания приложения ты подключил бы, какие ни будь новые библиотеки (для использования новых функций), то их классы тоже бы находились здесь. Так же здесь находится иконка нашего приложения, которая является подключенным по умолчанию ресурсом приложения, находящаяся в папке res проекта. Если тебе довелось использовать какие нибудь другие ресурсы (новые картинки или звуковые файлы), то после компиляции они тоже будут здесь находиться. Зайдя в папку META-INF, которая так же находится в JAR-архиве, мы увидим файл манифеста. Открой его. Ничего не напоминает? Правильно, это же полная копия JAD-файла за исключением полей MIDlet-Jar-Size и MIDlet-Jar-URL.
 Подведем итог. JAR-архив – это достаточно хорошее решение для хранения и передачи данных (то есть самого мидлета). Это хорошее хранилище файлов, а так же скорость загрузки повышается за счет того, что все файлы отдельных классов и ресурсы находятся в одном архиве. Вот мы и разобрались с этими, уже не столь загадочными файлами, полученными после компиляции.
P.S. Строение этих файлов я изучал вместе с MetallFox который часто выдвигал интересные идеи и находил новые решения, за что ему большой респект:)

Авторство: http://liveofpc.3dn.ru/

Категория: Прочее | Добавил: Kastor (29.01.2009)
Просмотров: 2889 | Рейтинг: 4.5/2
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]