Ответ 1
В методе onCreate()
присвойте статическому экземпляру переменной для создания Singleton:
public static ActivityA instance = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
instance = this;
}
@Override
public void finish() {
super.finish();
instance = null;
}
то в C:
public void onCreate(Bundle savedInstanceState) {
if(ActivityA.instance != null) {
try {
ActivityA.instance.finish();
} catch (Exception e) {}
}
}
(Повторите выше код для B, а также A)
Я бы сказал, что это НЕ элегантно и обязано вводить странные ошибки жизненного цикла.
Было бы лучше, если бы вы могли настроить свое требование - если вы не можете использовать одну активность и изменить A, B и C на Fragments
?
Я бы предложил широковещательную рассылку, но, как я понимаю, у вас не может быть приемников широковещательных сообщений на уровне "без возобновления".
Использование Service
для привязки к действиям кажется излишним - но вы можете подумать, что если приведенное выше не работает.
Удачи!