Android应用程序和流程

时间:2017-01-16 12:41:41

标签: android

  1. 我们什么时候可以说应用程序已经死亡(当应用程序进程终止或进程中的所有活动都被终止时)。

  2. 为什么在Application的对象中存储数据是个坏主意?

    修改

  3. 假设我有一个 WhatIsYourNameActivity ,要求提供用户的名称并将其存储在 MyApplication 扩展应用。我还有另一个 WelcomeActivity ,它从应用程序的对象中获取该名称。如果用户离开应用程序(使用主页按钮)并且android默默地杀死应用程序以回收一些内存,那么当再次打开时,应用程序会因空指针(因为Application对象是新的)崩溃。为什么没有创建 WhatIsYourNameActivity 的新对象?为什么 WhatIsYourNameActivity ?(此活动也被Android杀死了。不是吗?还是杀了应用还有其他一些含义?) 应用程序被杀死并重新启动时实际发生了什么?

1 个答案:

答案 0 :(得分:4)

  1. 当程序死了。因为你可以拥有正在运行的服务或其他线程,即使所有活动都已经死亡,它们仍然有效。

  2. 因为Android可能会随时终止您的应用(例如,如果用户打开其他应用并且该应用将分配所有内存),然后重新启动它(当用户再次打开您的应用时)。在这种情况下,您将丢失应用程序对象中的所有数据。

  3. 您可以在此处获取更多详细信息 - https://developer.android.com/guide/topics/processes/process-lifecycle.html