Android Don和#x27;不要限制活动和后台进程。来自开发商';谁的观点?

Android Don和#x27;不要限制活动和后台进程。来自开发商';谁的观点?,android,Android,我知道,选中开发者选项中的不保留活动,会使android系统在用户离开屏幕时立即终止活动-因此开发者必须通过覆盖SaveInstance上的保存活动状态来处理此问题 但是我不明白后台进程限制的目的。它对应用程序有何影响?作为一名开发人员,当我选择“无后台流程”时,我应该如何处理这种情况?这个问题对我来说也非常重要。作为开发人员,您需要测试边缘案例,“不保留活动”和“无后台流程”选项都会使您的应用程序表现不同 以下是我收集的关于这些选项的信息: 不保留活动:活动将被销毁并重新创建。这意味着您将经历

我知道,选中开发者选项中的
不保留活动
,会使android系统在用户离开屏幕时立即终止活动-因此开发者必须通过覆盖SaveInstance上的
保存活动状态来处理此问题

但是我不明白
后台进程限制的目的。它对应用程序有何影响?作为一名开发人员,当我选择“无后台流程”时,我应该如何处理这种情况?

这个问题对我来说也非常重要。作为开发人员,您需要测试边缘案例,“不保留活动”和“无后台流程”选项都会使您的应用程序表现不同

以下是我收集的关于这些选项的信息:

不保留活动:活动将被销毁并重新创建。这意味着您将经历
onCreate
onRestoreSaveInstance
等等。这与改变配置(如旋转屏幕)的行为几乎相同。但是:您确实在内存中保留了变量

示例:您有一个用户对象,其字符串name=“John”是您在用户登录时设置的。如果在重新创建活动时尝试访问
user.getName()
(并且未将其保存在捆绑包中),则仍将获得其名称

无后台进程:执行与“不保留活动”完全相同的操作,并清除所有变量

示例:
user.getName()
这次将返回null


一句话:对于用户来说,最常见的场景似乎是“不要保留活动”。但“无背景流程”也应该进行测试,因为它可能会产生不同的结果,我可能会猜测可能发生的情况(我有兴趣了解这方面的统计数据)

这里解释@NishantPardamwar:我已经看到了。但我仍然不明白从开发者的角度看后果是什么。