Android GCM通知结果=[错误=未注册]
我正在使用Node GCM 这些通知在我的客户的某些设备上运行良好。有些手机在一段时间后没有收到通知时会出现此问题 检查日志后,我在一些调用中看到以下错误Android GCM通知结果=[错误=未注册],android,node.js,google-cloud-messaging,Android,Node.js,Google Cloud Messaging,我正在使用Node GCM 这些通知在我的客户的某些设备上运行良好。有些手机在一段时间后没有收到通知时会出现此问题 检查日志后,我在一些调用中看到以下错误 {"multicast_id":7040074623564131000,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"NotRegistered"}] 对于此响应或之前的任何响应,我没有得到1或以上的规范_id 我遵循了中提到的步骤,在响应中没有得到任何规范ID
{"multicast_id":7040074623564131000,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"NotRegistered"}]
对于此响应或之前的任何响应,我没有得到1或以上的规范_id
我遵循了中提到的步骤,在响应中没有得到任何规范ID
在某些手机中,GCM工作正常,因此我不确定如何从这里开始以及在何处进行调试。NotRegistered-是一条消息,表示没有任何GCM设备使用已传递的id注册。只需检查id即可 您必须仅在GCM和应用程序中注册的设备上发送推送通知(通过开发者控制台)
您可以使用不同的Rest客户机(如postman)进行测试。只需使用json在特殊url上发送您的数据。NotRegistered-是一条消息,表示没有任何GCM设备使用传递的id注册。只需检查id即可 您必须仅在GCM和应用程序中注册的设备上发送推送通知(通过开发者控制台)
您可以使用不同的Rest客户机(如postman)进行测试。只需使用json在特殊url上发送数据。如果您的设备令牌未正确注册,则通常会发生这种情况,这可能是由于存储长度。因此,请始终使用文本而不是varchar,如果使用varchar,则给出大于200的大小。。
感谢如果您的设备令牌未正确注册,则通常会发生这种情况,这可能是由于存储长度的原因。因此,请始终使用文本而不是varchar,如果使用varchar,则给出大于200的大小。。
谢谢我花了几天时间试图找出解决类似问题的方法,当我尝试一些我认为很愚蠢的方法时,它奏效了。在Android中,当生成令牌时,我将作用域从“GCM”更改为“”,之后我再也没有收到NotRegister 更改:
String token = instanceID.getToken(getString(R.string.gcm_defaultSenderId),
GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);
致:
我不知道为什么,但它对我有效。我花了几天时间试图找出如何解决类似问题,当我尝试一些我认为愚蠢的事情时,它起了作用。在Android中,当生成令牌时,我将作用域从“GCM”更改为“”,之后我再也没有收到NotRegister 更改:
String token = instanceID.getToken(getString(R.string.gcm_defaultSenderId),
GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);
致:
我不知道为什么,但它对我有效。我注意到它在应用程序安装的开始阶段(这是我们从GCM获得新令牌的时候)起作用,并且在某些设备的某个点后停止工作。你确定,这些设备以后不会获得新令牌吗?不幸的是,没有。我没有获得1或以上的规范ID。甚至像我的导师所说的那样遵循中提到的步骤:“尝试一步一步地调试”。。。这只是,在这种情况下我能给你的建议。我注意到它在安装应用程序的开始阶段(这是我们从GCM获得新令牌的时候)工作,在某些设备中的某个点之后停止工作。你确定,这些设备以后不会获得新令牌吗?不幸的是,没有。我没有获得1或以上的规范\u ID。甚至像我的导师所说的那样遵循中提到的步骤:“尝试一步一步地调试”。。。这只是,在这种情况下我能给你的建议。检查这个关于你的错误,它可能提供一些见解。检查这个关于你的错误,它可能提供一些见解。