7

カスタムのローカル通知を追加しようとしていますが、アクションで在庫通知しか取得していません:

ここに画像の説明を入力

私のストーリーボードは次のようになります (標準テンプレート):

ここに画像の説明を入力

(Info.plistで)にUNNotificationExtensionCategory設定された拡張機能があります。awesomeNotificationまた、この拡張機能のベースは の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+ で動作しますが、非常に奇妙な動作です。 ここに画像の説明を入力

4

1 に答える 1

5

更新: iOS 10 ベータ 2 以降、リッチ通知は 3D タッチ以前のデバイスでも利用できます。通常の通知をプルダウンして表示します。

iPhone6s/iPhone6s plus シミュレーター/デバイスでテストしていることを確認してください。3D タッチ以前のデバイスでは動作しないようです。

iPhone6 シミュレーターで、取得した在庫通知をクリックして下にドラッグすると、カスタム UI が表示されるはずです。

于 2016-06-15T14:49:47.517 に答える