使用gcm获取android设备令牌的问题

时间:2014-04-18 08:00:10

标签: google-cloud-messaging devicetoken

我无法获取设备令牌而我正在使用GCMRegistrar 我正在给我的代码。我有什么不对,我无法理解。

我的清单文件包含

<receiver
        android:name="com.google.android.gcm.GCMBroadcastReceiver"
        android:permission="com.google.android.c2dm.permission.SEND" >
        <intent-filter>

            <!-- Receives the actual messages. -->
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <!-- Receives the registration id. -->
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <category android:name="com.example.apnsautodial" />
        </intent-filter>
    </receiver>
     <service android:name=".GCMIntentService" />

我的活动包括

GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);       
regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
    GCMRegistrar.register(this, SENDER_ID);
}

请帮帮我

先谢谢

2 个答案:

答案 0 :(得分:1)

您的&#34; myActivity&#34;。但是为了获得注册ID,您需要添加在您的应用中连接互联网的权限,以便您的应用可以发出请求并从GCM服务器获取ID

在您的清单文件中添加以下行。希望它能解决您的问题。

<uses-permission android:name="android.permission.INTERNET" />

请访问此链接:http://developer.android.com/google/gcm/client.html以获得清晰的想法。

答案 1 :(得分:0)

这是您可以使用Google Cloud Messaging Api的最佳示例,因为旧的GCM库方法现已弃用,
Google Cloud Messaging

你可以参考这个, http://developer.android.com/google/gcm/client.html