在我的应用程序中,有时候可能需要很长时间才能加载一些值(例如从Google地图中检索行车路线)。这会导致启动“等待”警报对话框。我希望知道单击Force关闭按钮时会发生什么?我的意思是启用强制关闭时将运行什么代码?我们是否可以手动调整“等待”警报对话框出现的时间?如果不是这个对话框出现的默认时间是什么?Android:关闭后的活动周期
回答
我知道它有时可能很烦人,但他们几乎故意地(在我看来)确保程序员确保他们的应用程序顺利运行,没有UI冻结。 我现在无法找到它的文档,但如果我记得正确它的约4秒.. 你只需要确保没有UI冻结或延迟你的应用程序,这意味着如果你的值需要更多,然后加载几秒钟,他们应该加载异步。
您需要将主要活动中的任何重物从异步运行(使用async task或thread)。
据我所知,当你进入该对话框时,Android操作系统已经接管并正在杀死你的进程。如果这是经常发生的事情,那么应该使用堆栈转储来确定哪些应用程序崩溃。
您应该在Android线程上阅读this article。
你永远不想在你的主线程上执行任何长时间运行的任务。如果该操作需要超过几分之一秒的时间,则应该使用AsyncTask或创建自己的后台线程来执行任务。
您不应该在事件线程上进行耗时的初始化。你应该启动后台线程(或AsyncTask)来完成初始化工作。请参阅指导主题Designing for Responsiveness。后续阅读应包括Processes and Threads和Painless Threading。
我们可以管理强制关闭后启动的页面吗? – freshDroid
@freshDroid - 我不这么认为。操作系统已经接管并正在杀死你的应用程序。 –
所以唯一的办法是避免所有发射力等待的情况? – freshDroid
- 1. Android活动生命周期
- 2. android活动生命周期
- 3. Android活动生命周期
- 4. Android:结果后关闭活动
- 5. 如何在关闭android中的其他活动后关闭主要活动?
- 6. 的Android,活动被关闭
- 7. 关闭android中的活动
- 8. 活动周期
- 9. Android:在关闭WiFi时关闭活动
- 10. 你应该在哪里关闭android活动生命周期中的数据库?
- 11. Android关闭所有对话框后关闭活动
- 12. 关于活动的生命周期
- 13. 关闭活动后执行
- 14. 关闭后台活动
- 15. 按周分组日期:开放,关闭,活动
- 16. 的Android间活动的生命周期
- 17. 无法关闭android活动
- 18. 关闭android子活动
- 19. 启动后的Android调用活动?活动的生命周期,BroadcastReceivers。
- 20. Android中的活动生命周期
- 21. Android的活动周期冲突
- 22. Android活动生命周期的混乱
- 23. Android的生命周期活动
- 24. 在调用并关闭片段后返回到活动并不会改变我的活动的生命周期
- 25. 活动生命周期相关问题
- 26. 活动周期 - 报关序列
- 27. 关于活动生命周期
- 28. 关于android活动生命周期的愚蠢问题
- 29. Android活动 - 生命周期:onPause和onDestroy之间的关系
- 30. Android活动生命周期与流程生命周期
它主要发生在我试图从谷歌地图获取驾驶路线时! – freshDroid
是的。任何在线数据拉应该异步发生。因为你不知道用户连接有多强,或者从服务器拉取数据需要多长时间,所以你不能让你的用户等待(冻结用户界面)等待数据..它必须在一个线程或异步任务,所以主要活动不会等待数据。即使您的应用需要一小时才能加载,只要您的主要活动未冻结即可。 – Joe
我们是否可以管理强制关闭后启动的页面? – freshDroid