【问题标题】:laravel fcm push notification with brozot/Laravel-FCM not working on ios but working fine with android带有 brozot/Laravel-FCM 的 laravel fcm 推送通知无法在 ios 上运行,但在 android 上运行良好
【发布时间】:2017-07-06 15:57:38
【问题描述】:

即使是 ios 也可以从 fcm 控制台获得通知。

控制器功能

public function push(Request $request)
{
    $validator = Validator::make($request->all(), [
        'title' = > 'required',
            'body' = > 'required',
            'token' = > 'required',
            'type' = > 'required',
            'id' = > 'required',

    ]);

    if ($validator->fails()) {
        $this->throwValidationException(
            $request, $validator
        );
    }

    $title = $request['title'];
    $body = $request['body'];
    $type = $request['type'];
    $id = $request['id'];
    $dataarray = array(
        "id" = >$id,
        "type" = >$type,
        'title' = >$title,
        'body' = >$body,
        'image' = >'321451_v2.jpg',
    );

    $token = $request['token'];

    return $push = Push::sendpush($title, $body, $dataarray, $token);

}

push model function :
public static function sendpush($title, $body, $dataarray, $token)
{


    $optionBuiler = new OptionsBuilder();
    $optionBuiler->setTimeToLive(60 * 20);

    $notificationBuilder = new PayloadNotificationBuilder($title);
    $notificationBuilder->setBody($body)
        ->setSound('');

    $dataBuilder = new PayloadDataBuilder();
    $dataBuilder->addData($dataarray);

    $option = $optionBuiler->build();
    $notification = $notificationBuilder->build();
    $data = $dataBuilder->build();

    $token = $token;

    $downstreamResponse = FCM::sendTo($token, $option, $notification, $data);

    return new JsonResponse(array('status' = >'1', 'sucess' = >$downstreamResponse->numberSuccess(), 'fail' = > $downstreamResponse->numberFailure(), 'msg' = >$downstreamResponse->tokensWithError()), 200);

}

Response:
{
    "status": "1",
    "sucess" : 0,
    "fail" : 1,
    "msg" : []
}

【问题讨论】:

    标签: ios firebase laravel-5.2 firebase-authentication firebase-cloud-messaging


    【解决方案1】:

    如果您尝试使用 ios 模拟器,它将无法正常工作。您需要使用一些工具,例如 testflight 或真实设备进行测试。

    我们可以在模拟器中查看推送通知吗?

    【讨论】:

      【解决方案2】:

      您必须为 Ios 设置证书,点击此链接查看更多详细信息 Configuring APNs with FCM

      或查看Set up a Firebase Cloud Messaging client app on iOS

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-19
        • 1970-01-01
        • 2015-06-22
        • 1970-01-01
        • 1970-01-01
        • 2016-11-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多