Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓、谷歌云消息——推送进入手机,但不会在设备上创建推送通知_Android_Google Cloud Messaging - Fatal编程技术网

Android 安卓、谷歌云消息——推送进入手机,但不会在设备上创建推送通知

Android 安卓、谷歌云消息——推送进入手机,但不会在设备上创建推送通知,android,google-cloud-messaging,Android,Google Cloud Messaging,我一直在尝试让谷歌云消息来创建推送通知。我可以注册设备,将注册id存储在服务器上,然后将推送消息发送回设备 我能够做到所有这些,catLog显示推送消息到达了设备。但是在设备上,推送通知消息没有出现 这可能是什么原因 以防万一,以下是我注册设备的方式: GCMRegistrar.checkDevice(this); GCMRegistrar.checkManifest(this); final String regId = GCMRegistr

我一直在尝试让谷歌云消息来创建推送通知。我可以注册设备,将注册id存储在服务器上,然后将推送消息发送回设备

我能够做到所有这些,catLog显示推送消息到达了设备。但是在设备上,推送通知消息没有出现

这可能是什么原因

以防万一,以下是我注册设备的方式:

        GCMRegistrar.checkDevice(this); 
        GCMRegistrar.checkManifest(this);

        final String regId = GCMRegistrar.getRegistrationId(this);
        if (regId.equals("")) 
        {
            // Automatically registers application on startup. 
            GCMRegistrar.register(getApplicationContext(), SENDER_ID); 
        } 
        else 
        {        
            // Device is already registered on GCM, check server. 
            if (GCMRegistrar.isRegisteredOnServer(getApplicationContext())) 
            { 
                // Not sure what to do here :)
            } 
            else 
            {
                if ( user_id != null )
                {
                    GCMRegistrar.register(this, SENDER_ID); // google register         
                    setRegistrationId ( user_id , regId ); // saves id on server
                }
            }
        }
结束于onPostExecute I do gcmregistar.setRegisteredOnServer(getApplicationContext(),true)

这是我的gcminentservice中的onMessage()方法

  @Override
  protected void onMessage(Context ctxt, Intent message) {
    Bundle extras=message.getExtras();

    for (String key : extras.keySet()) {
      Log.d(getClass().getSimpleName(),
            String.format("onMessage: %s=%s", key,
                          extras.getString(key)));
    }
  }
这可能就是问题所在吗?实际上应该是怎样的呢

谢谢大家!

这可能是什么原因

以下是一些可能性:

  • 您的应用程序中没有
    gcminentservice
    子类

  • 是的,但它没有在舱单中注册

  • 确实如此,但您没有覆盖
    onMessage()

  • 确实如此,但您的
    onMessage()
    没有正确记录事件,或者没有让您知道事件发生了


  • 我刚刚在原来的问题中添加了onMessage()。是正确的吗?嗯…还有什么其他的想法吗?我被困在这上面已经一天多了:)