NIFCLOUD-mbaas / UserCommunity

ニフクラ mobile backend ユーザーコミュニティ
https://mbaas.nifcloud.com/
82 stars 18 forks source link

React NativeからのiOS バッジのリセット #1289

Closed umi9908 closed 2 years ago

umi9908 commented 2 years ago

React Nativeでデータをニフクラのinstallationに保存して使用しています。

プッシュ通知を登録したときにbadgeをインクリメントするでインクリメントしています。 しかし、installation内のbadgeを0にしてもiOSの右上の数字が0になりません。 どうすればいいかご教授ください。 困っています。よろしくお願いいたします。

goofmint commented 2 years ago

React Native SDK自体ではプッシュ通知に関するネイティブ機能は実装していません。

https://stackoverflow.com/questions/48961544/how-to-reset-application-badge-number-in-react-native-push-notification にあるコードでリセットできるでしょうか?

PushNotificationIOS.getApplicationIconBadgeNumber((num)=>{ // get current number
  if(num >= 1){
    PushNotificationIOS.setApplicationIconBadgeNumber(0) //set number to 0
  }
});
umi9908 commented 2 years ago

React Native + Expoで実装しております。 ニフクラのinstallationのbadgeを削除してもbadgeが消えないので困っております。

情報ありがとうございます。本当に助かります。 一度これを試してみます。

https://stackoverflow.com/questions/48961544/how-to-reset-application-badge-number-in-react-native-push-notification にあるコードでリセットできるでしょうか?

umi9908 commented 2 years ago

解決いたしました。 ありがとうございます。

アプリ側にバッジを0にする設定が必要なようでした。 React native+Expoという環境もありこちらで解決しました。

import * as Notifications from "expo-notifications";
import { Platform } from "react-native";
if (Platform.OS === "ios") {
  Notifications.setBadgeCountAsync(0);
}