【问题标题】:Unknown errors and warnings while implementing GCM client side实施 GCM 客户端时出现未知错误和警告
【发布时间】:2015-10-07 12:35:19
【问题描述】:

我正在尝试实现在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

问题

  • 如何解决部分或全部或部分错误和警告?
  • 这与我未能从 GCM 服务器接收通知有关吗?

【问题讨论】:

  • 您是否在应用程序中包含了 GooglePlayService?
  • @vishalk 是的!我有。完全如 gitlab 示例所示
  • 嘿,你解决了吗?我需要一个解决方案。
  • @KevinKaburu 您的 logcat 中是否出现相同的错误?
  • 这得到了什么:: 11-18 21:27:55.205 14469-14469/? E/dalvikvm:找不到类 'android.app.AppOpsManager',引用自方法 com.google.android.gms.common.GooglePlayServicesUtil.zzb

标签: android google-cloud-messaging google-play-services logcat


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-10
    • 1970-01-01
    • 2021-01-03
    • 2018-10-20
    • 1970-01-01
    相关资源
    最近更新 更多