Для запуска любого кода в фоновом режиме вам нужно создать класс сервиса, когда ваше приложение переходит в фоновый режим, запустите этот сервис с помощью метода startService (), но вам также необходимо создать уведомление, сообщающее пользователю, что приложениезапуск службы, чтобы система не убивала вашу службу.это уведомление:
Notification.Builder builder = new Notification.Builder(this)
.setContentTitle("Title")
.setContentText("content");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
builder.setChannelId(channelId)
//Make this notification ongoing so it can’t be dismissed by the user//
.setOngoing(true)
.setSmallIcon(R.drawable.notification_icon);
startForeground(id, builder.build());
и внутри класса обслуживания onCreate напишите свою логику.надеюсь, это поможет