我们的应用中有一个非常大的问题,它设置为接收GCM推送通知:如果不启动推送通知,应用会收到推送通知 - 这种情况每天都会发生!
我已经实现了一个GCM客户端(显然也是服务器端),与此处的规定完全相同:http://developer.android.com/google/gcm/client.html和http://developer.android.com/google/gcm/client.html#sample-receive
以下是onHandleIntent
中的GCMIntentService
功能:
@Override
protected void onHandleIntent(Intent intent) {
Bundle extras = intent.getExtras();
GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(this);
// The getMessageType() intent parameter must be the intent you received
// in your BroadcastReceiver.
String messageType = gcm.getMessageType(intent);
if (!extras.isEmpty()) { // has effect of unparcelling Bundle
// If it's a regular GCM message (and the user is logged in), do some work.
if (GoogleCloudMessaging.MESSAGE_TYPE_MESSAGE.equals(messageType) && prefsMan.getLoggedIn(this)) {
// Post notification of received message.
sendNotification(extras.getString("message"));
Log.i(TAG, "Received: " + extras.toString());
}
}
// Release the wake lock provided by the WakefulBroadcastReceiver.
GcmBroadcastReceiver.completeWakefulIntent(intent);
}
什么导致推送通知每天都出现,而不是从服务器端启动?
正如旁边的说明,如果我今天已经可以为此设置赏金,我会这样做,所以请 - 任何帮助都会受到赞赏,我最终会把我的一些代表给予任何可以帮助我的人有了这个问题,一旦我被允许这样做(从现在起两天)。