Я переопределяю как DidReceiveRemoteNotification, так и ReceivedRemoteNotification и оставляю их пустыми, пытаясь предотвратить автоматическую отправку моих удаленных уведомлений, но, похоже, это не помогает. Потому что каждый раз, когда я отправляю запрос почтальона на уведомление, они все равно появляются. Как я могу предотвратить отправку уведомления до тех пор, пока приложение не выполнит необходимые требования (пользователь не будет подписан)?
Если вы зарегистрировались в приложении один раз, независимо от того, что получите уведомление. Разве что удалить приложение и переустановить без регистрации. Я думаю, что это не должно контролироваться в мобильном телефоне. Когда push-уведомление с сервера, сервер может указать, каких пользователей нужно отправить.
@JuniorJiang-MSFT, значит, нет возможности пересечь уведомление до его отправки? в качестве альтернативы, какая функция вызывается после получения удаленного уведомления? (до упомянутого выше)
@Steinar Да, если пользователь разрешит разрешение на уведомление при первом запуске приложения, уведомление все равно придет. Однако вы можете установить для уведомления беззвучный режим, по крайней мере, похоже, что уведомление не получено.developer.apple.com/documentation/usernotifications/…
@JuniorJiang-MSFT, если для уведомления установлен беззвучный режим, можно ли будет вручную отправить уведомление с помощью функции UNUserNotificationCenter.Current.AddNotificationRequest?
@Steinar Возможно, вы можете. Одно из них - удаленное уведомление, а другое - локальное уведомление.





Когда ваше приложение запускается, зарегистрируйтесь или отмените регистрацию, как только вы узнаете состояние приложения.
Отменить регистрацию:
UIApplication.SharedApplication.UnregisterForRemoteNotifications();
Регистр:
UIApplication.SharedApplication.RegisterForRemoteNotifications();
это не совсем то, что мне нужно, я все еще хочу иметь возможность общаться со своим приложением.
@Steinar Обновите свой вопрос о том, как именно выглядит ваш вариант использования.
Отправьте токен устройства на ваш сервер, когда пользователь входит в систему, иначе не отправляйте его.