Я успешно создал локальное уведомление, которое запускает действие, но по какой-то причине, когда это локальное уведомление создается из обработчика удаленного уведомления, действие не запускается, когда локальное уведомление используется пользователем. Похоже, что ошибка или исключение не выбрасываются.
Ниже приведен код, создающий локальное уведомление. Примечание. Я использую Xamarin. Интересно, возможно ли это как-то связать разрешения (удаленные обработчики уведомлений, возможно, не могут создавать намерения для запуска действий?).
private void CreateNotification(string title, string desc) {
var uiIntent = new Intent(this, typeof(ConversationActivity));
var stackBuilder = TaskStackBuilder.Create(this);
stackBuilder.AddParentStack(Java.Lang.Class.FromType(typeof(ConversationActivity)));
stackBuilder.AddNextIntent(uiIntent);
PendingIntent pendingIntent = stackBuilder.GetPendingIntent(0, (int)PendingIntentFlags.UpdateCurrent);
var notification = new NotificationCompat.Builder(this)
.SetAutoCancel(true) // Remove the notification once the user touches it
.SetContentIntent(pendingIntent)
.SetContentTitle(title)
.SetSmallIcon(Resource.Drawable.AppIcon)
.SetContentText(desc)
.SetDefaults((int)(NotificationDefaults.Sound | NotificationDefaults.Vibrate))
;
// Set the notification info
// we use the pending intent, passing our ui intent over which will get called
// when the notification is tapped.
var notificationManager = GetSystemService(Context.NotificationService) as NotificationManager;
notificationManager.Notify(1, notification.Build());
}