Android абстрактная активность в манифесте - PullRequest
5 голосов

Для своего приложения я собираюсь создать множество абстрактных классов, которые расширяют классы android.app.Activity и android.app.Service.

  • Когда я подклассирую свои абстрактные классы, как мне добавить их в манифест Android?
  • Нужно ли добавлять абстрактный класс и мой подкласс в манифест или только подкласс?
  • Они должны быть в одной упаковке?

Ответы [ 3 ]

9 голосов
/ 01 мая 2011

Вы добавляете финальные подклассы в манифест как обычные Действия / Услуги;абстрактные классы не должны быть там, поскольку манифест является только поиском, поэтому система знает, какой класс запускать в ответ на намерение

Если под «пакетом» вы подразумеваете пакет Java (например, com.mycompany.wh независимо), тогда нет, просто добавьте соответствующий импорт (или используйте полное имя) при создании подкласса.

Если под «package» вы подразумеваете APK, тогда да, абстрактная база должна быть втам с обычным кодом, так как хотя есть возможность вызова между APK, вы полагаетесь на классы, которые вы можете создать.Вы можете разделить абстрактные классы на проект библиотеки Android, если они собираются использовать повторно - проекты библиотек Android по сути являются общим источником, а не традиционными файлами Java.

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

2 голосов
/ 01 мая 2011

Вам нужно только включить классы Activity, которые вы собираетесь создать с помощью Intent. Если ваш абстрактный класс существует только для подкласса других действий, вам не нужно включать его в манифест.

1 голос
/ 01 мая 2011

Вы добавите подклассы в манифест, как и любой другой Activity / Service / BroadcastReciever.Вам не нужно добавлять абстрактные классы в mainifest.Подклассы не обязательно должны находиться в том же пакете, что и их родитель, если вы импортируете родительский пакет.

...