GCM 3.0 mới sẽ cho phép GCM tự động hiển thị thông báo được gửi từ máy chủ nếu chúng chứa thông số notification
.GCM 3.0 - gcm không tự động hiển thị thông báo với thông số thông báo
Như đã nói trong docs:
Tham số thông báo với các tùy chọn được xác định trước cho thấy rằng GCM sẽ hiển thị thông điệp thay mặt các ứng dụng của khách hàng nếu ứng dụng client thực hiện GCMListenerService trên Android
Tuy nhiên tôi gặp sự cố khi làm việc ngay cả khi GCMListenerService
được triển khai.
AndroidManifest.xml
<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="cz.kubaspatny.pushservertest" />
</intent-filter>
</receiver>
<service
android:name="cz.kubaspatny.pushservertest.gcm.CustomGcmListenerService"
android:exported="false" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>
</service>
CustomGcmListenerService.java
public class CustomGcmListenerService extends GcmListenerService {
@Override
public void onMessageReceived(String from, Bundle extras) {
super.onMessageReceived(from, extras);
Log.d("GcmListenerService", "Received gcm from " + from + " with bundle " + extras.toString());
}
}
Thông báo từ máy chủ được đăng nhập nhưng không được hiển thị bởi GCM.
Received gcm from 333813590000 with bundle Bundle[{notification={"icon":"ic_launcher.png","body":"great match!","title":"Portugal vs. Denmark"}, collapse_key=do_not_collapse}]
Thông điệp được gửi từ máy chủ:
{
"registration_ids":[...],
"data": {
"notification" : {
"body" : "great match!",
"icon" : "ic_launcher.png",
"title" : "Portugal vs. Denmark"
}
}
}
Có điều gì khác cần phải được thực hiện để cho phép hiển thị tự động?
Bạn đang gửi gì trong tải trọng 'thông báo'? – shkschneider
@shkschneider đã chỉnh sửa câu hỏi. Nhưng tôi đang gửi 'title',' body' và 'icon' –
ý bạn là gì bởi" hiển thị tự động "? – injecteer