Из-за некоторых ограничений в Android 9 мы не можем запускать активность на переднем плане из фона.У меня есть широковещательный приемник BootReceiver, который прослушивает события во время загрузки.Однако при запуске действия с использованием context.startActivity()
.
шаги,
void onBootActions (){
Intent launchIntent = new Intent (getApplicationContext(), MainActivity.class);
PendingIntent pendingintent = PendingIntent.getActivity (getApplicationContext(), 0, pendingintent, PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager mrg = (AlarmManager)getApplicationContext().getSystemService(Context.ALARM_SERVICE);
if(option == 1){
mgr.set (AlarmManager.RTC, delay, pendingIntent);
}else{
context.startActivity(getContext(), MainActivity.class);
}
}
не могут быть выведены на передний план, пробовал этот вариант с отложенными намерениями, потому что, кажется, у него хороший выборпри запуске службы или активности после android 9.
Теперь с обоими значениями "option" '1' и '2' я вижу, что запускаемая активность находится в фоновом режиме, и из-за этого я не могу запустить службу, котораясоздается в деятельности.и он не работает на Android 9 и далее, так как мы не можем запустить службу из фона.
Каким должен быть выбор дизайна для такого сценария?
Любые советы будут высоко оценены.