Работа с формами Xamarin, в настоящее время только платформой Android, и я пытаюсь заставить работать уведомления через Azure и Firebase. В своем текущем состоянии уведомление получено и имеет содержимое, поэтому оно не является нулевым, оно просто является базовым и называется «Тестовое уведомление Azure». Однако я весь день гуглял и по какой-то причине не могу найти ответ на свой вопрос: уведомление не будет отображаться и не будет содержать ошибок, оно просто перешагивает код и ничего не делает.
Создание канала в MainActivity (я сделал это здесь, потому что docs.microsoft сказал)
if (Build.VERSION.SdkInt < BuildVersionCodes.O)
{
// Notification channels are new in API 26 (and not a part of the
// support library). There is no need to create a notification
// channel on older versions of Android.
return;
}
var name = Resources.GetString(Resource.String.AppName);
var description = GetString(Resource.String.Description);
var channel = new NotificationChannel("4867453", name, NotificationImportance.Default)
{
Description = description
};
var notificationManager = (NotificationManager)GetSystemService(NotificationService);
notificationManager.CreateNotificationChannel(channel);
И в моем отдельном классе обслуживания у меня есть
var intent = new Intent(this, typeof(MainActivity));
intent.AddFlags(ActivityFlags.ClearTop);
var pendingIntent = PendingIntent.GetActivity(this, 0, intent, PendingIntentFlags.OneShot);
NotificationCompat.Builder notification = new NotificationCompat.Builder(this, Channel_ID)
.SetContentTitle("Test Message")
.SetContentText(messageBody)
.SetContentIntent(pendingIntent);
var notificationManager = GetSystemService(Context.NotificationService) as NotificationManager;
notificationManager.Notify(Notification_ID, notification.Build());
Кое-что из этого, в основном из Intent, я нашел в Microsoft Docs и не имело никакого значения, работает приложение или нет вообще, я удалил его перед тестированием, но это не имело никакого значения.
Я, вероятно, делаю что-то немного глупое, если честно, если кто-то может пролить свет на мою проблему, я был бы очень благодарен. Спасибо:).