Абстрактная активность Android в манифесте

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

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

person zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz    schedule 30.04.2011    source источник


Ответы (3)


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

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

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

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

person Phil Lello    schedule 30.04.2011

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

person LeffelMania    schedule 30.04.2011

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

person mtmurdock    schedule 30.04.2011