阿里云移动推送服务java调用

  1. 首先登录阿里云官网,开通移动推送服务
  2. 创建app和平台
  3. 配置应用
  4. 测试推送
  5. 根据文档编写自己的调用方法
  6. 测试推送

##具体步骤如下:
登录阿里云官网
https://www.aliyun.com/?utm_medium=text&utm_source=bdbrand&utm_campaign=bdbrand&utm_content=se_32492
登录进入控制台,在产品中搜索移动推送

选择开通服务,添加产品

进入产品里面,添加APP

注意:如果是iOS,需要添加APNs推送证书,并验证。
创建完成之后如图所示,后台服务需要appkey,手机端开发需要appkey和appsecret。

阿里云提供的文档:
https://help.aliyun.com/knowledge_detail/48089.html?spm=a2c4g.11186631.2.5.4bfc24e1OTRI8j
用文档给的代码,只要修改以下参数就可以,
accessKeyId和accessKeySecret,已经在应用管理中创建的需要发送APP的appkey,通知的标题和内容
代码片.

             String accessKeyId = "阿里云账号";String accessKeySecret = "阿里云Secret";IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);DefaultAcsClient client = new DefaultAcsClient(profile);PushRequest pushRequest = new PushRequest();// 推送目标// pushRequest.setAppKey(appKey);//单独指定的app//String deviceIds = "手机端设备id";//pushRequest.setTarget("DEVICE"); //推送目标: DEVICE:按设备推送 ALIAS : 按别名推送 ACCOUNT:按帐号推送  TAG:按标签推送; ALL: 广播推送//pushRequest.setTargetValue(deviceIds); //根据Target来设定,如Target=DEVICE, 则对应的值为 设备id1,设备id2. 多个值使用逗号分隔.(帐号与设备有一次最多100个的限制)pushRequest.setTarget("ALL"); //推送目标: DEVICE:推送给设备; ACCOUNT:推送给指定帐号,TAG:推送给自定义标签; ALL: 推送给全部pushRequest.setTargetValue("ALL"); //根据Target来设定,如Target=DEVICE, 则对应的值为 设备id1,设备id2. 多个值使用逗号分隔.(帐号与设备有一次最多100个的限制)pushRequest.setPushType("NOTICE"); // 消息类型 MESSAGE NOTICEpushRequest.setDeviceType("ALL"); // 设备类型 ANDROID iOS ALL.             // 推送配置pushRequest.setTitle("推送通知标题"); // 消息的标题pushRequest.setBody("推送通知内容"); // 消息的内容// 推送配置: iOSpushRequest.setIOSBadge(5); // iOS应用图标右上角角标pushRequest.setIOSMusic("default"); // iOS通知声音pushRequest.setIOSSubtitle("iOS10 subtitle");//iOS10通知副标题的内容pushRequest.setIOSNotificationCategory("iOS10 Notification Category");//指定iOS10通知CategorypushRequest.setIOSMutableContent(true);//是否允许扩展iOS通知内容pushRequest.setIOSApnsEnv("DEV");//iOS的通知是通过APNs中心来发送的,需要填写对应的环境信息。"DEV" : 表示开发环境 "PRODUCT" : 表示生产环境pushRequest.setIOSRemind(true); // 消息推送时设备不在线(既与移动推送的服务端的长连接通道不通),则这条推送会做为通知,通过苹果的APNs通道送达一次。注意:离线消息转通知仅适用于生产环境pushRequest.setIOSRemindBody("iOSRemindBody");//iOS消息转通知时使用的iOS通知内容,仅当iOSApnsEnv=PRODUCT && iOSRemind为true时有效pushRequest.setIOSExtParameters("{\"_ENV_\":\"DEV\",\"k2\":\"v2\"}"); //通知的扩展属性(注意 : 该参数要以json map的格式传入,否则会解析出错)// 推送配置: AndroidpushRequest.setAndroidNotifyType("NONE");//通知的提醒方式 "VIBRATE" : 震动 "SOUND" : 声音 "BOTH" : 声音和震动 NONE : 静音pushRequest.setAndroidNotificationBarType(1);//通知栏自定义样式0-100pushRequest.setAndroidNotificationBarPriority(1);//通知栏自定义样式0-100pushRequest.setAndroidOpenType("URL"); //点击通知后动作 "APPLICATION" : 打开应用 "ACTIVITY" : 打开AndroidActivity "URL" : 打开URL "NONE" : 无跳转pushRequest.setAndroidOpenUrl("http://www.aliyun.com"); //Android收到推送后打开对应的url,仅当AndroidOpenType="URL"有效pushRequest.setAndroidActivity("com.alibaba.push2.demo.XiaoMiPushActivity"); // 设定通知打开的activity,仅当AndroidOpenType="Activity"有效pushRequest.setAndroidMusic("default"); // Android通知音乐pushRequest.setAndroidPopupActivity("com.ali.demo.PopupActivity");//设置该参数后启动辅助弹窗功能, 此处指定通知点击后跳转的Activity(辅助弹窗的前提条件:1. 集成第三方辅助通道;2. StoreOffline参数设为true)pushRequest.setAndroidPopupTitle("Popup Title");pushRequest.setAndroidPopupBody("Popup Body");pushRequest.setAndroidExtParameters("{\"k1\":\"android\",\"k2\":\"v2\"}"); //设定通知的扩展属性。(注意 : 该参数要以 json map 的格式传入,否则会解析出错)               pushRequest.setAndroidNotificationChannel("1");//安卓系统8.0及以上版本,这里加入设置// 推送控制//Date pushDate = new Date(System.currentTimeMillis()) ; // 30秒之间的时间点, 也可以设置成你指定固定时间//String pushTime = ParameterHelper.getISO8601Time(pushDate);//pushRequest.setPushTime(pushTime); // 延后推送。可选,如果不设置表示立即推送String expireTime = ParameterHelper.getISO8601Time(new Date(System.currentTimeMillis() + 12 * 3600 * 1000)); // 12小时后消息失效, 不会再发送pushRequest.setExpireTime(expireTime);pushRequest.setStoreOffline(true); // 离线消息是否保存,若保存, 在推送时候,用户即使不在线,下一次上线则会收到PushResponse pushResponse = null;try {long appKeyAndroid ;//安卓的appkey,在应用管理中long appKeyiOS;//iOS的appkey,在应用管理中// 推送目标 不同appkey要分别推送pushRequest.setAppKey(appKeyAndroid);pushResponse = client.getAcsResponse(pushRequest);pushRequest.setAppKey(appKeyiOS);pushResponse = client.getAcsResponse(pushRequest);} catch (ServerException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClientException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.printf("RequestId: %s, MessageID: %s\n",pushResponse.getRequestId(), pushResponse.getMessageId());

