Главная » Файлы » Инструкции

Как запускать Java игры на китайских мобильных телефонах.
08.09.2011, 14:38
Как и чем запускать Java игры на китайских мобильных телефонах.
Эмулятор Coretek Delta java manager.
Java - это язык программирования. Существуют 3 различные редакции Java:
JSE (Java Standard Edition) - это Java для компьютеров (в том числе для КПК);
JEE (Java Enterprise Edition) - Java для серверов;
JME (Java Micro Edition) - Java для мобильных телефонов, с очень урезанными возможностями, имеющая мало общего с JSE.
Кроссплатформенность Java позволяет запускать одни и те же Java-программы как на ПК, так и на КПК.
Программы на Java обычно представлены в виде файлов-архивов с расширением jar, а также в виде папок, к которым обычно прилагаются (или внутри которых находятся) html'ники для их запуска браузером.
Апплет - это программа, написанная на JSE. Коды JSE непосредственно в коды процессора транслируют JRE.
JRE - Java Runtime Environment - это окружение для выполнения программ, интерпретатор, применительно к КПК обычно именуемый Java Virtual Machine (JVM), т. е. виртуальной ява-машиной. Java Virtual Machine, работающие на настольных и мобильных компьютерах, как правило понимают только коды JSE и JEE, с кодами JME они, за редкими исключениями, не работают.
Апплеты, как правило, выполняются в окружение браузера. При этом используются виртуальные ява-машины, которые или встроены в браузеры, или являются Java-плагинами к Internet Explorer'у. Выполнение апплета браузерами может осуществляться on-line (если апплет скачивается из сети и не остается на КПК в виде файла) или же off-line (если файл с апплетом находится на КПК).
Апплеты могут также выполняться и отдельно от браузера, для этого в класс апплета добавляют функцию "main()". То есть апплет может запускаться отдельно от браузера, если он реализует указанную функцию (например программа Toonel, используемая на КПК для сжатия интернет-трафика). Класс апплета с функцией "main()" считается точкой входа в программу по умолчанию, при этом такая точка входа может быть не одна. При старте программы вызывается метод main() данного класса.
Апплеты, выполняемые отдельно от браузера, выполняются отдельно устанавливаемыми виртуальными ява-машинами (CrEme JVM, Jeode Runtime JVM, IBM J9 RRPO10 JVM).
Сервлет - это программа, написанная на JEE. Рассматривать в рамках данной темы сервлеты и JEE мы не будем.
Мидлет - это программа, написанная на JME.
На мобильных телефонах мидлеты выполняются непосредственно (runtime) килобайтными виртуальными машинами (KVM), преобразующими коды JME в коды процессора.
Для реализации на настольных и мобильных компьютерах выполнения мидлета необходимо симитировать (эмулировать) поведение мобильного телефона, как то: дисплей всего один и нет двигающихся окон, софт-кнопки и цифровая клавиатура, для рисования есть только холст с ограниченным набором функций, для ввода текста есть стандартный набор полей ввода - вот это всё надо реализовать в таком виде, в каком это представлено в конкретном телефоне или в каком-то гипотетическом телефоне. Эту функцию на компьютерах (в том числе на КПК) выполняют эмуляторы функций мобильных телефонов, преобразующие коды JME как правило в коды JSE/JEE (с последующей их передачей на встроенную в эмулятор Java Virtual Machine), или непосредственно в коды процессора или ОС. Из числа эмуляторов, работающих на КПК, здесь представлены: TAO Intent Java MIDlet manager, IBM J9 WEME MIDP20 JMM, Coretek Delta java manager, Mitac JVM. Эмуляторы функций мобильных телефонов обычно именуют эмуляторами мидлетов или эмуляторами Java, иногда менеджерами мидлетов, хотя менеджер мидлетов - это лишь пользовательский интерфейс эмулятора.
Таким образом, виртуальные ява-машины, работающие на настольных и мобильных компьютерах, выполняют, как правило, программы, написанные на JSE, т.е. апплеты. Коды JME, на котором написаны мидлеты, Java Virtual Machine, за редкими исключениями, не понимают и поэтому работать с мидлетами не могут. По изложенной причине ни игры для мобильников, ни Opera mini запустить на Java Virtual Machine невозможно. Исключением из этого утверждения является виртуальная ява-машина CrEme JVM, которая имеет надстройку над JSE - эмулятор для исполнения кода JME, с довольно скромными возможностями, позволяющими запускать небольшие программы на JME.
Для выполнения мидлетов на настольных и мобильных компьютерах предназначены эмуляторы функций мобильных телефонов. Эмуляторы понимают только коды JME и поэтому запускают только мидлеты. Работать с программами, написанными на JSE (т.е. с апплетами), эмуляторы не могут.
Изложенный вывод не является универсальным правилом и отражает ситуацию, складывающуюся на компьютерах, работающих под управлением Windows (в том числе Windows mobile). На мобильных устройствах под управлением Palm OS коды JME также интерпретируются эмуляторами, а вот на смартфонах под управлением Symbian эмуляторы не работают, там витруальные ява-машины исполняют коды JME непосредственно.
Чтобы разобраться в том, что за Java-программу (апплет или мидлет) мы видим перед собой, необходимо раскрыть архив ***.jar. Если внутри архива ***.jar нет папки META-INF с вложенным в нее файлом MANIFEST.MF, значит перед нами апплет, не поддерживающий функцию "main()", т.е. это апплет, запускаемый браузером.
Если же внутри архива ***.jar есть папка META-INF с вложенным в нее файлом MANIFEST.MF, то:
- если в MANIFEST.MF есть строка "Main-Class …", значит перед нами апплет, запускаемый Java Virtual Machine отдельно от браузера;
- если в MANIFEST.MF есть строка "Midlet1 - ...", значит перед нами мидлет, запускаемый эмулятором. Последний показатель строки "Midlet1 - ..." - это запускаемый класс мидлета, с которого начинается выполнение програмы.
Может быть и такой вариант: внутри архива ***.jar есть папка META-INF с вложенным в нее файлом MANIFEST.MF, но в MANIFEST.MF нет ни строки "Main-Class …", ни строки "Midlet1 - ...". Это означает, что перед нами апплет, запускаемый браузером.
Если Java-программа представлена в виде zip-архива или папки с набором классов, то это также означает, что мы видим перед собой апплет, запускаемый браузером.
Coretek Delta java manager – эмулятор явы, применяемый в основном для запуска ява-игр, позволяет использовать много игр, не запускаемых на других эмуляторах. Работает с буфером обмена. Размер экрана 176x220, как на смартфоне, по эмулятору имеется отдельная тема: Coretek Delta java manager
Наиболее ранняя из представленных на форуме версий - версия 2003 года переведена Chuma с китайского на английский. Данная версия создает в основной памяти в Program Files папку Coretek, все игры устанавливаются в нее. В случае удаления игры она без проблем удаляется и из этой папки. При установке мидлетов требуется jad-файл. На WM 5.0 эта версия работает только в оригинальном (китайском) варианте.
Новая версия 2006 года предназначена для WM 5.0, но так же, как и предыдущая, заточена под смарты. На покетах работает с разрешением 176х220. Данная версия полностью соответствует спецификациям от Sun (даже формы такие же как в офиц. эмуляторах), установка игр осуществляется из jar (не надо jad), изначально на английском языке, работает с карты памяти. На WindowsMobile 2003 не работает вообще. Версия для Storage Card устанавливается по инструкции из скачиваемого архива. Папка "com" применяется адаптации мидлетов.
Порядок установки мидлетов в эмулятор Coretek Delta java manager.
При запуске игр на Coretek'е в большинстве случаев виртуальная клавиатура становится неактивной. Чтобы пофиксить это, необходимо, не закрывая Coretek, запустить любую программу, использующую виртуальную клавиатуру (например, нажать хард-кнопку Календаря), и, не закрывая эту программу, переключиться в Coretek. В результате клавиатура не исчезает и остаётся активной (метод выложен volta_john).
Осутствие в нижнем баре софт-кнопок при запуске игры на Coretek'е не означает, что их там нет. Они просто невидимы, и находятся рядышком в левом углу нижнего бара, очень узкие. Правда, не всегда работают, хоть и исправно нажимаются.
Не следует думать, что эмуляторы для КПК смогут запустить любой мидлет от любого телефона. Что-то запустится, а что-то нет.
Категория: Инструкции | Добавил: AdminIgor
Просмотров: 1194 | Загрузок: 0 | Рейтинг: 0.0/0




Похожие материалы::

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]