Ксамарин.Формы Azure Push Notifications - " MobileServiceInvalidOperationException: у вас нет разрешения на просмотр этого каталога или страницы"


Я пытаюсь реализовать push-уведомления в моем Xamarin.Формы приложения.
Я следовал этому Microsoft doc , но получаю ошибку Unauthorized на

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.

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

Я нашел других людей с этой же проблемой (поиск "разрешения", прямая ссылка не работает), но только один экземпляр этого. И никто не предлагает решения.

Что я упускаю?

2 2

2 ответа:

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

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

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

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