Хорошо, просто идея - в своем приложении вы можете создать базовый класс действий, чтобы все остальные действия были разделены на подклассы из этого базового действия. Затем в обратном вызове onCreate()
вы можете уведомить некоторый экземпляр прослушивателя о факте создания нового экземпляра действия приложения:
public class BaseActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// put the code to notify a listener here
}
}
public class YourWorkingActivity extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
}
}
Если вы используете ListActivity
(что характерно для обычного приложения для Android), то вам также следует создать аналогичную BaseListActivity для него.
Скорее всего, лучшим кандидатом для слушателя будет подкласс Application
, поскольку он гарантирован ОС, которая будет создана до того, как будет создан экземпляр Activity
.
Предупреждение : вам следует избегать сохранения сильной ссылки на Activity в слушателе, поскольку это приведет к утечке памяти, когда ОС попытается уничтожить это Activity (как часть жизни Activity или Process). -цикл). Вероятно, для этого используйте WeakReference .