1

Я создал проект PCL Xamarin Forms. Я включил уведомления OneSignal push, которые появляются и отображаются хорошо. Я хочу обработать событие, когда кто-то нажимает на уведомление, чтобы я мог показать действие, соответствующее этому. Я также добавил Xam.Plugin.Pushnotifications, но я не могу справиться с нажатием. Сообщение приходит, и я могу захватить сообщение и играть с ним, но я хочу обработать событие крана при оповещениях. Как мне это сделать в PCL?Как обрабатывать события крана в Push-уведомлениях в форматах Xamarin?

ответ

0

Xamarin OneSignal SDK не поддерживает проект PCL, так как для него требуются классы платформы. Вам нужно будет добавить свой код в общий проект, как показано на странице Xamarin OneSignal setup guide.

Используйте следующий код для обработки события уведомления.

// Notification Opened Delegate 
OneSignal.NotificationOpened exampleNotificationOpenedDelegate = delegate (OSNotificationOpenedResult result) 
{ 
    try 
    { 
     System.Console.WriteLine("OneSignal Notification opened:\nMessage: {0}", result.notification.payload.body); 
     Dictionary<string, object> additionalData = result.notification.payload.additionalData; 
     if (additionalData.Count > 0) 
      System.Console.WriteLine("additionalData: {0}", additionalData); 


     List<Dictionary<string, object>> actionButtons = result.notification.payload.actionButtons; 
     if (actionButtons.Count > 0) 
      System.Console.WriteLine("actionButtons: {0}", actionButtons); 
    } 
    catch (System.Exception e) 
    { 
     System.Console.WriteLine(e.StackTrace); 
    } 
}; 

OneSignal.StartInit("YOUR_APP_ID", "YOUR_GOOGLE_PROJECT_NUMBER") 
     .HandleNotificationOpened(exampleNotificationOpenedDelegate) 
     .EndInit(); 
+0

Вы правы, мне нужно работать с конкретной платформой. Спасибо :) – vishgarg

+0

Теперь они поддерживают PCL. Руководство было обновлено: https://documentation.onesignal.com/docs/xamarin-sdk-setup#section-xamarin-forms-project – Corgalore

+0

Где написать этот код в iOS, пожалуйста, предложите .. Я обрабатываю его в приложении AppDelegate но ничего не произошло, когда я нажимаю на уведомление. Все отлично работает в Android-проекте, для которого я написал код в MainActivity. Ребята, пожалуйста, направляйте меня для ios. –

Смежные вопросы