Конференция W Mobile Дайджест

Файлообменник (хранилище файлов) => FAQ => Тема начата: Капитан Смоллетт от 14 Апрель 2007, 03:03:53



Название: УСТАНОВКА ЯВА-ПРИЛОЖЕНИЙ
Отправлено: Капитан Смоллетт от 14 Апрель 2007, 03:03:53
Данный FAQ предназначен для классических телефонов  владельцам новых телефонов читать его бесполезно, т.к. там никакого разнообразия нет - мидлеты инсталлируются с компа прогой Java Midlet Installer (должна быть на CD от телефона).

Ввведение

Ява-приложение(мидлет) обычно представляет из себя два файла jad (своего рода ярлык к программе) и jar (собственно само приложение). jad это обычный текстовый файл, который содержит в себе ссылку на закачку файла jar. В большинстве случае для работы ява-приложения файл jad не нужен и, следовательно, необходимости в его установке нет никакой (однако в некоторых случаях "шибко правильные" телефоны требуют этот файл в обязательном порядке).
Что же делать если файла jad нет, а без него "шибко правильный" телефон отказывается устанавливать jar? Очевидно сделать самому! Для этого можно использовать программу JADMaker (ссылку можно найти в любом поисковике).
Файл jar представляет собой обычный zip-архив с "обычной" степенью сжатия, т.е. файлы мидлетов можно извлекать/упаковывать обратно в любом архиваторе и править в меру своих возможностей, но этот вопрос уже выходит за рамки данной статьи, поэтоиу вернёмся к теме.

Установка ява-мидлетов

Здесь может быть несколько вариантов. Рассмотрим все.

1. Перед тем как устанавливать ява- приложение его надо откуда-то скачать. Ежели необходимые файлы уже скачаны, пропускаем п.1 и сразу смотрим п.2.

а) Если ява-программу/игру нужно скачать с вап-сайта, можно воспользоваться встроенным браузером телефона. Здесь всё просто - находим на странице ссылку на ява-приложение (вернее на его jad-файл), жмём на него, запускается процесс загрузки. Браузер телефона по информации в файле jad сам отыщет и скачает jar. После чего предложит его установить. В процессе закачки/установки ява-приложения пользователю остаётся только наблюдать за процессом и периодически нажимать на "ОК".

Примечание 1. Приложение с вап-сайта можно качать и компом с помощью браузера "Опера8.0". После скачивания jad-файла, открываем его в блокноте и находим ссылку на jar. Забиваем её в браузер/менеджер закачки и качаем само приложение. После чего останется передать jar в телефон и установить.

б) Если ява-программа располагается на обычном сайте, качаем её любым известным способом - можно с компа любым браузером/менеджером закачек или телефоном (оперой мини, кулбраузером и т.д.). В этом случае приложение не будет установлено автоматически после закачки, поэтому смотрим дальше.

Примечание 2. Если скачанное приложение оказалось заархивировано в rar, zip или любом другом архиве, извлекаем из него файлы jad, jar

2. Установка скачанного приложения.
Если файлы jad, jar уже записаны на диск телефона, смотрим. п.б), если файлы находятся на компе, читаем дальше.

а) Передать файлы jad, jar в телефон можно при помощи дата-кабеля, IrDA, Bluetooth. При использовании кабеля помещайте файлы в папку misc/data inbox, в других случаях они сами окажутся в этой папке. После передачи файлов в указанную папку, возле левой софт-кнопки телефона появится специальный значёк. Жмём его и видим все только что загруженные файлы.

б) Выбираем файл ява-мидлета и жмём джойстиком на него, появится стандартный диалог установки приложения. Остаётся только подтвердить свои действия нажатием на "ОК" и программа будет установлена.

в) Если всё шло "штатно", то данный пункт не возникнет. Однако в случае, когда мидлет категорически отказывается устанавливаться обычным способом, ссылаясь на "Недопустимое приложение" придётся действовать вручную. Любым возможным способом (с помощью эксплорера с компа или с самого телефона) заходим в папку Java/Jam/Application(или Games) и создаём там новую папку с названием устанавливаемого ява-приложения, после чего копируем туда файлы мидлета. Заходим в "Меню-Интернет/игры-Приложения(Игры)" и видим, что новый ява-мидлет установился.

Возможные проблемы

Скажу сразу, чудес здесь не бывает и если ява-приложение не совместимо с вашей моделью телефона, оно не запустится, что бы вы не делали.
Если при запуске мидлет ругается на отсутствие каких-то классов, то, наиболее вероятно, он использует какие-то специфичные ява-классы, предназначенные для телефонов других фирм. Здесь ничего не поделать.
Другая частая проблема - на телефонах с поддержкой midp1.0 запускается мидлет, требующий midp2.0. Здесь также ничего не поделать, разве только телефон сменить.
Ещё одна проблема - из-за неправильной кодировки файла Manifest.mf (находится внутри jar) некоторые привередливые телефоны (типа S75) отказываются запускать приложение. Извлеките этот файл, сохраните в кодировке СР-1251, и запакуйте обратно, должно помочь.