Для решения этой проблемы я создал вторичную службу разработки веб-API с почти идентичным кодом.
Я понял, что каждый веб-API может быть подключен к одному концентратору уведомлений при выборе вкладки «Push» в Azure на вкладке «Обзор» службы веб-API.
Веб-API для разработки. Я подключился к недавно созданному Центру уведомлений (в том же пространстве имен, что и в проекте мобильного приложения), для которого установлено значение «Песочница» для APNS.
Я изменил ключ "authorlements.plist" "apns-environemt" проекта iOS в Xamarin на "development" и загрузил p12 для разработки в новый центр уведомлений.
Также я изменил строку кода в проекте iOS, который регистрируется в веб-API, чтобы указывать на созданный новый веб-API (и, следовательно, зарегистрироваться в новом хабе для уведомлений).
// send registration to the NEW development web api
var client = new MobileServiceClient(MyMobileAppName.App.NewWebAPIMobileServiceUrl);
await client.GetPush().RegisterAsync(deviceToken, templates);
//get the installation id
Console.WriteLine("Installation id1: " + client.InstallationId.ToString());
Когда все будет готово для отправки обновления в магазин приложений, я просто изменяю приведенную выше строку кода, чтобы указать на исходный, производственный веб-интерфейс и концентратор, а также, конечно, редактирую списки прав доступа для проекта iOS и, возможно, службы уведомлений. расширение для изменения их "aps-environment" на "production".
Таким способом можно даже отправлять уведомления на конкретный идентификатор установки устройства разработки, но можно даже отправлять на любое устройство, зарегистрированное в режиме разработки, через новые веб-API и концентратор.