Содержание

Стартовый экран

При запуске портированного мидлета на Android появляется стартовый экран, который позволяет настроить основные параметры оболочки и запустить собственно мидлет. Ниже показан вид стартового экрана в русской и английской версии на примере игры Ancient Empires II.

Русская версия Английская версия

Меню для этого экрана содержит три команды:

  1. Пуск - запуск мидлета с заданными настройками
  2. Сброс - сброс настроек оболочки к значениям по умолчанию (не затрагивает язык и настройки самого мидлета)
  3. Отмена - выход из программы

Параметры экрана

Предустановки позволяют быстро задать стандартное разрешение виртуального экрана. В таблице ниже приведен список стандартных разрешений (на примере HTC Evo 3D, разрешение экрана 960 x 540)

Разрешение Масштаб Соотношение сторон и
ориентация экрана
Ш В
1 128 128 4,21875:1 1:1
2 128 160 3,375:1 портретная 3,2:4
3 132 176 3,068:1 портретная 3:4
4 176 220 2,454:1 портретная 3,2:4
5 240 320 1,6875:1 портретная 3:4
6 202 270 2:1 портретная 3:4
7 360 270 2:1 ландшафтная 4:3
8 405 540 1:1 портретная 3:4
9 720 540 1:1 ландшафтная 4:3
10 960 540 1:1 ландшафтная 16:9

Кнопка Фон позволяет выбрать фоновый цвет экрана. Этим цветом будут заполняться полосы по краям экрана, если он не полностью занят виртуальным экраном.

Параметры шрифтов

Здесь можно задать размеры малого, среднего и большого шрифтов, которые будут использоваться мидлетом. Размеры задаются в пикселях.

Если установлен флажок Размеры в масштабированных пикселях, то указанные размеры будут скорректированы системой Android, чтобы обеспечить одинаковый видимый размер текста на экранах с различными разрешениями. Эту настройку рекомендуется включить при использовании разрешений виртуального экрана более чем 240 x 320 пикселей.

Кнопка Предустановки позволяет быстро задать размеры шрифтов, которые наиболее подходят для данного разрешения виртуального экрана:

Разрешение Размер шрифта
Ш В малый средний большой
128 128 9 13 15
128 160 13 15 20
176 220 15 18 22
240 320 18 22 26

Прочие параметры

Кнопка Язык позволяет изменять язык приложений, которые поддерживают несколько языков. Также на ней отображается текущий выбранный язык. Эта настройка не изменяется при сбросе параметров командой Сброс.

Кнопка Редактировать манифест на данный момент не активна. Следите за обновлениями.

Параметры виртуальной клавиатуры

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

Поле Скрывать через позволяет задать время (в миллисекундах), в течение которого виртуальная клавиатура продолжает отображаться на экране после последнего нажатия. По истечении данного времени клавиатура скрывается с экрана, и восстанавливается автоматически при следующем нажатии на экран. Если в данном поле указать отрицательное значение, а также если все клавиши располагаются вне виртуального экрана (в свободных областях по его краям), наэкранная клавиатура скрываться не будет и отображается постоянно.

Поле Настройка раскладки позволяет задать код кнопки, которая будет использоваться для настройки расположения и размера клавиш наэкранной клавиатуры во время работы мидлета (см. следующий раздел). Код определяется автоматически при нажатии физической кнопки на аппарате, но может быть введен вручную с использованием виртуальной клавиатуры, установленной в системе. После ввода кода для продолжения работы с программой переместите фокус ввода на любое другое текстовое поле.

Следующая группа кнопок позволяет настроить цвет виртуальной клавиатуры:

  1. Надписи на кнопках в ненажатом состоянии
  2. Фон кнопок в ненажатом состоянии
  3. Надписи (Н) на кнопках в нажатом состоянии
  4. Фон (Н) кнопок в нажатом состоянии
  5. Обводка кнопок

Виртуальная клавиатура

Для работы мидлетов, не адаптированных для сенсорных экранов, на смартфонах без аппаратной клавиатуры в оболочке предусмотрена виртуальная (наэкранная) клавиатура, содержащая все основные клавиши, обычно встречающиеся на мобильных телефонах.

Обозначения на кнопках

Символ Действие
джойстик вверх
джойстик вниз
джойстик влево
джойстик вправо
←↑ джойстик влево + вверх
↑→ джойстик вправо + вверх
←↓ джойстик влево + вниз
↓→ джойстик вправо + вниз
F огонь / выбор
L левая софт-клавиша
R правая софт-клавиша
D звонок (зеленая трубка)
C отбой (красная трубка)

