我在后台调用了startService。我运行该应用程序并将其立即发送到后台,我希望在Android 8中10秒钟后会看到npm update
,但它没有任何异常。在活动的onCreate中:
IllegalStateException
并在服务中:
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
startService(new Intent(MainActivity.this, TestService.class));
}
}, 10000);
}
等级:
@Override
protected void onHandleIntent(@Nullable Intent intent) {
int i= 0;
do {
Log.i(TAG, "onHandleIntent: "+ i);
i++;
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
} while (i<100);
}
答案 0 :(得分:0)
看看:Oreo: startService() doesn't throw IllegalStateException when called in background
应用程序位于前台时,它可以自由创建和运行前台和后台服务。当应用进入后台时,它会显示几分钟的窗口,仍然允许在其中创建和使用服务。