今天试用了极光推送API
用它是因为,大多数人说它的文档是最全的,但是用过之后,发现关于IOS的文档,还是很不够,导致走了一点弯路!
特别是服务端的代码:https://github.com/jpush/jpush-api-java-client for java
JPushClient jpushClient = new JPushClient(masterSecret, appKey, 0, DeviceEnum.Android, false); CustomMessageParams params = new CustomMessageParams(); params.setReceiverType(ReceiverTypeEnum.TAG); params.setReceiverValue(tag); MessageResult msgResult = jpushClient.sendCustomMessage(msgTitle, msgContent, params, null); LOG.debug("responseContent - " + msgResult.responseResult.responseContent); if (msgResult.isResultOK()) { LOG.info("msgResult - " + msgResult); LOG.info("messageId - " + msgResult.getMessageId()); } else { if (msgResult.getErrorCode() > 0) { // 业务异常 LOG.warn("Service error - ErrorCode: " + msgResult.getErrorCode() + ", ErrorMessage: " + msgResult.getErrorMessage()); } else { // 未到达 JPush LOG.error("Other excepitons - " + msgResult.responseResult.exceptionString); } }
这是它的推送案例,只有android的,没有IOS的!
附送ios的代码:
后来发现IOS完全不能试用sendCustomMessage这个方法.
/** * */ package org.haoyi.push; import java.util.HashMap; import java.util.Map; import org.apache.log4j.Logger; import cn.jpush.api.JPushClient; import cn.jpush.api.common.DeviceEnum; import cn.jpush.api.push.IosExtras; import cn.jpush.api.push.MessageResult; import cn.jpush.api.push.NotificationParams; import cn.jpush.api.push.ReceiverTypeEnum; /** * @author zfanxu * */ public class PushDemo { public static final int MAX = Integer.MAX_VALUE / 2; public static final int MIN = MAX / 2; private static Logger LOG = Logger.getLogger(PushDemo.class); public static void main(String[] args) { JPushClient jpushClient = new JPushClient(Config.JPUSH_MASTER_SECRET, Config.JPUSH_APPKEY, 0, DeviceEnum.IOS, false); for (int i = 0; i < 1; i++) { String notificationContent = "show me your money!"; NotificationParams param = new NotificationParams(); param.setSendNo(getRandomSendNo()); param.setReceiverType(ReceiverTypeEnum.REGISTRATION_ID); param.setReceiverValue("071f06f8c18"); Map<String, Object> extras = new HashMap<String, Object>(); IosExtras iosExtra = new IosExtras(1, "message.wav");// badge // set badge and sound extras.put("ios", iosExtra); MessageResult msgResult = jpushClient.sendNotification( notificationContent, param, extras); if (msgResult.isResultOK()) { LOG.info("msgResult - " + msgResult); LOG.info("messageId - " + msgResult.getMessageId()); } else { if (msgResult.getErrorCode() > 0) { // 业务异常 LOG.warn("Service error - ErrorCode: " + msgResult.getErrorCode() + ", ErrorMessage: " + msgResult.getErrorMessage()); } else { // 未到达 JPush LOG.error("Other excepitons - " + msgResult.responseResult.exceptionString); } } } } /** * 保持 sendNo 的唯一性是有必要的 It is very important to keep sendNo unique. * * @return sendNo */ public static int getRandomSendNo() { return (int) (MIN + Math.random() * (MAX - MIN)); } }
先挖个坑,下班后,再填满!
相关推荐
极光推送(JPush)是极光公司推出的一款高效、稳定、易用的移动消息推送服务,它可以帮助开发者向Android、iOS以及Web端的用户实时推送消息,提高用户活跃度与应用黏性。在Java开发环境中,极光推送提供了相应的SDK...
极光推送服务端(JPush Server)是针对Java开发者提供的一款服务端SDK,主要用于实现应用程序向用户设备发送消息和通知的功能。极光推送是移动应用开发者首选的推送服务之一,它能够帮助开发者轻松地实现向iOS、...
极光推送(JPush)是一款针对移动应用开发者的服务平台,提供消息推送、统计分析等服务,广泛应用于iOS、Android以及Web等多个平台。本实例主要讲解如何在PHP环境中实现对JPush API的远程调用,特别适合于基于...
极光推送(JPush)是面向移动应用开发者提供的一款高效、稳定的推送服务,它能够帮助开发者实现向Android、iOS以及Web应用的用户实时推送消息。本压缩包"jpush-api-java-client-3.3.3.rar"包含了极光推送的Java...
极光推送是一个第三方推送服务平台,支持多种平台,包括Android、iOS等。它提供了丰富的推送功能,如实时推送、定向推送、自定义消息等。在Spring Boot中集成极光推送,需要先在极光推送官网注册并创建应用,获取...
在IT行业中,服务端集成JPush推送通知是一个常见的任务,特别是在构建移动应用时,为了提供实时的用户交互和消息传递,开发者通常会采用第三方推送服务,如JPush(极光推送)。本文将深入探讨如何在服务端集成JPush...
- 除了FCM,还有极光推送(JPush)、个推、信鸽等第三方服务,提供类似功能,有时更适合国内环境。 8. **安全性考虑**: - 保护FCM Token的安全,避免被恶意利用,不要在客户端存储敏感信息。 - 设计合理的消息...
- **消息推送**:集成推送服务如Firebase Cloud Messaging或极光推送,实现实时消息推送。 - **权限控制**:提供细粒度的权限设置,如禁言、踢人等。 - **安全机制**:采用端到端加密保障通信安全,防止中间人...
开发者可以通过这些代码了解如何设置推送证书,集成第三方库如Firebase Cloud Messaging (FCM) 或极光推送,以及如何在客户端处理接收到的通知。 在学习过程中,我们还可以关注代码的组织结构,了解如何遵循MVC...
对于即时性和送达率有较高要求的场景,可以使用如极光推送这样的第三方服务。这些服务通常提供了更为细致的推送设置选项,例如可以设置“心跳”交互时间来优化推送效果。 - **操作步骤**: - 在极光推送控制台中...
【PushServerDemo.zip】是一个包含PushServer Demo的压缩包,主要展示了如何使用JPUSH(极光推送)服务来实现移动应用的消息推送功能。这个Demo通常用于开发者学习和测试JPUSH的集成与使用,以理解其工作原理并将其...
CIM项目是基于mina或者netty框架下的推送系统,我们平常使用第三方的推送SDK,如极光推送,百度推送,小米推送,以及腾讯信鸽等来支撑自己的移动端的业务,或许有一些用户自己实现即时通讯系统的需求,那么CIM为您...
6. 推送通知:采用极光推送、个推等服务,实现实时订单通知和状态更新。 7. 大数据与分析:通过收集用户行为数据,进行数据分析,优化推荐算法,提升用户体验。 8. 安全技术:包括SSL加密、防火墙、DDoS防护等,...