无法在API级别17获取令牌

时间:2015-08-25 21:49:52

标签: android push-notification google-cloud-messaging

我正在运行这些命令以获取令牌:

  InstanceID instanceID = InstanceID.getInstance(getApplicationContext());
  String token = instanceID.getToken(Config.GOOGLE_PROJECT_ID,
                             GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);

但是得到这个例外:

java.io.IOException: MISSING_INSTANCEID_SERVICE
            at com.google.android.gms.iid.zzc.zza(Unknown Source)
            at com.google.android.gms.iid.zzc.zzb(Unknown Source)
            at com.google.android.gms.iid.zzc.zza(Unknown Source)
            at com.google.android.gms.iid.InstanceID.zzc(Unknown Source)
            at com.google.android.gms.iid.InstanceID.getToken(Unknown Source)
            at autofocus.com.autofocus.activity.ItemListActivity$4.doInBackground(ItemListActivity.java:408)
            at autofocus.com.autofocus.activity.ItemListActivity$4.doInBackground(ItemListActivity.java:398)

知道我做错了吗?

2 个答案:

答案 0 :(得分:10)

根据官方文件:

https://developers.google.com/android/reference/com/google/android/gms/iid/InstanceID#ERROR_MISSING_INSTANCEID_SERVICE

您收到此错误是因为

  

无法生成令牌。仅支持使用Google Play的设备。

在没有启用/安装Google Play服务的模拟器上进行测试?

答案 1 :(得分:0)

如果在gapps di Genymotion-ARM-Translation_v1.1 gapps >之后,可能会起作用