完成之后就可以进行测试了。测试结果OK。

阿里云移动推送服务java调用相关推荐

  1. 阿里云-邮件推送 java 代码 ,测试邮件推送服务,阿里云邮件推送,java

    阿里云-邮件推送Java 测试代码 1.阿里云-邮件推送 配置 购买域名 配置域名 2.创建 Access Key 2.1登录 Access Key 管理控制台. 2.2单击页面右上角按钮 创建 Ac ...

  2. java项目——发邮件之阿里云邮箱推送服务(一)

    最近做项目的时候用到了阿里云的邮箱推送.首先站在我自己的理解的角度,为什么要用阿里云邮箱推送服务? 首先从万网说起. 中国万网是中国最大的互联网基础服务提供商之一,服务范围涵盖基础的域名服务.主机服务 ...

  3. 使用阿里云邮件推送服务架设自己邮件验证与推送体系

    提示:阅读本文需提前了解的相关知识 1.电子邮件协议(http://baike.baidu.com/view/2367542.htm) 2.阿里云邮件推送(https://www.aliyun.com ...

  4. 解决.NET Core中MailKit无法使用阿里云邮件推送服务的问题

    在博问中(.net core怎么实现邮件发送)知道了MailKit无法使用阿里云邮件推送服务发送邮件的问题,自已实测也遇到同样的问题,而用自己搭建的邮件服务器没这个问题. 于是,向阿里云提交了工单.. ...

  5. 阿里云移动推送服务使用教程

    产品概述: 阿里移动推送(Alibaba Cloud Mobile Push)是基于大数据的移动智能推送服务,帮助App快速集成移动推送的功能,在实现高效.精确.实时的移动推送的同时,极大地降低了开发 ...

  6. 注册阿里云移动推送服务

    阿里云推送 一.注册阿里云移动推送服务 1.注册阿里云移动推送服务,注册APP拿到AppKey和AppSecret 步骤参考:https://help.aliyun.com/document_deta ...

  7. wordpress使用阿里云邮件推送服务实现发送邮件

    之前用腾迅云时,配置了wordpress是可以使用邮件服务的,然而到了阿里云,却无法使用了,有人说是因为阿里云关了25端口,但腾迅好像也关了. 百度看看有没有其他方法,最终让我找到个方法,可惜不是很完 ...

  8. PHPCMS 邮件发送 - 使用阿里云邮件推送服务的详细设置

    自从阿里云和腾讯云相继默认封闭了云主机的25端口(可申请解封) 我就使用了阿里云的邮件推送服务,感觉很是好用.把我使用PHPCMS做的网站的邮件发送也设置成了使用了阿里云的邮件推送. 我使用的邮箱是阿 ...

  9. 阿里云邮件推送服务配置

    前言 距博客评论.留言功能上线以来,虽然访问人数不多. 但是前段时间发现有人评论了文章,并留下了疑问.但是已经过去多时,所以打算完善评论.留言功能,并添加邮件推送以便第一时间知晓. 准备工作 本文采用 ...

最新文章

  1. 福利 | 零基础学习Python量化交易 !(深圳)
  2. javascript-for-loop-example--reference
  3. 闪退补丁_ArcGIS打开amp;闪退问题
  4. 第一行代码学习笔记第五章——详解广播机制
  5. python opencv图像处理程序_Python-OpenCV学习(四):基本图像处理
  6. 了解 SharePoint 2010 开发中的关键点
  7. 关系与普通表的术语比较
  8. [iOS]利用Appicon and Launchimage Maker生成并配置iOSApp的图标和启动页
  9. linux java解压文件怎么打开,linux下面的解压缩文件的命令
  10. 《『若水新闻』客户端开发教程》——08.设计新闻回复UI
  11. Eclipse中,控制每行最大长度的提示线。
  12. C/C++ —— 字典(dictionary)接口的设计
  13. linux系统批量杀掉进程命令,[Linux]使用awk批量杀进程的命令
  14. C语言实现高尔顿钉板实验(模拟正态分布)
  15. Python:利用xlwt设置Excel单元格格式
  16. java 表单验证必填的_avalon2 非必填项的表单验证规则
  17. 日系IP的五大“坑”
  18. AI世界- 客流统计
  19. (php毕业设计)基于php在线音乐分享网站管理系统源码
  20. 榆熙电商:拼多多品牌专卖店和旗舰店区别在哪?

热门文章

  1. Transformer入门(一)——结构
  2. 读《3D打印:从想象到现实》后感
  3. 信息安全管理与评估知识概括
  4. 小程序:区域滚动、下拉刷新、上拉加载更多
  5. 瑞士卷(Swiss Roll)数据集的生成
  6. ES6基础-ES6的扩展
  7. D. Yaroslav and Divisors
  8. 算力网络照进现实,浩鲸科技如何构建?
  9. Deep Dive into Pytorch RNN/LSTM
  10. 求两条曲线的交点 matlab,matlab求两条曲线交点