【发布时间】:2018-02-06 14:44:17
【问题描述】:
我无法向我的 Firebase 项目中的主题发送推送通知。如果我运行 php 脚本,我会给我错误 'invalidRegistration'
php 脚本:
<?php
$topic = "/topics/info";
$fcm_server_url = "https://fcm.googleapis.com/fcm/send";
$title = utf8_encode("AleXoTroN");
$content_text = utf8_encode("AleXoTroN");
$color_code = utf8_encode("#2baa7f");
$httpheader = array('Content_Type:application/json', 'Authorization:key=***');
$msg = array('to' => $topic, 'data' => array('title' => $title, 'content_text' => $content_text, 'color' => $color_code));
$curl_connection = curl_init();
curl_setopt($curl_connection, CURLOPT_URL, $fcm_server_url);
curl_setopt($curl_connection, CURLOPT_POST, true);
curl_setopt($curl_connection, CURLOPT_HTTPHEADER, $httpheader);
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $msg);
$answerFromServer = curl_exec($curl_connection);
curl_close($curl_connection);
echo "Server:<br/>".$answerFromServer;
?>
以及我的应用中FCM Instance ID服务的代码;
public class FCM_IIDS extends FirebaseInstanceIdService {
final String token_preference_key = "fcm_token";
final static String infoTopicName = "info";
@Override
public void onTokenRefresh() {
super.onTokenRefresh();
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
sharedPreferences.edit().putString(token_preference_key, FirebaseInstanceId.getInstance().getToken()).apply();
FirebaseMessaging.getInstance().subscribeToTopic(infoTopicName);
}
}
【问题讨论】:
标签: php android http firebase-cloud-messaging