实施 GCM 客户端时出现未知错误和警告

Unknown errors and warnings while implementing GCM client side

我正在尝试实现 Github 中的 GCM 客户端示例 但我无法在我的 MyGcmListenerService.java

中接收通知

当我浏览我的 android 工作室 logcat 生成的日志时,我发现了这个警告和错误消息

警告

10-07 15:22:47.160  29844-29844/com.me.myapp W/asset﹕ AssetManager-->
addDefaultAssets CIP path not exsit!
10-07 15:22:47.352  29844-29844/com.me.myapp W/dalvikvm﹕ VFY: unable to resolve
virtual method 247: Landroid/app/Notification$Builder;.setLocalOnly (Z)
Landroid/app/Notification$Builder;

10-07 15:22:47.352  29844-29844/com.me.myapp W/dalvikvm﹕ VFY: unable to resolve
 instance field 18

10-07 15:22:47.359  29844-29844/com.me.myapp W/dalvikvm﹕ VFY: unable to resolve 
virtual method 1507: Landroid/os/UserManager;.getApplicationRestrictions
 (Ljava/lang/String;)Landroid/os/Bundle;

错误

10-07 15:03:37.070  10177-10177/com.me.myapp E/dalvikvm﹕ Could not find class 
'android.os.UserManager', referenced from method com.google.android.gms.common
.GooglePlayServicesUtil.zzah

10-07 15:03:37.156  10177-10177/com.me.myapp E/dalvikvm﹕ Could not find class 
'android.app.AppOpsManager', referenced from method com.google.android.gms.common.
GooglePlayServicesUtil.zzb

10-07 15:03:38.117  10177-10197/com.me.myapp E/GMPM﹕ getGoogleAppId failed with
 status: 10

10-07 15:03:38.132  10177-10197/com.me.myapp E/GMPM﹕ Uploading is not possible.
 App measurement disabled

10-07 15:07:11.320  10306-10306/com.me.myapp E/SensorManager﹕ thread start

10-07 15:07:17.164  10306-10703/com.me.myapp E/API_TASK﹕ Read timed out

问题

所述的错误和问题与接收 gcm 通知无关。对于我的情况。从 gcm 连接服务器收到的 gcmid 未保存在数据存储中。负责保存它的实体实施不当,因此我无法从 GCM 连接服务器接收消息或通知。

  • 确保从连接服务器收到的 gcmId 已妥善保存在您的应用服务器中。(我使用 objectify 来实现此目的)

  • 还可以在后端模块中使用 Logger class,以便通过在重要阶段打印日志(消息)来跟踪您的实施。例如,当您收到 gcmid 时(您可以在前端实现它,因此使用 Log.d() 方法),如果 gcmid 已保存到您的应用程序服务器(在这里您使用实体来执行此操作,而在这里您使用 Logger class 因为这发生在后端模块)。

还在卡住?在下方评论寻求帮助