android push推送相关基本问答总结
通知和消息有什么区别?
通知:发送后会在系统通知栏收到展现,同时响铃或振动提醒用户.
消息:发送后不会在系统通知栏展现,SDK将消息传给第三方应用后需要开发者写展现代码才能看到.
什么是标签tag?
标签是用户的一种属性,在给某些用户设置某类标签后就可以针对推送。比如给喜欢“足球”打上“足球”标签,就可以只给他们精准推送。可以在应用管理页面管理每个应用的标签,每个应用最多打100个标签
Android平台SDK对手机和操作系统有哪些要求?
SDK支持Android1.6及以上版本的手机系统
手机必须要有网络(GPRS、3G或Wifi网络等)
手机可以没有SIM卡,但可能导致部分功能缺失手机可以不挂载SD卡,但会使部分功能无法正常工作
SDK是否对电量和流量消耗如何?
SDK特意针对手机优化,空载耗电每日15-50毫安,空载流量0.8-1.2M/月
发送消息和通知手机没有收到?
•服务端推送消息、通知的格式是否正确(格式可以参考服务端接口文档;用个推开放平台(dev.getui.com)推送不需要确认)
•手机网络是否正常(可以用浏览器多点几个网页)
•请检查SDK是否成功初始化并获得ClientID(详见《个推平台客户端SDK接入文档》-扩展功能–获取透传消息
•如果发送的是消息,需要开发者写接收处理展现代码,请确认是否写了相应的处理代码
•已成功初始化并获得ClientID的情况下,通过个推开放平台-故障排查-已有clientid进行一键监测
SDK没有得到clientid应该怎么办?
•请确认手机是否正常启动应用
•请确认手机是否打开移动网络(GPRS、3G)或Wifi网络
•请强行停止应用后重新启动并等待几分钟
•如果按照以上步骤仍旧没有取到ClientID,请卸载重装应用
是否提供了服务端API?
是的,服务端提供了三个API接口供开发者调用,详细的用法参见《个推平台服务端接口文档》
为什么我调用服务端接口显示“result=sign_error”?
•请确认编码是否是UTF-8,不是则修改为UTF-8
•检测appid,appkey,masterSecret相关的值,尤其masterSecret不要与appsecret搞混。
为什么有时候服务端API推送手机没有收到?
以下情况手机收到消息在通知栏不会显示,需要开发者写接收处理数据代码展现
•用pushmessage推送消息
•用pushSpecifyMessage推送消息,同时pushType值为“TransmissionMsg”
•用pushGroupMessage推送消息,同时pushType值为“TransmissionMsg”
个推推送平台页面特定用户中请上传正确的用户名单是指什么?
Clientid列表,格式为txt文件,每行一个clientid,回车换行,大小上限为20M
应用详情处注册用户数和在线数都是0,是什么原因?
•查看客户端是否拿到clientid
•注册用户数延迟到第二天统计,在线用户数延迟15分钟左右
•可能您修改过应用appid,导致clientid绑定在之前的appid上,你需要的操作:删除sd卡libs目录,应用清除数据或者卸载重装,再启动应用重新获取clientid
接入引导中的三个测试推送按钮无法收到,但故障排查能收到
您应该修改过应用appid,导致clientid绑定在之前的appid上,你需要的操作:删除sd卡libs目录,应用清除数据或者卸载重装,再启动应用重新获取clientid
clientid在什么情况下会改变呢
在手机没有sd卡的情况下,应用卸载重装或者清除数据是会变化clientid的,不排除其他异常情况,但目前未发现
我本来启动了我的应用,接着我点击通知,他又启动了我的应用,等于我启动了两个,这是为什么?
通过服务端接口推送参数transmissionType设置为1或者通过个推开放平台高级设置选择立即启动选项时,确实会出现这种情况。
如果需要避免此现象,建议通过服务端接口推送时参数transmissionType设置为2,并填写透传消息;通过个推开放平台推送时,高级设置中设置立即启动选项为
否,并填写透传消息。客户端获取透传消息判断应用当前状态,再根据状态做相应的处理。
在同一个手机登录过两个帐号,那么在我的服务器上,这两个帐号关联的clientID就一样了,那推送的消息就乱了?
对于个推只根据用户clientid进行消息下发的,无法避免此类情况。建议客户端维护一套用户id和clientid的关系,用户登录时检测用户id和clientid的绑定关系,下发时根据关系对相应的clientid进行下发。
收到推送,手机顶部的那一栏显示的是机器人,为什么?
需要在工程中drawable下放一张以push.png命名的图标