其他分享
首页 > 其他分享> > Android中的OnResume()是否可以使Activity加载更快?

Android中的OnResume()是否可以使Activity加载更快?

作者:互联网

我正在开发一个Android应用程序,必须从Android数据库加载大数据并在屏幕上查看.

在开发的早期阶段,我曾经使用OnCreate()方法从数据库中检索数据,当数据变得庞大时,它确实减慢了活动的开始.因此,我调用了数据检索并在OnResume()方法中在屏幕上查看了数据,这样我的应用程序在加载时花费的时间就不会崩溃.
我知道直到OnResume完成才显示活动.

因此,在OnResume中调用耗时操作而不是在OnCreate()方法中进行所有初始化是一种好方法吗?

解决方法:

So is it a good approach to call time taking operations in OnResume instead of having all initialization in OnCreate() method?

否-您不应在OnCreate或OnResume中执行此操作.您应该始终在工作线程中执行此操作-如AsyncTask.

任何需要很长时间才能完成的操作,如果在UI线程上执行都会阻塞消息队列-这意味着没有UI窗口小部件的重新绘制,用户无法点击您的应用程序来执行任何操作.一切都被阻止,直到您的操作完成.大约5秒钟后,Android会生成ANR(应用程序无响应)并杀死您的应用程序.

标签:android-lifecycle,android-database,android
来源: https://codeday.me/bug/20191027/1945269.html