Облачные сообщения Firebase и эмулятор Android - PullRequest
0 голосов
/ 12 апреля 2020

С моим эмулятором Android я сталкиваюсь с очень странным поведением.

Я разрабатываю кросс-платформенное приложение с Xamarin. У меня проблема с пу sh уведомлениями. Я использую этот простой учебник:

https://github.com/CrossGeeks/FirebasePushNotificationPlugin

С моего сервера я получаю sh сообщение вроде этого:

FCMClient client = new FCMClient(“MyKey”); //as derived from https://console.firebase.google.com/project/


            var message = new Message()
            {
                To = “MY_DEVICE_TOKEN”, //topic example /topics/all
                Notification = new AndroidNotification()
                {
                    Body = "Hi",
                    Title = "Hello",


                }



            };

            IFCMResponse result = await client.SendMessageAsync(message);

            return Ok(result);

Код в моем приложении:

CrossFirebasePushNotification.Current.OnNotificationReceived += (s, p) =>
        {
            try
            {

                //p.Data.
                Debug.WriteLine($"OnNotificationReceived:" + p);


                foreach (var item in p.Data.Keys)
                {
                    Debug.WriteLine(p.Data[item]);
                }


                if (p.Data.ContainsKey("body"))
                {
                    Device.BeginInvokeOnMainThread(() =>
                    {

                    });

                }
            }
            catch
            {

            }

        };



        CrossFirebasePushNotification.Current.OnNotificationOpened += (s, p) =>
        {
            //System.Diagnostics.Debug.WriteLine(p.Identifier);
            try
            {


                foreach (var data in p.Data)
                {
                    Debug.WriteLine($"{data.Key} : {data.Value}");
                }


            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }



        };

А теперь проблема с strage.

enter image description here

Как вы можете видеть на картинке, я получаю уведомление, и при выводе приложения я получаю "Привет, привет" как результат Debug.WriteLine($"{data.Key} : {data.Value}");, если приложение находится в фоновом режиме / убито, я получаю уведомление, но при выводе приложения я получаю это:

enter image description here

Очень странно, особенно потому, что в некоторые дни go все работал отлично. Теперь я что-то изменил и не могу решить проблему.

Я должен сказать, что сервисы Google Play установлены на эмуляторе. Мне нужно получить информацию от p.Data, и я не могу прямо сейчас.

Есть идеи?

Мирко

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