Портирование приложения Android с SDK Level 25 на SDK Level 26.
SDK 25 имеет Push-уведомление с действием
Intent intent = new Intent(context, NotificationActionService.class);
pendingIntent = PendingIntent.getService(context, code, intent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Action.Builder builder = new NotificationCompat.Action.Builder(iconId, actionTitle, pendingIntent);
notificationBuilder.addAction(builder.build());
...
, а NotificationActionService является IntentService, который обрабатывает намерения.
SDK 26, во время порта я изменяю NotificationActionService на JobIntentService.Однако с этим изменением я больше не получаю уведомления.Почему это так?
Если я вместо этого сделаю:
PackageManager pkgMngr = ctx.getPackageManager();
Intent intent = packageManager.getLaunchIntentForPackage(ctx.getPackageName());
pendingIntent = PendingIntent.**getActivity**(context, code, intent, PendingIntent.FLAG_UPDATE_CURRENT);
Тогда это несколько сработает, однако при этом запускается мое приложение, которое я не хочу, я хочу обработать действиена заднем плане .Любые идеи, как правильно перенести это, чтобы он работал так, как я намеревался (обработать действие из фона)?
Спасибо!