Южная таблица django уже существует

Эй! (Прошу прощения за длинный пост здесь)

Я пишу несколько приложений, которые будут основаны, по сути, на одном и том же коде.

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

Я пытаюсь использовать проект библиотеки Android, чтобы разместить весь общий код в одном месте, поэтому серьезные изменения нужно внести только один раз, и все проекты будут обновлены.

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

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

У меня есть несколько решений, которые я придумал, но я хочу знать, есть ли у кого-нибудь еще какие-нибудь идеи? Здесь будет очень полезно получить обратную связь:

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

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

Я надеюсь, что вы понимаете мою проблему. Пожалуйста, спросите, плохо ли я это объяснил.

Спасибо,

Адам

8
задан Sebastian Roth 10 February 2011 в 16:07
поделиться