我必须在从其他应用程序(例如:NotificationBar、Call、SMS 等)导航回我的应用程序时显示一个警告框。每当用户从我的应用程序转到任何其他应用程序(如调用、短信)并返回时,我都需要执行一些代码。有什么回调吗?我怎样才能做到这一点?
最佳答案
我不知道 Android 是否支持,但您可以使用一个简单的 hack,创建一个 bool 变量并在调用 onPause
时设置它的值。当用户返回另一个应用程序时,将设置此值。然后您可以在 onResume
命令中检查此值。
但是这种方法有一个问题,如果你从当前 Activity 开始另一个 Activity ,那么那个变量将被设置。因此,无论何时您要从当前 Activity 启动 Activity ,都需要防止设置该 bool 变量(可能通过使用另一个变量)。
在代码中:
boolean backFromAnotherApp = false;
boolean activityFromMyApp = false;
public void onPause() {
......
if (!activityFromMyApp)
backFromAnotherApp = true;
else
activityFromMyApp = false;
}
public void onResume() {
.....
if (backFromAnotherApp) {
showDialog();
backFromAnotherApp = false;
}
}
在您的代码中任何您想要启动新 Activity 的地方:
Intent intent = new Intent(this, AnotherActivityOfMyApp.class);
activityFromMyApp = true;
startActivity(intent);
关于android - 如何在 android 中使用不同的应用程序实现对我的应用程序的导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23470106/