Android配置更改和异步任务

时间:2014-08-20 21:06:08

标签: android design-patterns android-fragments interface

我知道这是Android的正常行为,但是我遇到了我的活动(当前有我的界面)在轮换时重新创建的问题。这会导致异步任务出现问题。

我知道onRestoreInstanceStateonSaveInstanceState方法可以保持我的界面状态不变。

将所有接口包含在片段而不是活动中是否是最佳设计实践?

我知道我可以创建一个包含列表视图的片段并使用setRetainInstance(true);并在轮换时保持接口/异步任务的附加。

最好尽可能多地使用片段而不是活动。

我的应用与REST服务进行通信。我相信我有一个问题,如果我启动请求然后旋转屏幕我永远不会得到回复。

1 个答案:

答案 0 :(得分:1)

如果您有长时间运行的任务,您应该考虑在任务进行过程中用户可能会被打断(例如,他们必须接听电话或其他紧急事件,需要他们启动另一个应用程序)。 / p>

如果配置更改导致用户无法看到的问题,则问题在于您如何处理该操作。如果中断长时间运行的任务会导致应用程序出现问题,那么您应该考虑使用服务或在应用程序类中运行任务(按此顺序 - 使用Application类可能会导致其他不必要的副作用)。

配置更改以及由此导致的活动破坏和重新创建与问题有关"如果用户更换手机,我该如何设计我的应用程序"不应该是你遇到的问题的原因。 Android实际上让您有机会考虑手机中的更改如何影响用户体验 - 并相应地修改界面或界面元素。