我已经成功地将Parse.com
集成到android
应用程序中,当我尝试从数据浏览器发送通知时,推送通知运行良好。
现在,当我尝试实现从设备发送通知时,它不会发送任何内容,即使在解析数据浏览器的推送通知部分中也没有日志。
另外,我还在设置中启用了客户端推送。
这是我的代码:
public class ParseApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ParseCrashReporting.enable(this);
Parse.enableLocalDatastore(this);
Parse.initialize(this, "xxx", "xxx");
ParsePush.subscribeInBackground("",new SaveCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
} else {
Log.e("com.parse.push", "failed to subscribe for push", e);
}
}
});
ParseInstallation.getCurrentInstallation().saveInBackground();
ParsePush parsePush = new ParsePush();
parsePush.setChannel("Everyone");
parsePush.setMessage("Helloooooo :)");
parsePush.sendInBackground(new SendCallback() {
@Override
public void done(ParseException e) {
Log.d("parse push","Parse push sent");
}
});
}
}
logcat
,我收到了已成功发送的推送通知,但没有。我哪里犯了错误?
好的。我找到了一个解决方案。我认为最好在答案部分发布,以便将来的搜索者轻松找到解决方案。
诀窍是,我删除了这一行
parsePush.setChannel("Everyone");
现在一切正常。
最初,我虽然everyone
是一些特殊的关键字,它会向所有用户发送通知,因为我在一篇文章中看到用户有此行以便向所有注册用户发送广播通知。但是,上行认为有一个频道everyone
,它只适用于订阅此channel
的用户(不是所有用户)。