我正在尝试实施Github处找到的GCM客户端示例 但我无法在 MyGcmListenerService.java
中接收通知当我浏览在我的android studio 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
问题
答案 0 :(得分:1)
错误“com.me.myapp E / GMPM:getGoogleAppId失败,状态为:10”可能与apk密钥有关,同时,确保插入权限和拼写正确,我只是遇到了这个错误并解决了它通过从console.developers.google.com删除项目后重新创建密钥。
错误“E / dalvikvm:找不到类'android.app.AppOpsManager'可能与目标sdk版本有关,需要为AppOpsManager所需的19(iirc)或更高版本,请确保它是这样的gradle构建文件。
希望它有所帮助。
答案 1 :(得分:0)
声明的错误和问题与接收gcm通知无关。对于我的情况。从gcm连接服务器收到的gcmid未保存在数据存储区中。负责保存它的实体执行得很糟糕,因此我无法从GCM Connection服务器接收消息或通知。
确保从连接服务器收到的gcmId已妥善保存在您的应用服务器中。(我使用objectify实现此目的)
还可以在后端模块中使用Logger
类,以便通过在重要阶段打印日志(消息)来跟踪您的实现。例如,当你收到gcmid(你可以在前端实现这个,因此使用Log.d()
方法),如果gcmid已经保存到你的应用服务器(这里你使用实体来做这个,它在这里你使用{{1} } 因为这发生在后端模块)。
还在坚持?请在下方发表评论以寻求帮助