Android 使用PHP时不会显示Firebase通知
回复说通知成功了,但没有显示在我的Android手机上 答复:Android 使用PHP时不会显示Firebase通知,android,firebase,notifications,firebase-cloud-messaging,Android,Firebase,Notifications,Firebase Cloud Messaging,回复说通知成功了,但没有显示在我的Android手机上 答复: {"multicast_id":6696507350475373329,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1486651908616097%298b4204f9fd7ecd"}]} PHP(src:) 通过Firebase控制台发送推送通知时,它被分类为通知消息负载。默认情况下,Android将在您的应用程序处于后台时处理此消
{"multicast_id":6696507350475373329,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1486651908616097%298b4204f9fd7ecd"}]}
PHP(src:)
通过Firebase控制台发送推送通知时,它被分类为通知
消息负载。默认情况下,Android将在您的应用程序处于后台时处理此消息
在PHP代码中,您发送的是一个数据
-唯一的消息负载,可以在Android中通过实现onMessageReceived()
来处理
如果您仍然不希望在MessageReceived()上实现,
,那么您必须修改PHP端代码,以使用仅通知的消息负载
请注意,通知
有效负载仅具有可使用的预定义参数
详情如下:
你好,戴夫。你也可以添加你的Android端代码来接收信息吗?我编辑了我的帖子。
<?php
// API access key from Google API's Console
define( 'API_ACCESS_KEY', ThisIsMyKey);
$registrationIds = array( $_GET['id'] );
// prep the bundle
$msg = array
(
'message' => 'TestNachricht',
'title' => 'TestTitel',
'subtitle' => 'TestSubTitle',
'vibrate' => 1,
'sound' => 1,
'priority' => 10,
'smallIcon' => 'small_icon'
);
$fields = array
(
'registration_ids' => $registrationIds,
'data' => $msg
);
$headers = array
(
'Authorization: key=' . API_ACCESS_KEY,
'Content-Type: application/json'
);
$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 );
echo $result;
private String getRegistrationId() {
return FirebaseInstanceId.getInstance().getToken();
}
<service android:name=".MyFirebaseInstanceIdService" android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
<service android:name=".MyFirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>