有没有办法在应用程序被系统杀死后始终启动启动器活动?

时间:2018-04-11 04:18:02

标签: android performance android-activity

当我在Android 8.1.0上测试我的应用时,我发现了系统行为:
1.打开我的应用程序。按照此路径打开public function boot() { Validator::extend( 'older_than', function ($attribute, $value, $parameters, $validator) { $minAge = (!empty($parameters)) ? (int) $parameters[0] : 18; return (new DateTime)->diff(new DateTime($value))->y >= $minAge; } ); Validator::replacer( 'older_than', function ($message, $attribute, $rule, $parameters) { return "The age must be at least {$parameters[0]}"; } ); } Activity B - > LauncherActivity - > Activity A
2.按主页按钮,然后转到应用程序的权限页面 3.撤销许可。
4.通过任务列表返回应用程序,应用程序崩溃。

实际上,在第3步中,只要用户撤消权限,Android系统就会立即终止应用进程。因此,当用户重新打开应用程序时,系统将启动堆栈中的顶级活动。在这种情况下,它是Activity BActivity B将使用非空包调用其Activity B方法,该方法在应用程序进程被终止之前保存。堆栈中的其他活动(onCreate(savedInstanceState)LauncherActivity)将不会被实例化,除非Activity A完成自身而不启动其他新活动,例如用户只需按返回按钮即可。

问题是,许多基础模块在Activity BApplication中初始化。但在上述情况下,当用户重新打开应用时,Android系统会直接重新启动LauncherActivity而不启动Activity B。这将导致LauncherActivity崩溃。

我必须在Activity B中初始化一些基础模块,而不是LauncherActivity。那么,有没有办法在应用程序被系统杀死后始终启动启动器活动?

0 个答案:

没有答案
相关问题