gpt4 book ai didi

java - 谷歌云消息/GCM

转载 作者:行者123 更新时间:2023-12-01 12:05:53 25 4
gpt4 key购买 nike

我想将 GCM 添加到我的应用程序中,但 list 存在一些问题。这是我的 list :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.comanderkai77.gssvertretungsplan"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="21" />

<permission
android:name="de.comanderkai77.gssvertretungsplan.permission.C2D_MESSAGE"
android:protectionLevel="signature" />

<uses-permission android:name="de.comanderkai77.gssvertretungsplan.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<service android:name=".GCM" />

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

<category android:name="de.comanderkai77.gssvertretungsplan" />
</intent-filter>
</receiver>

<activity
android:name=".MainActivity"
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=".GCM_Intent" >
</activity>
</application>

</manifest>

Java 代码没问题。当我调用 GCMRegistrar.register(MainActivity.this, GCM.SENDER_ID); 时什么都没发生。 logcat 没有说什么有用的信息。您知道如何解决这个问题吗?

最佳答案

GCMRegistrar似乎已弃用。

您可以尝试GoogleCloudMessaging :但是,此类需要 Google Play 服务版本 3.1 或更高版本。

GoogleCloudMessaging 文档页面中有一个有用的代码块。因此,您将得到一些有用的信息,以了解问题可能是您无法访问 googlecloudmessaging 服务或其他东西,用这些错误控制语句包装您的代码。

// Check device for Play Services APK. If check succeeds, proceed with
// GCM registration.
if (checkPlayServices()) {
gcm = GoogleCloudMessaging.getInstance(this);
regid = getRegistrationId(context);

if (regid.isEmpty()) {
registerInBackground();
}
} else {
Log.i(TAG, "No valid Google Play Services APK found.");
}

顺便你应该检查一下,它与 gcm 的通信是否正确?它是否返回设备的registerId或其代码是否有任何错误。

关于java - 谷歌云消息/GCM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27603754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com