我知道之前已经提出过这个问题,但我已经尝试了所有的事情,包括parse.com上提供的教程。
所以我尝试使用解析Web控制台发送通知。 但我无法这样做,在Web控制台中它显示已将通知发送到0设备。
所以这是代码片段: 在我的主要活动中
Parse.initialize(this, "ABC", "XYZ");
PushService.setDefaultPushCallback(this, TodoListActivity.class);
ParseInstallation.getCurrentInstallation().saveInBackground();
在我的AndroidManifest.xml
中权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<permission
android:name="com.parse.offlinetodos.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.parse.offlinetodos.permission.C2D_MESSAGE" />
服务和接收部分:
<service android:name="com.parse.PushService" />
<receiver android:name="com.parse.ParseBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
<receiver
android:name="com.parse.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" />
<!-- IMPORTANT: Change "com.parse.starter" to match your app's package name. -->
<category android:name="com.parse.offlinetodos" />
</intent-filter>
</receiver>
从控制台,我只是尝试发送纯文本推送通知。
请帮帮我,我错过了什么?
答案 0 :(得分:1)
你需要把这个
Parse.initialize(this, "ABC", "XYZ");
PushService.setDefaultPushCallback(this, TodoListActivity.class);
ParseInstallation.getCurrentInstallation().saveInBackground();
到另一个扩展Application类
的File然后你就明白了
<application
android:name="com.package.ApplicationFileThatContainsTheParseKey">
...
</application>