为什么我的FCM通知会静默发送并且不会弹出?

时间:2018-12-28 09:11:53

标签: php firebase

我正在尝试使用PHP和FCM向我的Android统一游戏发送推送通知。 通知已传递到设备,但无提示,不会弹出。 我需要知道为什么吗? 我错过了什么吗?

我尝试用Data替换Notification键,但是它们什么都行不通。

  function send_notification ($tokens, $message,$title){
    $url = 'https://fcm.googleapis.com/fcm/send';
    $notification= array('title' => $title,'body' => $message);
    $fields = array(
            'registration_ids' => $tokens,
            'notification' => $notification,
            'priority' => 1
        );

    $headers = array(
        'Authorization:key =xxxxxxxxxxxx',
        'Content-Type: application/json'
        );
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_POST, true);
   curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);  
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
   curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
   $result = curl_exec($ch);           
   if ($result === FALSE) {
       die('Curl failed: ' . curl_error($ch));
   }
   curl_close($ch);
   return $result;
}

我希望弹出我的通知。 当前它只是进入通知托盘

1 个答案:

答案 0 :(得分:0)

我尝试了您的代码,它可以按预期工作。我只有在屏幕锁定时才能看到弹出窗口。

这是FCM推送https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages#AndroidNotification

的特定于Android的功能的完整列表

看看这个答案FCM for android: popup system notification when app is in background

也许您应该直接在Unity应用程序中包含此功能:https://firebase.google.com/docs/reference/unity/namespace/firebase/messaging