繁体   English   中英

通过 Firebase 从 Laravel 服务器向 Android 应用程序发送推送通知

[英]Send Push Notifications from Laravel Server to Android App via Firebase

是否可以通过基于 laravel 的仪表板而不是通过 firebase 控制台向 android 发送推送通知?

如果可能,步骤是什么?

谢谢你。

您可以为其创建助手 function。

尝试这个:-

function notifications($token=null,$title=null,$message=null,$user_id=null)
{
    $path_to_firebase_cm = 'https://fcm.googleapis.com/fcm/send';
    $fields = array(
        'to' => $token,
        'notification' => array('title' => $title, 'body' => $message, 'sound' => 'default', 'click_action' => 'FLUTTER_NOTIFICATION_CLICK', 'icon' => 'fcm_push_icon'),
        'data' => array('title' => $title, 'body' => $message, 'sound' => 'default', 'icon' => 'fcm_push_icon'),
    );
    $headers = array(
        'Authorization:key=' . 'Your-fcm-key',
        'Content-Type:application/json'
    );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $path_to_firebase_cm); 
    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($fields));
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

您可以使用此 function

public function send_fcm_notification($title,$body,$target,$chid){
  define( 'API_ACCESS_KEY', 'ENTER_API_KEY_HERE' );
  $fcmMsg = array(
             'title' => $title,
             'body' => $body,
             'channelId' => $chid
            );
  $fcmFields = array(
                'to' => $target, //tokens sending for notification
                '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, true );
curl_setopt( $ch,CURLOPT_POSTFIELDS, json_encode( $fcmFields ) );
$result = curl_exec($ch );
curl_close( $ch );
//echo $result . "\n\n";
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM