Отображение уведомлений в приложении Master-Detail - без ошибок, но и без уведомлений - PullRequest
0 голосов
/ 09 июня 2018

Я пытаюсь получать уведомления в приложении Xamarin, сначала на стороне Android, затем я сделаю iOS.Я скачал пример приложения для Android , и он работает просто отлично.Тем не менее, когда я пытаюсь реализовать то же самое в моем собственном приложении, хотя я не получаю ошибку, я также не получаю уведомления.

Вначале я пытаюсь просто создать тестовое приложение в основном упражнении, но мне интересно, связано ли это с приложением типа master-detail.

Есть ли у меняпредоставить сборщику уведомлений и менеджеру различные контексты, а не основной вид деятельности, как показано в примере?К сожалению, мне не удалось найти пример приложения с подробной информацией, реализующего уведомления.

Основное действие OnCreate () заключается в следующем ...

    protected override void OnCreate(Bundle bundle)
    {
        TabLayoutResource = Resource.Layout.Tabbar;
        ToolbarResource = Resource.Layout.Toolbar;
        AndroidContext = this;

        base.OnCreate(bundle);

        global::Xamarin.Forms.Forms.Init(this, bundle);

        UserDialogs.Init(this);

        LoadApplication(new App()); //<- setup master-detail forms

        IsPlayServicesAvailable();

        FirebaseApp.InitializeApp(this);
        var refreshedToken = FirebaseInstanceId.Instance.Token;

        var notificationBuilder = new Notification.Builder(this)
                .SetSmallIcon(Resource.Drawable.icon)
                .SetContentTitle("myStaff Message")
                .SetContentText("test")
                .SetAutoCancel(true);

        var notificationManager = NotificationManager.FromContext(this);

        notificationManager.Notify(0, notificationBuilder.Build());            
    }

Могу ли я попросить людей воздержатьсяот ответа «вы должны использовать плагин XYZ» или «использовать Nuget ABC ...» или аналогичный.Хотя я ценю, что существует множество плагинов, которые могут это делать, я хочу понять, что происходит с моим кодом, а не просто избежать / обойти проблему.

Редактировать: Хорошо, так что это гораздо глубже, чем японял.Сейчас я тоже попробовал с двумя разными плагинами - одинаковый результат в обоих случаях, без ошибок, но без уведомлений.Это просто чокнутый.Вернёмся на несколько недель назад к моему коду и попробуем там, затем повторим, где (когда) он останавливается, возможно, это даст мне ключ к пониманию того, что его блокирует

1 Ответ

0 голосов
/ 10 июня 2018

Итак, при дальнейшем исследовании и поиске старых устройств может показаться, что это проблема Oreo.

Похоже, что официальная документация отсутствует, а демонстрационные проекты не допускают каналы, и в этом проблема.Это не имеет ничего общего с master-detail - мой код работает нормально (все версии) при запуске на старом устройстве, но не на 8.0+ - теперь мне просто нужно это исправить.

Редактировать: на основепост kylewhittington в этой ветке github (о 8-м посте) Теперь мне удалось закодировать решение, которое работает как в Oreo, так и в более старой версии Android.Просто нужно добавить код для iOS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...