gcl*_*cl1 4 notifications android google-cloud-messaging
我在Android上遇到GCM问题.它无法onRegistered()在我的一个测试设备(Droid2)上执行回调或返回一个好的regId - 但它在另一个设备(Galaxy Nexus)上运行得非常好.
我在这里遵循基本的例子.调用者看起来像这样:
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals(""))
GCMRegistrar.register(this, Constants.SENDER_ID);
else
Log.v(TAG, "Already registered");
Run Code Online (Sandbox Code Playgroud)
我的清单有这样的:
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
Run Code Online (Sandbox Code Playgroud)
和
<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="com.gcl.myapp" />
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)
为什么onRegistered()回调不起作用?什么可能导致它在一个设备上工作,但在另一个设备上失败?谢谢.
如果它适用于某些设备但不适用于其他设备,则可以使用以下某项设备:
GCMRegistrar.unregister(this);.希望有所帮助!
| 归档时间: |
|
| 查看次数: |
3752 次 |
| 最近记录: |