2

Я пытаюсь реализовать push-уведомления в моем приложении Xamarin.Forms.
Я следовал this Microsoft doc, но я получаю сообщение об ошибке Unauthorized на линииXamarin.Forms Azure Push Notifications - «MobileServiceInvalidOperationException: у вас нет разрешения на просмотр этого каталога или страницы»

await push.RegisterAsync(RegistrationID, templates); 

. Исключение заключается в следующем:
Microsoft.WindowsAzure.MobileServices.MobileServiceInvalidOperationException: You do not have permission to view this directory or page.

Я добавил Sender ID (от Firebase) (они называют это «номер проекта» в документации)

public class PushHandlerBroadcastReceiver : GcmBroadcastReceiverBase<GcmService> 
{ 
    public static string[] SENDER_IDS = new string[] { "<my_sender_id_here>" }; 
} 

Я также добавил Server key (от Firebase) к ключу API Google (GCM) в моем узле уведомлений на портале Azure.

Я зарегистрировался в учетной записи Google на своем AVD. (Я также присоединился к Azure MobileServicesClient, используя Azure AD B2C, но я не думаю, что это имеет значение здесь.)

Я нашел other people with this same issue (поиск «разрешения», прямая связь не работает), но только один его экземпляр. И никто не дает решения.

Что мне не хватает?

ответ

4

Я думаю, вы просто не видели ни одного из моих ответов, поскольку я ответил на эту половину десятка раз.

В настоящее время существует проблема с Push Service App. Решение должно быть развернуто через Azure App Service, поэтому оно не будет быстрым.

Вместо этого взгляните на главу 5 моей книги на номер http://aka.ms/zumobook - она ​​предоставляет точный альтернативный код, который вам нужен. Предоставленный код будет работать после исправления, а также теперь, так что это не похоже на то, что ваш код снова изменится.

+0

Не могу сказать, что я столкнулся с любым из них. Я попробую! – Marcus

+1

Это сработало для меня. Я использовал альтернативный код ('client.InvokeApiAsync (...)' вместо 'push.RegisterAsync (...)). Спасибо Адриану! – Marcus

0

Я думаю, что нашел более правдоподобное решение. Поскольку мы все следовали руководству по мобильным приложениям, мы добавили аутентификацию в наш сервер. При регистрации для push-уведомления с помощью нашего устройства мы не прошли аутентификацию сначала, поэтому все наши регистрационные данные устройства выходят из строя (и не отображались на вкладке «Регистрация устройств» нашего концентратора (в Visual Studio). Изменение опции «Действие когда запрос не аутентифицирован 'to' Разрешить анонимные запросы (без каких-либо действий) 'сделал трюк! Устройства появляются и push-уведомления отправляются!

 Смежные вопросы

  • Нет связанных вопросов^_^