В настоящее время я переношу фреймворк для создания приложений на J2ME на Android. Этот фреймворк состоит из нескольких проектов, которые компилируются в библиотеки (jars). Каждый отдельный JAR может содержать графические данные (ресурсы, экраны J4ME и т. д.). Каждый проект обычно имеет четко определенную точку входа (модуль). Когда кто-то хочет создать приложение с использованием фреймворка, он должен только создать проект мидлета, добавить зависимости библиотеки и использовать импортированные классы.
Мы использовали тот же подход для разработки платформы Android. В этом случае мы использовали только обычные проекты Java внутри Eclipse, которые компилируются в библиотеки jar. Эти проекты имеют зависимости от Android Framework (android.jar). При создании нового приложения мы создаем проект Android внутри Eclipse и добавляем зависимости.
Наш следующий шаг — создать более продвинутые модули для Android, которые также могут содержать графическую информацию (действия, диалоги, литералы, Drawables и т. д.). До сих пор требовался только проект Android Eclipse (конечное приложение), содержащий все графические классы и ресурсы. Кажется, что при использовании ресурсов (литералов, рисунков и т. д.) единственным подходом является создание приложения Android, поскольку на ресурсы можно ссылаться только с помощью целочисленного обработчика, автоматически создаваемого плагином ADT (R.XXX). Таким образом, создание графических модулей не может быть построено с помощью простых проектов Java jar.
Информация для разработчиков Android объясняет, что модульные приложения возможны, но я не нашел краткого руководства, объясняющего процесс, но некоторые советы, например, как предотвратить возникновение ошибки при приложение вызывает намерение, предоставленное другим приложением. Это допустимо при создании приложений, использующих ресурсы других приложений. Мне нужно не несколько установленных приложений в системе, а одно, построенное из нескольких компонентов.
Есть ли у кого-нибудь опыт разработки с подобными требованиями? Любой хороший учебник или советы для начала?