Могу ли я получить некоторую эффективность, объявив соответствующих участников «статическими» в действии Android

Если на практике действие является одноэлементным, я думаю, что могу получить некоторую эффективность, объявив соответствующих членов «статическими», с нулевым риском. Да?

В документации к Android говорится:

Существует не более одного экземпляра активности «singleTask» или «singleInstance», поэтому ожидается, что экземпляр будет обрабатывать все новые намерения.

Это означает, что вы можете использовать статические элементы .

Кроме того, standard или singleTop должен иметь только потокобезопасные статические элементы . Предположим, что текущий стек активности ABCD. Если прибывающее намерение относится к активности типа B, которая находится в режиме «стандартный» или «однократный». Новый экземпляр B будет запущен как (так как B не находится в верхней части стека), поэтому полученный стек будет ABCDB.

Одна вещь, пожалуйста, НЕ используйте singleTask или singleInstance для этой цели. Флаги запуска активности предназначены для управления тем, как ведут себя действия. Они оказывают заметное влияние на взаимодействие пользователя с вашей деятельностью (что делает его нестандартным). Эти режимы предназначены для использования, когда вы хотите такого взаимодействия с пользователем, они НЕ должны использоваться для изменения деталей реализации вашего приложения.

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

Да, действие может быть «одиночным», если вы убедитесь, что экземпляр Activity A не запущен, а другой экземпляр Activity A находится в стеке активности (экземпляр Activity A может технически запустить другой экземпляр сам по себе).

Пожалуйста, ознакомьтесь с активностью свойства launchMode на странице android.developer .

Цитата : « Стандарт – это режим по умолчанию и подходит для большинства типов действий. SingleTop также является распространенным и полезным режимом запуска для многих видов деятельности. Другие режимы – singleTask и singleInstance – не подходят для большинства приложений, поскольку они приводят к В модели взаимодействия, которая, вероятно, не знакома пользователям и сильно отличается от большинства других приложений ».