когда приложение свёрнуто. Мне исключительно для уведомлений надо.
                  
                  
                  
                  
                  
                  вот так у меня в app
                  
                  
                  
                  
                  
                  Intent i = new Intent(getApplicationContext(), MyFirebaseMessagingService.class);
                  
                  
                  
                  
                  
                  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                  
                  
                   getApplicationContext().startForegroundService(i);
                  
                  
                  } else {
                  
                  
                              getApplicationContext().startService(i);
                  
                  
                  }
                  
                  
                  
                  
                  
                  а в самом процессе 
                  
                  
                  
                  
                  
                  if (Build.VERSION.SDK_INT >= 26) {
                  
                  
                  NotificationChannel channel = new NotificationChannel(CHANNEL_ID,
                  
                  
                                      "appname",
                  
                  
                                      NotificationManager.IMPORTANCE_HIGH);
                  
                  
                  
                  
                  
                              channel.setShowBadge(false);
                  
                  
                  
                  
                  
                  ((NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE)).createNotificationChannel(channel);
                  
                  
                  
                  
                  
                  Notification notification = new NotificationCompat.Builder(this, CHANNEL_ID).build();
                  
                  
                  
                  
                  
                  startForeground(364, notification);
                  
                  
                   }
                  
                  
                  
                  
                  
                  но в итоге от приложения висит постоянное уведомление "Приложение запущено" и это бесит пользователей. Но ведь другие приложения не показывают такое постоянное уведомление. Иначе б висело куча постоянных уведомлений от вацапа, вк, фейсбука и т.д. Как сделать также? Как убрать постоянное уведомление? я это всё добавил потому что иначе куча ошибок Context.startForegroundService() did not then call Service.startForeground()
                  
                  
                  
                  
                  
                  https://stackoverflow.com/questions/44425584/context-startforegroundservice-did-not-then-call-service-startforeground
                  
                  
                
Как вариант делать все также, запускать уведомление, но в настройках канала выключить оповещение, вибрацию и прочее.
Или не использовать сервис просто. Перейти на WorkManager, например.
Обсуждают сегодня