我有一个包含许多活动的应用程序,A(主要)、B、C、D、E 和一个在后台运行的服务......我的应用程序是一个连接到服务器的客户端。在某个时刻,服务器告诉客户端注销,服务收到消息,现在我应该注销并关闭应用程序。我尝试从服务启动 Activity A 并在 A 中覆盖 onNewIntent 回调,但它从未被触发。问题是我想要一种方法来杀死应用程序,无论我在做什么活动。我认为开始一个新的活动(使用 CLEAR_TOP)并覆盖它的 onNeIntent 本来可以,但该方法从未被调用。我应该在每个活动中使用广播和接收器吗?处理这种情况的正确模式是什么?
收到消息时的服务:
Intent intent = new Intent(this, HomePage.class);
Bundle b = new Bundle();
b.putBoolean("VIMSANDROID_SLOGGAUTENTE", true);
intent.putExtras(b);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
A(主要):
@Override
public void onNewIntent(Intent i)
{
finish();
startActivity(i);
}
谢谢!!!