gpt4 book ai didi

php - 如果包含通知负载,GCM ios 将无法正常工作

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:14:13 25 4
gpt4 key购买 nike

这是用于从 php 脚本向我的 ios 应用程序发送消息的代码:

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

$fields = array(
'registration_ids' => $devices,
'data' => array("message"=>"hi")
);
$headers = array(
'Authorization: key=' . $apiKey,
'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_VERIFYPEER, false );
curl_setopt( $ch,CURLOPT_POSTFIELDS, json_encode( $fields ) );
$result = curl_exec($ch );
curl_close( $ch );

此代码可以正常运行,但我希望能够发送推送通知而不仅仅是消息。但是,当我按照 Google 云消息传递文档中的描述包含通知负载时,方法 application:didReceiveRemoteNotification:fetchCompletionHandler: 不会被调用。

$fields = array(
'registration_ids' => $devices,
'content_available' => true ,
'notification' => array("title" => "title", "body"=>"body"),
'data' => array("message"=>"hi")
);

我有一个 apns 开发证书,我已经在委托(delegate)中注册了我的应用程序以获取通知。我也成功地从谷歌获得了一个设备 token 。非常感谢您的帮助。谢谢!

最佳答案

您是否在 Apple Watch 上进行测试。根据此处 https://developers.google.com/cloud-messaging/server-refnotification 中的 title 键仅在 Watch 中使用.

你应该尝试在你的 notification 字典中只使用一个 body 键,然后看看它是否有效。

关于php - 如果包含通知负载,GCM ios 将无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32104654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com