推送是使用非常频繁的服务,使用方法参见bmob官方文档,http://docs.bmob.cn/androidpush/index.html?menukey=otherdoc&key=androidpush 。
但是没有整体管理功能,可拓展性有限,当信息量较大的时候,使用起来并不方便,本来旨在解决这一问题。
总体设计
整体分为发送者和接收者。
发送者负责构建消息和推送消息。
构建消息:
以构建java对象的方式,构建消息,不必直接构建json字符串消息。
推送消息:
给BmobInstallation加一个targetUserObjectId字段,每次用户登录更新该字段。
使用fastjson将java对象转换为json字符串,再推送给目标用户。
接收者负责解析消息和管理消息。
解析消息:
同样使用fastjson将json字符串转换为java对象。
管理消息:
通过ormlite关系型数据库进行存储更新删除等,不必写sql语句。
更多详细内容请看源码。
源码说明:
1.开源,https://github.com/klob/BmobPushSample
2.使用了klob-sdk框架
3.从成型项目抽出来,更多功能可自行探索
demo说明:
1.请先卸载使用了bmob sdk的app
2.建议使用两台手机测试
使用说明:
1.导入bmobpush,并进行定制修改(推荐)
2.gradle compile 'com.diandi.klob:bmobpush:1.0.0'