我知道这是Android的正常行为,但是我遇到了我的活动(当前有我的界面)在轮换时重新创建的问题。这会导致异步任务出现问题。
我知道onRestoreInstanceState
和onSaveInstanceState
方法可以保持我的界面状态不变。
将所有接口包含在片段而不是活动中是否是最佳设计实践?
我知道我可以创建一个包含列表视图的片段并使用setRetainInstance(true);
并在轮换时保持接口/异步任务的附加。
最好尽可能多地使用片段而不是活动。
我的应用与REST服务进行通信。我相信我有一个问题,如果我启动请求然后旋转屏幕我永远不会得到回复。
答案 0 :(得分:1)
如果您有长时间运行的任务,您应该考虑在任务进行过程中用户可能会被打断(例如,他们必须接听电话或其他紧急事件,需要他们启动另一个应用程序)。 / p>
如果配置更改导致用户无法看到的问题,则问题在于您如何处理该操作。如果中断长时间运行的任务会导致应用程序出现问题,那么您应该考虑使用服务或在应用程序类中运行任务(按此顺序 - 使用Application
类可能会导致其他不必要的副作用)。
配置更改以及由此导致的活动破坏和重新创建与问题有关"如果用户更换手机,我该如何设计我的应用程序"不应该是你遇到的问题的原因。 Android实际上让您有机会考虑手机中的更改如何影响用户体验 - 并相应地修改界面或界面元素。