Я пытаюсь заставить мой Service
работать на переднем плане.Все нормально, но , когда я убил приложение, уведомление было очищено .
Еще одно замечание, оно не работает на XIAOMI REDMI NOTE 4 с android 7.0.
Пример кода:
final Intent notificationIntent = new Intent();
final PendingIntent pendingIntent = PendingIntent.getActivity(
this,
0,
notificationIntent,
0
);
final Intent intent = new Intent(this, ForegroundService.class);
intent.setAction(STOP_SERVICE_ACTION);
final PendingIntent stopIntent = PendingIntent.getService(
this,
0,
intent,
PendingIntent.FLAG_CANCEL_CURRENT
);
final NotificationCompat.Action action = new NotificationCompat.Action(0, getString(R.string.stop), stopIntent);
final Notification notification = new NotificationCompat.Builder(this, NOTIFICATION_CHANEL_ID)
.addAction(action)
.setSmallIcon(R.drawable.ic_launcher)
.setContentIntent(pendingIntent)
.setContentText(getString(R.string.searching_in_surrounding))
.build();
startForeground(FOREGROUND_NOTIFICATION_ID, notification);
public int onStartCommand(Intent intent, int flags, int startId) {
if (intent != null && STOP_SERVICE_ACTION.equals(intent.getAction())) {
stopSelf();
return START_NOT_STICKY;
}
if (isRunning) {
return START_STICKY;
}
return START_STICKY;
}
Что может быть не так?