Это не может быть сделано программно. И «registerForRemoteNotificationTypes» предназначен для удаленных (push) уведомлений, а не локальных.
Единственное, что мне удалось сделать, - это включить в описание моего приложения в магазине приложений объяснение того, как настроить Центр уведомлений. Я также включил это в мое демонстрационное видео.
Вы также можете подумать о том, чтобы при первом запуске приложения ввести подсказку, объясняющую «правильные» настройки уведомлений для вашего приложения. Не показывать его при последующих запусках, но размещайте его в разделе «справка».
Конечно, «что правильно» - это то, что хочет пользователь, но для моего приложения пользователи НИКОГДА не хотели настройки по умолчанию, а именно «баннеры». Лучший пользовательский опыт для моего приложения - только "звуки". Самая большая жалоба на мое приложение перед Центром уведомлений - всплывающие окна с локальными уведомлениями. Теперь с помощью Центра уведомлений пользователи могут отключить все, кроме «звуков». Это - установка, которую они все, кажется, хотят. Почему я, как разработчик, не могу просто дать им это по умолчанию? Если они хотят изменить это на что-то другое, это здорово, но я должен контролировать настройки по умолчанию. Но я ругаю.