Подтвердить что ты не робот

Как создать несколько приложений для Android с одной базы кода

У меня есть база данных Android, которая использует API с настройками для получения разных данных для нескольких приложений. Все приложения используют одну и ту же базу кода, но с одной или двумя настройками дизайна. Итак, как я могу повторно использовать основную базу кода без необходимости копировать весь проект Android каждый раз?

iPhone использует несколько целей в одном проекте, который работает хорошо. Если андроид не может это сделать, мне нужно скомпилировать двоичные файлы базы кода в одном проекте, а затем импортировать в каждый новый проект приложения? Если да, то как? Я использую Eclipse и являюсь промежуточным разработчиком Java.

Любая помощь очень ценится!

Дуга

4b9b3361

Ответ 2

Текущий способ подойти к этой проблеме, если вы используете Android Studio с Gradle, - это использовать Gradle, Build Type + Product Flavor

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants

Варианты сборки

Одной из целей новой системы сборки является создание различных версий одного и того же приложения.

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

Различные версии одного и того же приложения Например, бесплатная/демонстрационная версия и "про" платное приложение.

Одно и то же приложение, упакованное по-разному для multi-apk в Google Play Store.

Эта новая концепция призвана помочь, когда различия очень минимальны. Если ответ на вопрос "Это одно и то же приложение?" это да, то это, вероятно, путь к реализации проектов библиотеки.

Ответ 3

Примечание. Этот ответ в основном устарел, так как можно создавать библиотеки .aar с ресурсами. Тем не менее, он все еще работает, и могут быть моменты, когда переносимость .jar является желательной, поэтому я оставляю ее здесь.

Ответ Blumer - хороший, и вам обязательно нужно взглянуть на идею об идеях библиотеки в библиотеке. Однако есть и другая альтернатива. Если у вас есть модуль, который содержит только код Java, но никаких ресурсов (изображений, макетов и т.д.), Вы можете скомпилировать его в файле .jar отдельно и использовать полученный .jar в нескольких проектах приложений. Он работает следующим образом:

  • Создайте новый проект Java в Eclipse (не проект Android) и переместите исходный код своего модуля.
  • Если ваш модуль ссылается на какие-либо классы из SDK, вам нужно добавить Android SDK.jar в путь к классу проекта (Project > Properties > Java Build Path > Libraries > Add JAR).
  • Когда ваш модуль готов к использованию, добавьте его .class файлы в .jar. Вы можете сделать это вручную, или вы можете посмотреть вокруг, чтобы выяснить, как заставить Eclipse сделать это за вас.
  • Скопируйте файл .jar модуля в каталог "libs" основного проекта вашего приложения.
  • Добавьте модуль .jar в путь к классу проекта (снова Project > Свойствa > Путь сборки Java > Библиотеки > Добавить JAR).

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

В зависимости от вашей конкретной ситуации это может работать или не работать для вас лучше, чем стандартный механизм библиотеки Android. Но это стоит рассматривать как альтернативу.

Ответ 4

Документация на Android рекомендует другой подход, если не используется слишком много "разных API".

Идея состоит в том, чтобы использовать отражение вместо того, чтобы направлять ссылки на код. Обязательно используйте оптимизированное отражение вместо поиска каждый раз.

Ссылки

Ответ 5

Возможно, вы захотите использовать систему управления версиями, такую ​​как Subversion (или GIT). Сохраните свою полную версию в багажнике и создайте ветки для ваших отдельных версий, которые используют разные источники данных или требуют незначительных изменений макета и т.д.