MvvmCross Navegar a ViewModel en la notificación de Android haga clic

Estoy mostrando una notificación usando Support.V7.NotificationCompat . Quiero navegar a un ViewModel cuando se hace clic en esta notificación. El parámetro de navegación que estoy pasando a ViewModel no funciona cuando intento mostrar el ViewModel usando MvxViewModelRequest pero funciona cuando uso ShowViewModel así:

 ShowViewModel<RouteModificationViewModel>(new { id = existingModification.Id }); 

Aquí está el método ViewModel Init. El Guid tiene el valor correcto cuando ShowViewModel usando ShowViewModel . El Guid siempre tiene el valor Guid.Empty (todos los 0's) cuando MvxViewModelRequest usando MvxViewModelRequest .

 public void Init(Guid id) { _routeModificationId = id; } 

Así es como intento mostrar el ViewModel desde la notificación:

 public void ShowRouteModifiedNotification(RouteModificationModel routeModificationModel) { var context = Application.Context; var builder = new NotificationCompat.Builder(context); builder.SetDefaults(NotificationCompat.DefaultAll); builder.SetCategory(NotificationCompat.CategoryStatus); builder.SetAutoCancel(true); builder.SetPriority(NotificationCompat.PriorityHigh); builder.SetSmallIcon(Resource.Mipmap.ic_launcher); builder.SetContentTitle("Route Modification"); builder.SetContentText("Hello, World!"); builder.SetContentIntent(GetIntent(routeModificationModel.Id)); builder.SetVibrate(new long[] { 1000, 1000, 1000, 1000, 1000 }); builder.SetSound(RingtoneManager.GetDefaultUri(RingtoneType.Notification)); var notification = builder.Build(); var notificationManager = (NotificationManager)context.GetSystemService(Context.NotificationService); var handler = new Handler(Looper.MainLooper); handler.Post(() => { notificationManager.Notify(RouteModificationNotificationId, notification); }); } private PendingIntent GetIntent(Guid guid) { var request = MvxViewModelRequest<RouteModificationViewModel>.GetDefaultRequest(); var json = Mvx.Resolve<IMvxJsonConverter>().SerializeObject(new { id = guid }); request.PresentationValues = new Dictionary<string, string> { { "id", json } }; var translator = Mvx.Resolve<IMvxAndroidViewModelRequestTranslator>(); var intent = translator.GetIntentFor(request); return PendingIntent.GetActivity(Application.Context, 0, intent, 0); } 

¿Puede alguien ver lo que estoy perdiendo o haciendo mal?

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.