我需要我的应用程序在第一次启动应用程序时进行2次网络调用,当它被杀死并再次启动时,以及当它被放置在后台然后返回时。
我知道我可以把它放在我的“MainActivity”onCreate / onResume上。我有一个扩展Application的类,这是我初始化日志记录和崩溃报告的地方,但我注意到没有onResume方法,据我所知,该方法是在应用程序来自后台时调用的方法。
当应用程序第一次启动时,在应用程序启动时更新我的应用程序中的某些方面的最佳位置在哪里,在被杀死时启动并在从后台返回时恢复。
FYI。我不希望它进入我的“MainActivity”的原因是,当我从应用程序中的另一个屏幕返回MainActivity时,我不希望调用这些网络调用,只有当用户返回到应用程序时?
由于
答案 0 :(得分:1)
应用程序从后台返回时调用的用例是在Application类中实现Activity Life Cycle方法:
public class myApp extends Application implements Application.ActivityLifecycleCallbacks {
...
}
在这种情况下,您确保每当调用onPause()
时,也应调用相应的onResume()
(即正常屏幕切换)。如果没有,那么您知道您的应用现在处于后台。对onResume()
的下一个回调应该意味着它已经再次出现,你可以进行网络通话。