php – 在MySQL数据库中发生更新后立即向android发送通知

在我的 Android应用程序中,新用户最初使用应用程序注册自己,如果用户得到后端管理员的批准,那么只有他能够登录.现在,我想要的是管理员一旦批准用户,通知应该出现在Android手机中,告诉用户现在他可以成功登录,因为他已被批准.我已将我的数据存储在网络服务器的MysqL数据库中.现在我不知道如何实现这一点.任何帮助真的很感激.

解决方法

用户在系统中注册时,您必须存储用户的设备令牌.
管理员从后端激活用户时,您必须通过设备令牌上的FCM服务向用户发送通知.

如果您对FCM一无所知,请访问:https://firebase.google.com/docs/cloud-messaging/concept-options

请在下面找到PHP发送代码的推送通知.

function sendFCmpushnotification($arr) {
    $device_token = $arr['device_token'];
    $message = $arr['message'];

    $url = 'https://fcm.googleapis.com/fcm/send';

    $fields = array (
            'registration_ids' => array (
                    $device_token
            ),'data' => array (
                "message" => $message,"sound"    =>  "default"
            ),'notification' => array(
                'body'  => $message,'title' =>  'ProjectName',)
    );

    $fields = json_encode ( $fields );    
    $headers = array (
            'Authorization: key=' . "PUT_YOUR_FCM_Key",'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,CURLOPT_POSTFIELDS,$fields );

    $result = curl_exec ( $ch );
    var_dump($result);
    curl_close ( $ch );
}
$arr = [
    'device_token'  =>  "PLACE_YOUR_DEVICE_TOKEN",'message'  =>  'PLACE_YOUR_MESSAGE',];
sendFCmpushnotification($arr);

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...