我在iOS上遇到Firebase通知的奇怪问题。它运作得很完美,但唯一的问题是如果我保持身体'服务器上的参数为空,它会在应用程序上播放通知声音,但不会显示任何内容。同样的事情在Android上显示通知。我遇到了某种Apple安全问题吗?如果我只添加一个空的空间" "在'身体'如果没有它,它会出现但没有。如果有任何身体可以建议我什么。 我的服务器端代码
$msg = array
(
'title' => '',
'body' => ' ',
'click_action' => '.InstagramLoader',
'icon' => 'myicon',/*Default Icon*/
'sound' => 'mySound'/*Default sound*/
);
$data = array(
'text' => $title,
'img_url' => $img_url
);
$fields = array
(
'to' => $registrationIds,
'notification' => $msg,
'data' => $data
);
$headers = array
(
'Authorization: key=' . API_ACCESS_KEY,
'Content-Type: application/json'
);
#Send Reponse To FireBase Server
$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, false );
curl_setopt( $ch,CURLOPT_POSTFIELDS, json_encode( $fields ) );
$result = curl_exec($ch );
curl_close( $ch );
答案 0 :(得分:0)
是的,这是iOS的事情,为什么要显示空推送通知?您可以在服务器端代码中使用isNaN()并检查空体并将其设置为默认值。