在onTaskRemoved中调用服务时,Android活动将无法持续启动

时间:2019-08-24 04:03:18

标签: android android-activity android-service kill-process

在装有Android 8.1(Oreo)的Samsung S9上。我正在尝试在服务的onTaskRemoved()上启动活动,因此我可以重新初始化通知(WorkManager)并防止应用强制关闭(在Stack Overflow的某处看到了此解决方案,但不记得:(,对不起)。该代码偶尔会起作用(应用程序不会与Android Studio断开连接,并且已按时成功收到计划的通知)。但是,该活动通常不会启动。我尝试(无济于事)将startActivity()循环到重试失败。为什么活动没有开始?

我肯定知道服务和活动都已在AndroidManifest中正确注册。另外,我知道活动中没有调用onCreate,因为onCreate中的记录器消息未打印。

    public void onTaskRemoved(Intent rootIntent) {
        Log.d("Logtag", "Application has been closed by user");

        Intent intent = new Intent(this, LaunchActivity.class);
        intent.setAction(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_LAUNCHER);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
        this.startActivity(intent);
    }```

0 个答案:

没有答案