Стиль NSUserNotification

NSUserNotification показывает кнопку действия только в том случае, если пользователь устанавливает стиль уведомлений для моего приложения на «оповещения» в системных настройках. Могу ли я каким-то образом установить этот стиль для своего приложения по умолчанию вместо того, чтобы полагаться на то, что пользователь выберет его вручную?


person tobiasbayer    schedule 06.08.2012    source источник


Ответы (1)


Мне потребовалось некоторое время, чтобы понять, как это сделать в моем собственном приложении.
Согласно справочник по ключам info.plist:

NSUserNotificationAlertStyle Указывает, должен ли стиль уведомления быть баннеры, оповещения или отсутствовать. Значение по умолчанию — баннеры, рекомендуемый стиль.

В вашем случае вам нужно определить ключ NSUserNotificationAlertStyle в info.plist со значением alert.

person kurthardin.dev    schedule 17.08.2012
comment
Я открыл вопрос на форумах разработчиков Apple по этому поводу. Если вы видите это, вы можете проверить это, чтобы увидеть, не выясняется ли что-нибудь. devforums.apple.com/message/745079#745079 - person kdbdallas; 18.10.2012
comment
Подводя итог ветке на форумах разработчиков Apple: вам нужно подписать код для своего приложения и установить стиль alert в info.plist. - person Smilin Brian; 18.12.2013
comment
@SmilinBrian Но как бы вы протестировали эту функцию во время разработки своего приложения? Мы обычно подписываем не перед публикацией в магазине приложений. - person Mike Lischke; 16.03.2014
comment
@MikeLischke Поскольку для его работы требуется подпись кода, кажется совершенно очевидным, что вам придется подписать код, чтобы протестировать его. - person Smilin Brian; 18.03.2014
comment
Это совершенно непрактично. В организации, где подписание выполняется кем-то другим (скажем, командой сборки), ни один разработчик не может подписать приложение только для тестирования. Не продумано, я бы сказал. - person Mike Lischke; 19.03.2014
comment
Вы можете (и должны) подписать свое приложение ключом «Разработчик Mac» для разработки и тестирования. В настройках сборки вашей цели установите для параметра «Идентификация подписи кода» значение «Автоматически/Mac Developer». Когда приходит время отправлять приложение, команда сборки создает архив и экспортирует приложение из архива. При экспорте Xcode (или xcodebuild) может отказаться от приложения с сертификатом Mac App Store или сертификатом ID разработчика. - person rob mayoff; 21.06.2016