Оболочка MIDP для Android/Подготовка библиотек в Eclipse

Материал из Project D8
Перейти к: навигация, поиск

Для начала нужно создать в Eclipse проекты для двух библиотек: для AndroidMIDPShell, которая нужна для портирования мидлетов, и для Android Color Picker (aka AmbilWarna), которая нужна для самой AndroidMIDPShell. Начнем с последней.

На момент написания данной статьи исходники Android Color Picker можно найти вот здесь. Но есть нюанс: нам предлагают установить Git, и уже через него загрузить репозиторий, что не очень кошерно, если требуется всего-то навсего один раз скачать исходники. Поэтому вариант № 2 — просто скачать ZIP архив: yuku-android-util.zip (копия репозитория по ссылке выше от 15.01.2013).

Так или иначе нам нужно достать из этого репозитория папку AmbilWarna. В принципе она уже содержит в себе готовый проект Eclipse, но у меня так ни разу и не получилось его именно импортировать (через Android Project from Existing Code). Есть другой путь:

  1. Создаем в Eclipse новый проект (File -> New -> Project)
  2. Выбираем Android Application Project
  3. Настройки проекта указываем такие:
    Создание проекта AmbilWarna, шаг 1
    • Application Name и Project Name — любые, например «AmbilWarna»
    • Package Name — yuku.ambilwarna (обязательно)
  4. Нажимаем Next и на следующем экране меняем:
    Создание проекта AmbilWarna, шаг 2
    • Create custom launcher icon — снять
    • Create activity — снять
    • Mark this project as library — установить
  5. Нажимаем Finish

В результате у нас получился пустой проект-библиотека, совместимый с данной конкретной версией Eclipse, Android SDK и пр. Теперь осталось добавить в него код и ресурсы:

  1. Закрываем Eclipse!
  2. В созданном проекте удаляем папки src и res
  3. Копируем папки src и res и файл AndroidManifest.xml из папки AmbilWarna (из скачанного репозитория) в папку нашего проекта
  4. Запускаем Eclipse
  5. Выделяем сам проект и нажимаем F5, чтобы обновился список файлов
  6. Выбираем в меню "Проект >> Скомпоновать проект"

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

Теперь нужно проделать те же шаги для добавления самой оболочки AndroidMIDPShell. Скачать ее можно по этой ссылке. Настройки проекта в этом случае следующие:
Создание проекта MIDPShell
  • Application Name и Project Name — все так же любые, например «MIDPShell»
  • Package Name — javax.microedition.shell (обязательно)
  • Minimum Required SDK нужно выставить не ниже «API 10: Android 2.3.3 (Gingerbread)»

На следующем экране флажки нужно установить так же, как и для первой библиотеки. Дальше добавляем в проект ресурсы и код, и выполняем кое-какую настройку:

  1. Закрываем Eclipse!
  2. В созданном проекте удаляем папки src и res
  3. Распаковываем папки src и res из архива AndroidMIDPShell.zip в папку нашего проекта
  4. Запускаем Eclipse
  5. Выделяем сам проект и нажимаем F5, чтобы обновился список файлов
  6. Открываем свойства проекта (Project -> Properties)
  7. В списке слева выбираем Android
  8. Внизу, где список библиотек, нажимаем кнопку Add
  9. В появившемся списке выбираем ранее созданный проект AmbilWarna
    Выбор библиотеки для подключения

  10. Два раза нажимаем OK
    После подключения библиотеки AmbilWarna

  11. Выбираем в меню "Проект >> Скомпоновать проект"

Теперь все ошибки должны исчезнуть.

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

Рецепт

  1. Описание оболочки
  2. Подготовка необходимых библиотек в Eclipse
  3. Портирование простого мидлета
  4. Портирование Ancient Empires II RM
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Список
Инструменты