安卓:谷歌FCM禁用发送通知数小时后



我使用谷歌FCM发送通知

如果用户未连接到互联网并且我发送通知,则在用户连接到互联网后,通知将接收到该用户设备

我只想通知用户,如果同一时刻连接到互联网并且不发送之后

我的代码 :

function sendNotification($to,$title,$text,$data=""){
    $fcmMsg = array('body'=>$title,
                    'title'=>$text,
                    'sound'=>"default",
                    'click_action'=>'YOUR_ACTION',
                    'largeIcon'=>'ic_launcher',
                    'smallIcon'=>'ic_launcher');
    $fcmFields = array('to'=>$to,
                       'data'=>$data,
                       'priority'=>'high',
                       'notification'=>$fcmMsg);
    $headers = array('Authorization: key='.API_ACCESS_KEY,
                     'Content-Type: application/json');
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,'https://fcm.googleapis.com/fcm/send');
    curl_setopt($ch,CURLOPT_POST,true);
    curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
    curl_setopt($ch,CURLOPT_POSTFIELDS,json_encode($fcmFields));
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

默认情况下,FCM 会存储消息,并在设备重新获得连接时尝试重新发送。因此,您应该在有效负载中添加值为 0 time_to_live参数。它将告诉 FCM 服务器应立即发送邮件。如果设备未连接到 FCM 服务器或脱机,FCM 服务器将丢弃该消息,并且不会再发送该消息。

相关内容

  • 没有找到相关文章

最新更新