API接口是异步的,返回结果是成功的,只是表明友盟服务器端接受了当次推送指令,不一定表示成功下发到设备。 API接口只会做一些基本的校验,比如接口鉴权判断、检查是否漏掉了必填的参数等,API请求接受成功之后,会把要发送的任务投递到发送队列,由后续的处理程序从队列中拉取出来后,进行发送。 一般来说,如果设备的长连接在线的话,因为我们服务器的并发处理能力非常强大,基本上可以做到设备能第一时间收到消息,即发即到。 设备没有收到消息,可能存在多种原因:对于Android来说,最常见的原因就是设备长连接不在线了(长连接在线的含义是: 设备联网&后台的PushService存在&PushService与服务器端建立了长连接),这种情况可以按照常见的步骤来排查: 安卓设备状态离线现象剖析_U盟友盟消息推送论坛 && 集成友盟推送安卓SDK收不到消息的进!_U盟友盟消息推送论坛对于iOS来说,一般的原因都是APNs的两套开发环境搞错了,苹果严格区分开发环境(sandbox)和生产环境(prod),在开发测试阶段,只能用开发环境测试, 只有App Store上线后,才可以用生产模式发消息,对应的API后台参数是: prod_mode. 如若问题没有得到解决,可在官网底部点击联系我们,进行咨询解答。
API接口是异步的,返回结果是成功的,只是表明友盟服务器端接受了当次推送指令,不一定表示成功下发到设备。 API接口只会做一些基本的校验,比如接口鉴权判断、检查是否漏掉了必填的参数等,API请求接受成功之后,会把要发送的任务投递到发送队列,由后续的处理程序从队列中拉取出来后,进行发送。
一般来说,如果设备的长连接在线的话,因为我们服务器的并发处理能力非常强大,基本上可以做到设备能第一时间收到消息,即发即到。
设备没有收到消息,可能存在多种原因:
对于Android来说,最常见的原因就是设备长连接不在线了(长连接在线的含义是: 设备联网&后台的PushService存在&PushService与服务器端建立了长连接),这种情况可以按照常见的步骤来排查: 安卓设备状态离线现象剖析_U盟友盟消息推送论坛 && 集成友盟推送安卓SDK收不到消息的进!_U盟友盟消息推送论坛
对于iOS来说,一般的原因都是APNs的两套开发环境搞错了,苹果严格区分开发环境(sandbox)和生产环境(prod),在开发测试阶段,只能用开发环境测试, 只有App Store上线后,才可以用生产模式发消息,对应的API后台参数是: prod_mode.
如若问题没有得到解决,可在官网底部点击联系我们,进行咨询解答。