Активность, не зарегистрированная в манифесте Предупреждение Lint

У меня есть базовая активность, из которой я подклассифицирую несколько других действий.

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

Тем не менее, проверка Android говорит, что для моей базовой активности "Activity not registered in the manifest".

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

Почему это предупреждение в любом случае?

Ответ 1

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

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

Ответ 2

Вы должны сделать свой BaseActivity абстрактным классом. Нет необходимости регистрировать такие действия в манифесте, это просто простые классы Java, расширяющие класс Activity, а не активность вашего приложения.

  public abstract class BaseActivity extends Activity {
    @Override
    public void onCreate(bundle) {
    super.onCreate(bundle);
    setContentView(getLayoutResourceId());
    }

    protected abstract int yourmethods();
  }

 public class Activity1 extends BaseActivity {
   @Override
   public void onCreate(bundle) {
    super.onCreate(bundle);
    // do extra stuff on your resources, using findViewById on your layout_for_activity1
}

   @Override
   protected int yourmethod() {
     //implemetation
   }
 }