我正在制作一个应用程序,该应用程序将使用Parse.com推送通知,但它不像指南所示的那样工作。在Android上解析推送通知
问题是,我已经设置好Parse推送活动,注册了新安装,并且能够查看用户订阅了哪些渠道。我能够接收来自解析的推送通知,但无法从我的应用程序发送。
在logcat中没有错误,并解析记录发送了一个推送,但显示通道中没有“无订户”。
在我的onCreate:
Parse.initialize(MainActivity.this, "***", "***");
PushService.setDefaultPushCallback(this, MainActivity.class);
PushService.subscribe(this, "Everyone", MainActivity.class);
ParseInstallation.getCurrentInstallation().saveInBackground();
的推送代码:
ParsePush push = new ParsePush();
push.setChannel("Everyone");
push.setMessage("Hey!");
push.sendInBackground();
清单:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application>
....
<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>
</application>
有在logcat中没有错误,似乎一切顺利送出,但在解析我收到以下消息:
我推
You sent this push notification to 0 recipients.
Targeting : channels includes "Everyone"
Sending date : November 28th, 2013 at 9:40 AM
Expiration : None
Full target : { "channels": { "$in": [ "Everyone" ] } }
Full data : {"alert"=>"Hey!"}
唯一的变化,我可以从我送VS那parse.com发送推则推看到的是“全数据”字段
解析推
Targeting : channels includes "Everyone"
deviceType is "android"
Sending date : November 28th, 2013 at 9:21 AM
Expiration : None
Full target : { "channels": { "$in": [ "Everyone" ] }, "deviceType": "android" }
**Full data : { "alert": "hi" }**
在此先感谢您的任何帮助/想法
确实需要订阅频道吗?我的推送通知无需执行此步骤即可工作。 – portfoliobuilder