Swift-プッシュ通知バッジ番号を削除しますか?


91

アイコンバッジをすばやく削除しようとしていますが、PFInstallationが機能していないようです。どうすればよいですか?

回答:


240

アプリのバッジアイコンを0に設定すると、「削除」できます。

Swift <3.0

UIApplication.sharedApplication().applicationIconBadgeNumber = 0

Swift 3.0+

UIApplication.shared.applicationIconBadgeNumber = 0

この質問は、いつ使用できるかを示しています。iOSでプッシュ通知バッジの数をクリアするにはどうすればよいですか?


4
それでは、アプリが起動するたびに0にリセットするのが標準的な方法ですか?
Qian Chen

4
@ElgsQianChenは、アプリが何をするのか、視聴者にとって何が最善かによって異なります。その質問は、おそらくUXSOでより適切に提供されます。
Oxcug 2016年

1
第二に。おそらく、あなたは必ず、ユーザが実際に(例えば、通知の原因に対処したいやった、それをクリアする前に未読メッセージを読みます)。異なるアプリはこれを異なる方法で処理します。起動時に明確になるものもあれば、アプリ内のユーザーアクションが明確になるものもあります。
ニコラスミアリ2016

4
UIApplication.shared.applicationIconBadgeNumber = 0Swift 3を使用
user3766930 2016

つまり、これは理にかなっていると思います。ユーザーがアプリからログアウトしたとき。
wrtsprt 2018

18

Swift 4.2

AppDelegateで、次のコードを入力するだけです。

    func applicationDidBecomeActive(_ application: UIApplication) {
        application.applicationIconBadgeNumber = 0
    }


1

スウィフト5

これをAppDelegatedidFinishLaunchingWithOptionsに入れることはできますが、アプリが非アクティブでアクティブに移動した場合、バッジはクリアされません。

以前の状態に関係なくバッジをクリアしたい場合は、これをAppDelegateではなくSceneDelegateに配置する必要があります。

func sceneDidBecomeActive(_ scene: UIScene) {
    UIApplication.shared.applicationIconBadgeNumber = 0
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.