До API 28 я могу просто запустить фоновый сервис и постоянно прослушивать сокетное соединение для любых входящих данных
Однако в последние изменения в API 28, как показано здесь https://developer.android.com/about/versions/oreo/background#services
я больше не могу запускать фоновую службу в Android 9, если она не охватывает только один из следующих случаев
При определенных обстоятельствах фоновое приложение помещается на временный
Белый список на несколько минут. Пока приложение находится в белом списке, оно
можно запускать сервисы без ограничений и свои фоновые сервисы
разрешено бегать. Приложение помещается в белый список, когда оно
обрабатывает задачу, которая видна пользователю, например:
Обработка высокоприоритетного сообщения Firebase Cloud Messaging (FCM).
Получение трансляции, такой как SMS / MMS-сообщение.
Выполнение PendingIntent из уведомления.
Запуск VpnService до того, как приложение VPN продвигается на
передний план.
Единственный вариант, который я нашел, - запустить службу в качестве переднего плана.
Я уже нашел какую-то альтернативу, такую как использование JobScheduler или WorkManger, но я не думаю, что они могут удовлетворить мои требования
поэтому у меня вопрос, есть ли другой способ прослушивания сокетного соединения, предназначенного для android 9 (api 28), кроме использования службы переднего плана?