Встроенные раскладки

При работе мидлета можно "на лету" изменять расположение и размер наэкранных кнопок. Для переключения режима редактирования раскладки клавиатуры используется кнопка, указанная в поле Настройка раскладки в параметрах виртуальной клавиатуры (см. предыдущий раздел). Удерживая эту кнопку ~2 секунды, можно сбросить раскладку клавиатуры к встроенным (переключаются циклически):


Первый вариант подходит для активных игр, в которых требуется, например, одновременно перемещаться и стрелять. Второй вариант более универсален.

После сброса к встроенной раскладке виртуальная клавиатура остается в режиме редактирования расположения кнопок.

Изменение расположения кнопок

Однократное нажатие на кнопку редактирования раскладки переводит виртуальную клавиатуру в режим изменения расположения кнопок.

Для перемещения кнопки на нее нужно нажать и перетащить в нужное место на экране. При этом если кнопка оказывается достаточно близко к другой кнопке, срабатывает автоматическая привязка и перемещаемая кнопка выравнивается относительно соседней и прикрепляется к ней. Если затем начать двигать прикрепленную кнопку, она не будет двигаться до тех пор, пока не выйдет из зоны действия автоматической привязки. Аналогично работает привязка к краям экрана.

При перемещении кнопки вместе с ней также перемещаются и все кнопки, которые к ней в данный момент прикреплены.

Изменение размеров кнопок

Повторное нажатие на кнопку редактирования раскладки переводит виртуальную клавиатуру в режим изменения размеров кнопок.

Все кнопки разделены по размерам на 4 группы:

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

Для изменения размера группы кнопок нужно провести пальцем по экрану: движение вправо или вверх увеличивает размер кнопок, движение влево или вниз уменьшает. Если размер группы кнопок окажется близким к размеру другой группы кнопок, сработает автоматическая привязка, и размер редактируемой группы станет точно равным размеру второй группы. При дальнейшем изенении размера привязка отключится, и группа примет требуемый размер.

Завершение редактирования раскладки

Третье нажатие на кнопку редактирования раскладки возвращает виртуальную клавиатуру в обычный режим. Внесенные изменения сохраняются при выходе из программы и не затрагиваются при сбросе настроек командой Сброс на стартовом экране.

Часто задаваемые вопросы

Какие версии ОС поддерживаются?

Для работы оболочки MIDP требуется Android версии как минимум 2.3.3 ("Gingerbread", API Level 10). Чтобы ввести поддержку более ранних версий, в оболочке пришлось бы отказаться от доступа к файловой системе (JSR-75) и некоторых мультимедиа-функций.

Основное тестирование оболочка проходит на аппарате HTC Evo 3D с установленной ОС Android версии 4.0.3 ("Ice Cream Sandwich", API Level 15).

Почему не работает сенсорное управление?

Сенсорное управление, в смысле "правильное" сенсорное управление, будет работать только в тех программах, в которых оно работало на Java ME. То есть в тех, в которых оно было заложено изначально. Во всех остальных случаях управление осуществляется с помощью виртуальной наэкранной клавиатуры, поскольку адаптация мидлетов под сенсорное управление в современном его понимании, с кинетической прокруткой списков, сенсорными меню и т.п., - процедура весьма трудоемкая и индивидуальная для каждой программы.

Представьте, что у вас в руках старый добрый мобильный телефон, у которого в центре расположен самый обычный, не сенсорный экран, а слева и справа от экрана находятся самые обычные элементы управления: джойстик, софт-клавиши и цифровая клавиатура. Вот именно это и получится, если взять в руки современный коммуникатор, повернуть его в горизонтальную ориентацию и запустить программу, портированную с Java ME с помощью данной оболочки. Только клавиши будут не аппаратными, а нарисованными на сенсорном экране.

Почему после выхода из программы она больше не запускается?

Текущая версия оболочки не поддерживает кнопку "Назад" - программа некорректно сворачивается в фоновый режим, и развернуть ее обратно, скорее всего, уже не получится. Если такое все же произошло, нужно заново запустить программу и в меню стартового экрана выбрать пункт "Отмена". Программа закроется, и при следующем запуске будет работать нормально.

Для выхода из портированного мидлета следует использовать его собственное меню (как на мобильных телефонах с Java ME). Свернуть программу в фон можно с помощью кнопки "Домой" - в этом случае ошибки не возникает и программа сворачивается и разворачивается нормально.

Используются технологии uCoz