startForeground () в onCreate () против onStartCommand () - PullRequest
0 голосов
/ 15 февраля 2019

Я обнаружил огромное количество исключений из Playstore.RemoteServiceException из Android P.

Я создаю службу Android переднего плана, а затем вызываю startForegound (с каналом).

Но 99,9% только 9,0 (android P) пользователи сообщают об исключении RemoteServiceException.Я проверил, делаю ли я канал уведомления для сервиса.Я также проверил, вызываю ли я startForegroundService для ОС после OREO.

У каждого кода не было проблем.

Но я обнаружил, что несколько раз вызываю startForegroundService (), но onCreate () из Serviceвызывается только один раз в первый раз, когда он создается.Таким образом, startForeground () внутри onCreate () вызывается только один раз.

Но если я поместил startForeground () в onStartCommand (), то он также будет вызываться столько раз, сколько я вызываю startForegroundService ().Потому что он также будет вызываться всякий раз, когда вы вызываете startService / startForegroundService (даже если экземпляр Service уже создан).

Считаете ли вы, что это является причиной исключения.

И комментарий mboy о https://stackoverflow.com/a/51251741/5343 также говорит о похожих вещах.

...