Android-处理在屏幕旋转时不会调用的OnCreate中的HTTP调用的最佳方法是什么?

时间:2018-12-02 23:53:59

标签: android android-orientation

我正在学习android。坚持在活动的oncreate中加载数据的基本方案。因此,我尝试在打开活动时立即加载数据,但是当我更改屏幕方向时,它将再次被调用。我了解android会在屏幕定向期间恢复活动状态。所以oncreate方法被调用。但是我的问题是,一旦下载了数据,我就不想一遍又一遍地进行Http调用。什么是最好的处理方式?我想针对不同的屏幕方向使用不同的布局,但是数据是相同的。我必须将数据加载到oncreate中。

2 个答案:

答案 0 :(得分:2)

在配置更改期间保留数据,例如通过ViewModel。您的ViewModel将负责执行Web请求(直接或通过repository)并将结果传送到活动中,例如通过LiveData

答案 1 :(得分:0)

如果您不想使用Google arch组件,则可以用CommonsWare代替,您可以简单地检查savedInstanceState捆绑软件是否为null。如果是这样的话,那么第一次启动活动就可以加载数据了。如果不是,则重新创建它,并且您不应该加载数据。