появляется ошибка при попытке зарегистрировать устройство в Azure Notification Hub - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть приложение xamarin, которое будет отправлять уведомления через функции Azure, а его центр уведомлений - ставить привязку.

В приложении xamarin у меня есть служба Android, которая получает токен и сохраняет в кеше

    [Service]
[IntentFilter(new[] { "com.google.firebase.INSTANCE_ID_EVENT" })]
public class MyFirebaseIIDService : FirebaseInstanceIdService
{
    private App _app => (App)Xamarin.Forms.Application.Current;
    private readonly ICachingService _cachingService;
    public MyFirebaseIIDService()
    {
        var xx = typeof(ICachingService);
        _cachingService = (CachingService)App.Instance.Container.Resolve(xx);

    }
    public override void OnTokenRefresh()
    {

            var refreshedToken = FirebaseInstanceId.Instance.Token;
            _cachingService.FireBaseToken = refreshedToken;
            Console.WriteLine($"Token received: {refreshedToken}");
       //     SendRegistrationToServerAsync(refreshedToken);

    }

}

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

  var client = new MobileServiceClient(App.MobileServiceUrl);
            var push = client.GetPush();
            var reg = new Registration(token, tags);
            await push.RegisterAsync(reg);

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

на метод push.RegisterAsyn я получаю сообщение об ошибке.

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

обратите внимание, что App.MobileServiceUrl - это URL Azure.Мобильное приложение, подключенное к концентратору уведомлений

enter image description here

Кроме этого, это мобильное приложение Azure имеет только стандартные контроллеры TODO и все, что поставляется с шаблоном.Мой код уведомления об отправке будет в функциях Azure с использованием привязки вывода концентратора уведомлений.

Я также обновил все связанные с лазурью нити без разницы, он пытается попасть по этому URL для регистрации.https://xxxx.azurewebsites.net/push/registrations?deviceId=dTd4wba1KTU:APA91bHKOZRX9LFzEGD-yqyz4p-whqh6UsoEAlgpFHfBxu00MhLo-------yyyyyyyyyyyyyyyyeuoRmH4h9czeQbvGRgbwt4zMlrvRIlvLDZ-kTu_Dcu2iHx9I5u0gheQQ3Z2tYq66O&platform=gcm

1 Ответ

0 голосов
/ 23 февраля 2019

Я использовал неправильный нюгет.мне пришлось использовать

Microsoft.Azure.Mobile.Client

, вместо этого я использовал Nuget мобильных служб Azure.

оба имеют класс MobileServiceClient, поэтому я запутался.теперь я не получаю исключения.

...