应用程序启动或 returns 到前台时添加操作的最佳位置
best place to add an action when application starts up or returns to the forground
我需要我的应用程序在第一次启动时执行 2 次网络调用,当它被杀死并再次启动时以及当它被置于后台时 return编辑
我知道我可以把它放在我的 "MainActivity" onCreate/onResume 中。我有一个 class 扩展了应用程序,这是我初始化日志记录和崩溃报告的地方,但我注意到没有 onResume 方法,据我所知,这是应用程序来自后台时调用的方法。
当我的应用程序第一次启动时,执行这 2 个网络调用以更新我的应用程序的某些方面的最佳位置,在终止时启动并在从后台恢复时恢复。
仅供参考。我不希望它进入我的 "MainActivity" 的原因是我不希望这些网络调用在我从应用程序的另一个屏幕 return 到 MainActivity 时被调用,仅当用户 return 访问该应用程序?
谢谢
每当应用 returns 从后台调用的用例是通过在您的应用程序中实施 Activity 生命周期方法 class:
public class myApp extends Application implements Application.ActivityLifecycleCallbacks {
...
}
在这种情况下,您要确保每当 onPause()
被调用时,相应的 onResume()
也应该被调用(即正常的屏幕切换)。如果没有,那么您知道您的应用程序现在处于后台。 onResume()
的下一个回调应该意味着它再次来到前台,您可以进行网络调用。
我需要我的应用程序在第一次启动时执行 2 次网络调用,当它被杀死并再次启动时以及当它被置于后台时 return编辑
我知道我可以把它放在我的 "MainActivity" onCreate/onResume 中。我有一个 class 扩展了应用程序,这是我初始化日志记录和崩溃报告的地方,但我注意到没有 onResume 方法,据我所知,这是应用程序来自后台时调用的方法。
当我的应用程序第一次启动时,执行这 2 个网络调用以更新我的应用程序的某些方面的最佳位置,在终止时启动并在从后台恢复时恢复。
仅供参考。我不希望它进入我的 "MainActivity" 的原因是我不希望这些网络调用在我从应用程序的另一个屏幕 return 到 MainActivity 时被调用,仅当用户 return 访问该应用程序?
谢谢
每当应用 returns 从后台调用的用例是通过在您的应用程序中实施 Activity 生命周期方法 class:
public class myApp extends Application implements Application.ActivityLifecycleCallbacks {
...
}
在这种情况下,您要确保每当 onPause()
被调用时,相应的 onResume()
也应该被调用(即正常的屏幕切换)。如果没有,那么您知道您的应用程序现在处于后台。 onResume()
的下一个回调应该意味着它再次来到前台,您可以进行网络调用。