Внутренние push-уведомления в быстром

Я пытаюсь зарегистрировать приложение для push-уведомлений домофонов. У них есть инструкции здесь: https://docs.intercom.io/Install-on-your-mobile-product/enabling-push-notifications-with-intercom-for-ios

Они дают этот код в obj c, но мое приложение работает быстро, и для меня это выглядит как бред:

- (void)applicationDidBecomeActive:(UIApplication *)application {    
    if ([application respondsToSelector:@selector(registerUserNotificationSettings:)]){ // iOS 8 (User notifications)
        [application registerUserNotificationSettings:
         [UIUserNotificationSettings settingsForTypes:
          (UIUserNotificationTypeBadge |
           UIUserNotificationTypeSound |
           UIUserNotificationTypeAlert)
                                           categories:nil]];
        [application registerForRemoteNotifications];
    } else { // iOS 7 (Remote notifications)
        [application registerForRemoteNotificationTypes:
         (UIRemoteNotificationType)
         (UIRemoteNotificationTypeBadge |
          UIRemoteNotificationTypeSound |
          UIRemoteNotificationTypeAlert)];
    }
}

Может кто-нибудь объяснить, как сделать этот процесс в быстрой?

1 ответ

Решение

Следующий код работает на Xcode 7.1 с помощью новой функции доступности, добавленной в Swift 2

if #available(iOS 8, *) {
    application.registerUserNotificationSettings(
            UIUserNotificationSettings(forTypes: UIUserNotificationType(rawValue: UIUserNotificationType.Badge.rawValue |
                UIUserNotificationType.Sound.rawValue |
                UIUserNotificationType.Alert.rawValue),
            categories: nil))
} else {
    application.registerForRemoteNotificationTypes(
        UIRemoteNotificationType(rawValue: UIRemoteNotificationType.Badge.rawValue |
        UIRemoteNotificationType.Alert.rawValue |
        UIRemoteNotificationType.Sound.rawValue))
}
Другие вопросы по тегам