問題タブ [unusernotificationcenter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
58716 参照

ios - アプリがフォアグラウンドSwift 3にあるときにローカル通知を表示する

どうやらこれは ios10 で可能になりました:

この回答は基本的に、それを行うために必要なツールを示しています:

アプリが開いていてフォアグラウンドにあるときに、ストック iOS 通知バナーを表示しますか?

まとめ方がいまいちよくわかりません。

これがどれほど重要かはわかりませんが、オプションの関数を保持することができず、xcode はそれをプライベートに切り替えるように求めています。

バッジを表示しようとしていますが、ドキュメントで提供されています

ここで少し迷子になりました。

そして、特定のView Controllerをこれらのバッジの取得から除外したい場合、およびNavigation Controllerを使用していない場合、私が見つけたこのコードは機能すると思いますか? : var window:UIWindow?

0 投票する
2 に答える
1610 参照

ios - UNUserNotificationCenter を使用して iOS 10 リッチ通知をサポートしていますが、通知が表示されません。アラートを鳴らすだけです

何が欠けているのかわかりませんが、奇妙な問題で立ち往生しています!!!

通知音はするが表示されない。

アラートとサウンドのみを表示するようにアプリを登録しましたが、不思議なことに表示されません。通知が正常に追加されていることがわかります。しかし、私には理解できない些細なことがあるようです。

通知を削除しても機能します。

そして、AppDelegate で...

private let notificationManager = NotificationManager()

0 投票する
1 に答える
1435 参照

ios - iOS 10 ローカル通知が機能しない (UserNotifications フレームワークに移行中)

iOS 9 でローカル通知が正常に機能するアプリを持ってい
ます。アプリを iOS 10 に更新して

います。Swift 3 にアップグレードした後、ローカル通知を新しい UserNotifications フレームワークに移行しました (iOS 10 のみをサポートするので問題ありません)。 )。
ただし、このアプリでは通知が届きません。バニラアプリの同じコードが機能します。

通知の承認をリクエストしましたが、その部分は正常に機能しています。
UserNotification.framework も追加しようとしましたが、違いはありません。

移行後に通知が表示されない理由は何ですか?

0 投票する
1 に答える
1365 参照

ios - iOS 10 でローカル通知をスケジュールして処理する

私は、ユーザーが希望する時間に複数の通知をスケジュールできるようにするプロジェクトの 1 つに取り組んでいます。

iOS 10 では、DateComponents を通知の開始日として使用できるようになりましたが、複数の通知をどのようにスケジュールして処理するべきかについて、私はちょっと迷っています。

各通知には独自のリクエストが必要であり、次に独自の識別子が必要です。それ以外の場合、複数の通知を作成することはできません。

通知をスケジュールして処理するには、識別子を操作する必要があると考えていましたが、今ではコードが非常に混乱しているため、これを行う簡単な方法がなかったかどうかを真剣に考えていました。

私のデータモデルによると、通知の一意の識別子は次のもので構成されています。

  1. 私のモデルのID
  2. 新しい通知が作成されるたびに増加する番号
  3. 上記はアンダースコアで区切られています

たとえば、ID 3 のオブジェクトに対して 10 件の通知をスケジュールする必要がある場合、次のようになります。3_1, 3_2, 3_3...

通知を受け取るたびに、受け取った通知をループして UI を更新します。また、ユーザーが特定のモデルについて受信した通知を削除したい場合は、同じ ID で始まる識別子をチェックして、受信した通知の一意の識別子をループします。

ドキュメントによると、配信された通知を削除する唯一の方法は識別子を使用することであるため、それ以外の方法でそれを行う方法が実際にはわかりません。UNUserNotificationCenter.current().removeDeliveredNotifications(withIdentifiers:)

問題は、あらゆる種類の問題を引き起こしていることです。簡単に修正できますが、非常にハックに見えます。私は自分がやったことを本当に誇りに思っているわけではなく、それを回避するためのより賢い方法を探しています. それは問題ではないので、意図的にコードを投稿しませんでした。アプローチは本当の問題です。

UserNotificationsフレームワークはかなり新しく、このテーマについて取り上げているリソースを見つけることができなかったため、ここで質問しています。

何か案が ?前もって感謝します。

編集:ここにいくつかのコードがあります。

このcheckDeliveredAndPendingNotificationsメソッドでは、保留中および配信済みのすべての通知をループして、後でまだ存在しない識別子を作成できるようにします。通知ごとに一意の識別子を生成する別の方法は見つかりませんでした。

ほとんどの作業は別の非同期キューで行われるため、ジョブが完了したときに完了ハンドラーも作成しました。次に、通知を作成する必要があるメイン スレッドでメソッドを呼び出しcreateNotificationます (Realm を使用しているため、これも行う必要があるため)。

ここでの問題は、func add(UNNotificationRequest, withCompletionHandler: (Error?) -> Void)? = nil)非同期でも動作するメソッドです。したがって、ループに戻ると、間違ったデータgenerateNotificationsが返されます。checkDeliveredAndPendingNotifications間違いではありませんが、通知がまだ作成されていないだけです...

私はスレッディングの完全な初心者であり、これらの種類の操作に行き詰まっており、どこに行けばよいかわかりません。問題に正しい方法で取り組んでいるかどうかはわかりません。

0 投票する
0 に答える
456 参照

objective-c - XCode 8 でローカル通知が発生し、シミュレータが動作を停止しているときに、「XPC 接続が中断されました」というエラーが生成される

xcode 8 を更新しましたが、ローカル通知を受け取ることができません。

0 投票する
5 に答える
6652 参照

ios - iOS 10、アプリがフォアグラウンドにあるときにローカル通知が表示されますか?

アプリがフォアグラウンドのときに通知を表示したい。以下は、新しい usernotificationdelegate メソッドに対して行ったコードです。

アプリ内デリゲート:

そして、これはローカル通知をトリガーする私の方法です

これを行った後でも、フォアグラウンドで通知を受け取りません。

よろしくお願いします。