在PHP中使用Parse将相同的通知推送到多个Android设备
我想使用PHP中的Parse向多个Android设备发送通知。为此,我遵循了上面给出的方法,但这只为一个设备提供了解决方案。因此,我创建了一个包含该方法的循环,并在包含在PHP中使用Parse将相同的通知推送到多个Android设备,php,android,parse-platform,Php,Android,Parse Platform,我想使用PHP中的Parse向多个Android设备发送通知。为此,我遵循了上面给出的方法,但这只为一个设备提供了解决方案。因此,我创建了一个包含该方法的循环,并在包含objectid的数组中迭代。然而,它也不起作用。我也查看了这个网站,但没有找到想要的解决方案。请帮忙 这是代码 for($i=0;$i<count($devicesArray);$i++) { $target_device = $devicesArray[$i]; // using objec
objectid
的数组中迭代。然而,它也不起作用。我也查看了这个网站,但没有找到想要的解决方案。请帮忙
这是代码
for($i=0;$i<count($devicesArray);$i++)
{
$target_device = $devicesArray[$i]; // using object Id of target Installation.
$push_payload = json_encode(array(
"where" => array(
"objectId" => $target_device,
),
"data" => array(
"alert" => "New message received in ".$groupName." ."
)
));
$rest = curl_init();
curl_setopt($rest,CURLOPT_URL,$url);
curl_setopt($rest,CURLOPT_PORT,443);
curl_setopt($rest,CURLOPT_POST,1);
curl_setopt($rest,CURLOPT_POSTFIELDS,$push_payload);
curl_setopt($rest,CURLOPT_HTTPHEADER,
array("X-Parse-Application-Id: " . $appId,
"X-Parse-REST-API-Key: " . $restKey,
"Content-Type: application/json"));
$response = curl_exec($rest);
}
$i=0;$i数组的(
“objectId”=>$target\u设备,
),
“数据”=>数组(
“警报”=>“在“$groupName”中收到新消息。”
)
));
$rest=curl_init();
curl_setopt($rest,CURLOPT_URL,$URL);
curl_setopt($rest,CURLOPT_端口,443);
卷曲设置($rest,卷曲设置,1);
curl_setopt($rest、CURLOPT_POSTFIELDS、$push_有效载荷);
curl_setopt($rest,CURLOPT_HTTPHEADER,
数组(“X-Parse-Application-Id:”.$appId,
“X-Parse-REST-API-Key:”.$restKey,
“内容类型:应用程序/json”);
$response=curl_exec($rest);
}
$devicesArray
包含对象ID,而循环的中的代码在上述链接中给出。问题是通知只发送到一个设备,但我希望它发送到所有设备。下面是Parse dashboard的快照
这里的“1”和“0”是发送的推送次数。我想你可以试试下面的方法。我对parse.com没有太多的经验,所以可能$in
只是in
或者你根本不需要它,也许你可以试试:
$push_payload = json_encode(array(
"where" => array(
"deviceToken" => array( '$in' => array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
),
"data" => array(
"alert" => "New message received in ".$groupName." ."
)
));
而不是数组('$in'=>数组(“deviceToken_1”、“deviceToken_2”、“deviceToken_3”)
您可以试试这个:
array( 'in' => array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( "deviceToken_1", "deviceToken_2", "deviceToken_3" )
或是:
array( 'in' => array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( "deviceToken_1", "deviceToken_2", "deviceToken_3" )
或只是:
array( 'in' => array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( array( "deviceToken_1", "deviceToken_2", "deviceToken_3" ) )
array( "deviceToken_1", "deviceToken_2", "deviceToken_3" )
请发布您的代码,并向我们指出issue@swidmann我已经添加了我的代码。请现在检查。你的设备有设备令牌吗?@swidmann,是的,我有设备令牌令牌。不过,设备令牌不存储在数据库中,但对象id是。这就是为什么我需要一个解决方案,允许我只使用对象ID发送通知。很抱歉,我刚刚回答了这个问题,因为您的评论:“是的,我有设备令牌”。也许你可以和频道合作?