我正在研究这个主题,因为我想了解更多。所以我发现了以下内容:
Android操作系统基于以下因素重视我们的应用程序:
onResume()
当我们与应用的用户界面进行互动时。 (最高重要性)onPause()
当某个对话框位于我们当前正在使用的应用上方时。Activity
,Service
,Content Provider
或BroadCast Receiver
)。 (最低重要性 - 将是第一个从内存中删除的内容)我必须为这个主题举办研讨会,不言而喻,我需要为上述5个案例中的每个案例举例说明。
我很难为后台流程提供一个示例。
因此,对于Android操作系统将应用程序归类为后台进程,则不应该与用户进行任何交互,并且线程应该正在运行。
问题是我无法为背景过程提出一个合适的令人信服的例子。
有人可以帮助我吗?
修改(仅适用于那些认为此主题与内存管理无关的人)
这就是Android操作系统通过基于以上类别删除应用程序来为应用程序分配内存(如果内存不足)的方式,我认为它属于内存管理。
答案 0 :(得分:1)
Android Async任务是后台进程的一个示例。它还与主UI线程同步。
异步任务的doInBackground()
方法执行后台处理(无UI交互),但其onPreExecute()
和onPostExecute()
等方法可以与UI进行交互。
示例:您想要下载图片,初始化onPreExcute()
中的图片视图,下载处理转到doInBackground()
方法并在{{1}的图片视图中显示下载的图片1}}。
答案 1 :(得分:0)
如this Android blog post中所述,后台流程:
此时,该过程被视为后台进程。它与线程是否正在运行无关 - 该进程肯定不会做任何事情。事实上,空进程和后台进程之间的唯一区别是以前的活动活动。在这两种情况下,这些进程主要用于缓存目的,并且可以随时终止。