Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使Firebase推送通知在颤振中接收通知时增加徽章计数? 首先,这是一个自我回答的问题。 其次,我将尝试详细描述我针对这种情况实施的解决方案 出现的问题是:无法动态增加徽章属性 资料来源: 那么我如何让这个徽章属性自动递增呢。? 我回答的答案如下,第一个答案 此外,当您在多个移动设备上执行此操作时,您需要的是:_Firebase_Flutter_Notifications_Badge - Fatal编程技术网

如何使Firebase推送通知在颤振中接收通知时增加徽章计数? 首先,这是一个自我回答的问题。 其次,我将尝试详细描述我针对这种情况实施的解决方案 出现的问题是:无法动态增加徽章属性 资料来源: 那么我如何让这个徽章属性自动递增呢。? 我回答的答案如下,第一个答案 此外,当您在多个移动设备上执行此操作时,您需要的是:

如何使Firebase推送通知在颤振中接收通知时增加徽章计数? 首先,这是一个自我回答的问题。 其次,我将尝试详细描述我针对这种情况实施的解决方案 出现的问题是:无法动态增加徽章属性 资料来源: 那么我如何让这个徽章属性自动递增呢。? 我回答的答案如下,第一个答案 此外,当您在多个移动设备上执行此操作时,您需要的是:,firebase,flutter,notifications,badge,Firebase,Flutter,Notifications,Badge,重要 按照下面答案中的步骤进行操作 B1。在每个设备令牌中包含徽章编号。 B2。在应用程序初始化并生成fcm令牌时更改此设置 FirebaseFirestore.instance.collection('fcm-token').doc(device_name).set({'device1_pt1': token_id,'number': 0}); B3。然后把它放在消息is call上。(onlauch,onresume,onmessage) B1。创建新的集合,如 B2。在API中

重要

  • 按照下面答案中的步骤进行操作

B1。在每个设备令牌中包含徽章编号。

B2。在应用程序初始化并生成fcm令牌时更改此设置

FirebaseFirestore.instance.collection('fcm-token').doc(device_name).set({'device1_pt1': token_id,'number': 0});
B3。然后把它放在消息is call上。(onlauch,onresume,onmessage)


B1。创建新的集合,如 B2。在API中(处理数据):

收到的数据:数据={'token-device':字符串,'body':'String'}

#从firebase读取徽章编号(在B1处创建):

保存到firestore之前的数据:数据={'token-device':字符串,'body':'String','badge':'1'}

在Firebase函数中(文件index.js)

B4:在颤振中: 重置徽章编号=0

    _configureFirebaseListeners() {
      _firebaseMessaging.requestNotificationPermissions(
      const IosNotificationSettings(sound: true, badge: true, alert: true),
    );
    _firebaseMessaging.configure(
      
      onMessage: (Map<String, dynamic> message) async {
        print('onMessage: $message');
         _setMessage(message);
      },
      onLaunch: (Map<String, dynamic> message) async {
        print('onLaunch: $message');
         _setMessage(message);

      },
      onResume: (Map<String, dynamic> message) async {
        print('onResume: $message');
         _setMessage(message);
      },
    );
 

 }
    _setMessage(Map<String, dynamic> message)  {
      FirebaseFirestore.instance.collection('badge').doc('count').set({'number': 0});
\u配置FireBaseListeners(){
_firebaseMessaging.requestNotificationPermissions(
const IONotificationSettings(声音:真、徽章:真、警报:真),
);
_firebaseMessaging.configure(
onMessage:(映射消息)异步{
打印('onMessage:$message');
_设置消息(消息);
},
onLaunch:(映射消息)异步{
打印('onLaunch:$message');
_设置消息(消息);
},
onResume:(映射消息)异步{
打印('onResume:$message');
_设置消息(消息);
},
);
}
_设置消息(映射消息){
FirebaseFirestore.instance.collection('badge').doc('count').set({'number':0});

演示:

如果您想在多台设备上使用此功能,则必须在fcm-token_设备中包含数字徽章。在每台设备上使用此功能。Hey Jayce。感谢您分享此常见问题的解决方案。@FrankvanPuffelen好的
badge = db.collection('badge').document('count').get()._data 
badge = badge['number'] badge += 1 #increate when receive new data. 
badgedx = db.collection('badge').document('count').update({'number' : badge})
Data['badge'] = str(badge) # must be string 
#Save to firestore
addx = todo_ref.document() 
addx.set(Data) #save to firestore 
> Add badge number 

 var badgecount = newData['badge'];
    var options = {
        priority: "high",
        timeToLive: 60 * 60 * 24
      };
    var payload = {
        notification: {
            title: 'title',
            body: 'Phiếu khảo sát khách hàng',
            sound: 'default',
            alert: 'alert',
            badge: badgecount,
        },
        data: {
            click_action: 'FLUTTER_NOTIFICATION_CLICK',
            key1: newData['content'],
        },
    };` 
    _configureFirebaseListeners() {
      _firebaseMessaging.requestNotificationPermissions(
      const IosNotificationSettings(sound: true, badge: true, alert: true),
    );
    _firebaseMessaging.configure(
      
      onMessage: (Map<String, dynamic> message) async {
        print('onMessage: $message');
         _setMessage(message);
      },
      onLaunch: (Map<String, dynamic> message) async {
        print('onLaunch: $message');
         _setMessage(message);

      },
      onResume: (Map<String, dynamic> message) async {
        print('onResume: $message');
         _setMessage(message);
      },
    );
 

 }
    _setMessage(Map<String, dynamic> message)  {
      FirebaseFirestore.instance.collection('badge').doc('count').set({'number': 0});