Добавить пользовательское локальное уведомление в ios10 - swift 3

Я пытаюсь добавить пользовательское локальное уведомление, но я получаю только стандартное уведомление с моим действием:

введите здесь описание изображения

Моя раскадровка выглядит так (стандартный шаблон):

введите здесь описание изображения

У меня есть расширение, для которого UNNotificationExtensionCategory установлено значение awesomeNotification (в Info.plist). Также в основе этого расширения лежит шаблон Notification Content от iOS - Application Extension.

В моем делегате приложения у меня есть это:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    let center = UNUserNotificationCenter.current()

    let actions = [UNNotificationAction.init(identifier: "Hey", title: "Yo", options: UNNotificationActionOptions.foreground)]

    let category = UNNotificationCategory(identifier: "awesomeNotification", actions: actions, minimalActions: actions, intentIdentifiers: [], options: [])
    center.setNotificationCategories([category])

    center.requestAuthorization([.alert, .sound]) { (granted, error) in
    }

    return true
}

В моем контроллере просмотра в основном приложении у меня есть следующее действие для его запуска:

@IBAction func sendPressed(_ sender: AnyObject) {
    let content = UNMutableNotificationContent()

    content.categoryIdentifier = "awesomeNotification"
    content.title = "Hello"
    content.body = "What up?"
    content.sound = UNNotificationSound.default()

    // Deliver the notification in five seconds.
    let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 5, repeats: false)
    let request = UNNotificationRequest(identifier: "FiveSecond", content: content, trigger: trigger)

    // Schedule the notification.
    let center = UNUserNotificationCenter.current()
    center.add(request) { (error) in
        print(error)
    }
    print("should have been added")
}

Изменить

Так что это работает на iPhone 6s/6s+, очень странное поведение: введите здесь описание изображения


person Bjarte    schedule 15.06.2016    source источник
comment
Вы имеете в виду, что вам нужен настраиваемый вид в уведомлении, верно?   -  person Anish Parajuli 웃    schedule 15.06.2016
comment
да, это то, что я пытаюсь использовать.   -  person Bjarte    schedule 16.06.2016
comment
я пробовал то же самое ... но не смог показать уведомление даже в 6s? можете ли вы поместить свой проект в git?   -  person Anish Parajuli 웃    schedule 16.06.2016
comment
Я вижу пользовательскую зеленую область только на 6s   -  person Bjarte    schedule 16.06.2016
comment
не знаю, почему я не могу .. не повезло .. старайся больше   -  person Anish Parajuli 웃    schedule 16.06.2016


Ответы (1)


Обновление. Начиная с iOS 10 beta 2, расширенные уведомления также доступны на устройствах до 3D Touch. Потяните вниз обычное уведомление, чтобы увидеть его.

Убедитесь, что вы тестируете на симуляторе/устройстве iPhone6s/iPhone6s plus, похоже, он не работает на устройствах с сенсорным экраном до 3D.

На симуляторе iPhone6 ​​попробуйте щелкнуть и перетащить вниз уведомление об акции, которое вы получите, и вы должны увидеть свой пользовательский интерфейс.

person Eirik Berntsen    schedule 15.06.2016
comment
Это так странно... Я ожидал, что это будет работать на iPhone SE или даже на других устройствах, кажется очень странным ограничивать его ими. Я также ожидал, что мой просмотр контента перехватит просмотр, но он все еще показывает акции ниже... ну ладно! - person Bjarte; 16.06.2016
comment
Я ожидал того же и ударился головой о стену именно с этой проблемой. Похоже, что позже он появится и в других моделях: macrumors .com/2016/06/14/богатые-уведомления-без-3d-touch - person Eirik Berntsen; 16.06.2016