通知バッジの設定(iOSのみ)¶
RichFlyerではプッシュ通知を受信直後は、通知センターに残っている未読の件数がバッチに表示されます。
アプリを起動後は、以下の方法で端末のホーム画面のアプリアイコンに表示するバッジの数字を設定できます。
この実装は、iOSアプリにのみ有効です。
バッジの表示¶
// Class RichFlyer.RFPluginScript
static void SetBadgeNumber(int number)
パラメータ | 内容 |
---|---|
badge | バッジに表示する数値 |
バッジの非表示¶
// Class RichFlyer.RFPluginScript
static void ResetBadgeNumber()
実装例¶
実装例
using UnityEngine;
using RichFlyer;
public class RFBehaviourScript : MonoBehaviour
{
void Start()
{
// バッジの数字を5に設定
RFPluginScript.SetBadgeNumber(5);
// バッジを非表示にする
//RFPluginScript.ResetBadgeNumber();
}
// Update is called once per frame
void Update()
{
}
}
プッシュ通知受信直後のバッジの値を変更したい場合¶
プッシュ通知受信直後に通知センターの未読件数ではなく、任意の値を表示したい場合は、プラグインに含まれる NotificationService.m ファイルを以下のように実装することで実現可能です。
ファイルの場所: Assets / Plugins / iOS / RichFlyer / RFExtension
実装例
NotificationService.m¶
- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler {
self.contentHandler = contentHandler;
self.bestAttemptContent = [request.content mutableCopy];
NSDictionary* infoPlist = [[NSBundle mainBundle] infoDictionary];
NSDictionary* rfItem = infoPlist[@"RichFlyer"];
if (rfItem) {
NSString* groupId = rfItem[@"groupId"];
[RFNotificationService configureRFNotification:self.bestAttemptContent
appGroupId:groupId
displayNavigate:NO
completeHandler:^(UNMutableNotificationContent *content){
self.bestAttemptContent = content;
// バッジの値を1にする
self.bestAttemptContent.badge = [NSNumber numberWithInt:1];
self.contentHandler(self.bestAttemptContent);
}];
} else {
self.contentHandler(self.bestAttemptContent);
}
}