#c# #android #xamarin #xamarin.forms #android-notifications
#c# #Android #xamarin #xamarin.forms #android-уведомления
Вопрос:
Я знаю, почему это предупреждение появляется в моем случае, я не создавал канал, но это не вопрос, я хочу знать, как его перехватить или проверить, существует ли канал в коде, чтобы обработать его перед публикацией уведомления.
«Предупреждение разработчика для пакета «com.app» не удалось опубликовать уведомление на канале «channel1″ подробнее см. журнал» спасибо.
Ответ №1:
Вы можете использовать NotificationManager.GetNotificationChannel
, и он вернет экземпляр NotificationChannel
, если он существует, или a null
, если он не существует.
Краткий пример:
using (var notificationManager = NotificationManager.FromContext(ApplicationContext))
{
var channelName = "SomeChannelName";
if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
{
NotificationChannel channel = notificationManager.GetNotificationChannel(channelName);
if (channel == null)
{
channel = new NotificationChannel(channelName, channelName, NotificationImportance.Low)
{
LockscreenVisibility = NotificationVisibility.Public
};
channel.SetShowBadge(true);
notificationManager.CreateNotificationChannel(channel);
}
}
// build your notification
}