最近刚刚接触百度云推送,按照安卓SDK开发文档一步步走,发现程序接收不到控制台发来的推送通知,我的开发环境是Android Studio;
-控制台推送消息截图-
-虚拟机未收到推送通知-
-PushTestReceiver的代码截图-
-android studio的控制台显示绑定成功-
-Activity里的代码截图-
-相关的os和jar文件截图-
请教一下过来人,是不是我的os和jar文件配置错误?请各位帮帮忙!
------解决思路----------------------
1. 首先需要在onBind绑定百度推送的账号。是需要在里面写逻辑处理的,而不是回调此函数就代表成功了。
@Override
public void onBind(Context context, int errorCode, String appid, String userId, String channelId, String requestId) {
String responseString = "onBind errorCode=" + errorCode + " appid=" + appid + " userId=" + userId + " channelId=" + channelId + " requestId="
+ requestId;
Log.d(TAG, responseString);
if (errorCode == 0) {
// 绑定成功
Log.e("NetWorkService", "开始百度推送服务绑定");
Intent service = new Intent(context, NetworkService.class);
service.putExtra("appid", userId);
service.putExtra("channelId", channelId);
service.putExtra("userId", userId);
service.setAction(NetworkService.ServiceAction.ACTION_PUSH_BIND);
context.startService(service);
}
// Demo更新界面展示代码,应用请在这里加入自己的处理逻辑
// updateContent(context, responseString);
}
2. 绑定成功之后,就可以通过官方后台,或者你们的后台进行推送消息了。
3. 在onNotificationClicked 里面处理通知的点击事件。
@Override
public void onNotificationClicked(Context context, String title, String description, String customContentString) {
String notifyString = "通知点击 title=\"" + title + "\" description=\"" + description + "\" customContent=" + customContentString;
Log.d(TAG, notifyString);
}