Android GCMRegistar检查清单使我的应用程序崩溃

Android GCMRegistar检查清单使我的应用程序崩溃,android,push-notification,google-cloud-messaging,Android,Push Notification,Google Cloud Messaging,我对GCMRegistar有问题,代码如下: // Make sure the device has the proper dependencies. GCMRegistrar.checkDevice(this); GCMRegistrar.checkManifest(this); <- this line is the problem (I suppose) regId = GCMRegistrar.getRegistrationId(this); //确保设备具有正确的依赖项。 GC

我对GCMRegistar有问题,代码如下:

// Make sure the device has the proper dependencies.
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this); <- this line is the problem (I suppose)
regId = GCMRegistrar.getRegistrationId(this);
//确保设备具有正确的依赖项。
GCMRegistar.检查装置(本);

GCMRegistar.检查清单(本)
checkManifest
检查您的清单是否包含GCM工作所需的定义。 当缺少某些内容时,它会抛出非法状态异常

在您的情况下,您缺少可以从GCM接收消息的广播接收器

gcmregistar.getRegistrationId(this)
(返回本地存储的注册ID)仅当您首先调用
gcmregistar.register
时才会返回非空值。请注意,
gcmregistar.register
是非阻塞的,因此响应不会立即到达


最后,正如Commonware建议的那样,
gcmregistar
已被弃用,建议您改用
GoogleClassMessaging
类。

checkManifest
检查您的清单是否包含GCM工作所需的定义。 当缺少某些内容时,它会抛出非法状态异常

在您的情况下,您缺少可以从GCM接收消息的广播接收器

gcmregistar.getRegistrationId(this)
(返回本地存储的注册ID)仅当您首先调用
gcmregistar.register
时才会返回非空值。请注意,
gcmregistar.register
是非阻塞的,因此响应不会立即到达


最后,正如Commonware建议的那样,
gcmregistar
已被弃用,建议您改用
GoogleClassMessaging
类。

使用LogCat检查与崩溃相关的Java堆栈跟踪。还要注意的是,
gcmregistar
已被正式弃用——Google请求您开始使用
GoogleCloudMessaging
:使用LogCat检查与崩溃相关的Java堆栈跟踪。还请注意,
gcmregistar
已被正式弃用——Google请求您开始使用
GoogleCloudMessaging
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.chattest1"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="8" />

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

<permission
    android:name="com.example.chattest1.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.example.chattest1.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.chattest1.RegisAct"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.example.chattest1.Main"
        android:label="@string/title_activity_regis" >
    </activity>
</application>

</manifest>