//在极光注册上传应用的 appKey 和 masterSecret  private final static String appKey = "*****";private final static String masterSecret = "****";private final static int maxtrytimes = 3;private static JPushClient jpushClient = new JPushClient(masterSecret, appKey, maxtrytimes);public PushPayload buildPushObject(String title, String content,String from, Audience audience ,Map extra,Boolean sendNotify) {//推送对象构造AndroidNotification android = AndroidNotification.newBuilder().setTitle(title).setAlert(content).addExtra("from", from).addExtra("sendtime", System.currentTimeMillis()).build();IosNotification ios = IosNotification.newBuilder().incrBadge(1).addExtra("from", from).setSound("default").addExtra("sendtime", System.currentTimeMillis()).build();Notification notification = Notification.newBuilder().setAlert(content).addPlatformNotification(android).addPlatformNotification(ios).build();//通知构造Message msg;//消息构造if(extra==null){msg = Message.newBuilder().setTitle(title).setMsgContent(content).build();}else{msg = Message.newBuilder().setTitle(title).setMsgContent(content).addExtras(extra).build();//发送额外信息可用addExtras传map,也可直接用addExtra传键值对}if(sendNotify){return PushPayload.newBuilder().setPlatform(Platform.android_ios()).setAudience(audience).setNotification(notification).setMessage(msg).build();}else{return PushPayload.newBuilder().setPlatform(Platform.android_ios()).setAudience(audience).setMessage(msg).build();}}public static void send() throws APIConnectionException, APIRequestException{//testSend();MessagePush s = new MessagePush();Map extra = new HashMap();extra.put("title", "好消息【点击查看】");PushPayload payload = s.buildPushObject("好消息【点击查看】", "您有一条待办需要处理!","测试", Audience.all(),extra,false);PushResult result = s.jpushClient.sendPush(payload);System.err.println(result);}
//apicloud 测试极光推送成功
var jpush = null;apiready = function() {
initPush();
}function initPush(){// 实例化极光推送对象jpush = api.require('ajpush');// 初始化推送服务,只Android有效,ios上会自动初始化jpush.init(function(ret, err) {});//设置推送时间jpush.setPushTime({days: 1,startHour: 0,endHour: 23}, function(ret, err){});// 监听应用进入后台,通知jpush暂停事件api.addEventListener({name : 'pause'}, function(ret, err) {//统计-app暂停//jpush.onResume();});// 监听应用恢复到前台,通知jpush恢复事件api.addEventListener({name : 'resume'}, function(ret, err) {//统计-app恢复jpush.onResume();});// 监听通知被点击(Android)api.addEventListener({name : 'appintent'}, function(ret, err) {if (ret && ret.appParam.ajpush) {// 通知被点击后处理executeNotice(ret, "appintent");}});// 监听通知被点击(iOS应用处于后台)api.addEventListener({name : 'noticeclicked'}, function(ret, err) {if (ret && ret.value) {// 通知被点击后处理executeNotice(ret, "noticeclicked");}});// 消息监听jpush.setListener(function(re, er) {//alert($api.jsonToStr(re));if (re) {var tit = re.title; // 标题var con = re.content; // 内容var ex = {}; // 附加字段// 附加字段不为空if(re.extra){var ext = re.extra;ex = {"extra" : ext};}// 转为状态栏通知notification(tit, con, ex);}});
}// 监听到的消息转为状态栏通知
function notification(t, c, e){api.notification({vibrate : [300, 500], //震动时间节奏sound : 'default', //系统默认提示音light : false, //是否亮灯,需设备支持notify : {//状态栏通知title : t || "系统消息", //标题,默认值为应用名称,只Android有效content : c, //内容,默认值为'有新消息'extra : e, //传递给通知的数据,在通知被点击后,该数据将通过监听函数回调给网页updateCurrent : false//是否覆盖更新已有的通知,取值范围true|false。只Android有效}}, function(ret, err) {//if(ret){//api.alert(ret.id);//id为通知ID,可用于取消通知//}});
}// 通知被点击后处理
function executeNotice (ret, type) {var ajpush_obj; // 信息对象var extra = {}; // 附加字段if(type == "appintent"){ajpush_obj = ret.appParam.ajpush;if(!isEmptyObject(ajpush_obj)){if(!isEmptyObject(ajpush_obj.extra)){extra = ajpush_obj.extra;}}}else if(type == "noticeclicked"){ajpush_obj = ret.value;if(!isEmptyObject(ajpush_obj)){c = ajpush_obj.content;// 转为json字符串ajpush_obj = JSON.stringify(ajpush_obj);// 再转为json对象ajpush_obj = $.parseJSON(ajpush_obj);// 判断附加参数是否为空if(!isEmptyObject(ajpush_obj.extra)){//extra = $.parseJSON(ajpush_obj.extra);extra = ajpush_obj.extra;}}}// 附加字段不为空if(!isEmptyObject(extra)){if (api.systemType === "android") {// 赋值到附加字段(格式化为json)extra = JSON.parse(extra);}// 判断附加字段值if (extra.aa) { // 极光推送后台中添加的附加字段// 你的逻辑代码}}
}

apicloud极光推送相关推荐

  1. 极光推送在APICloud平台的使用教程

    推送服务是app应用中非常重要的一个服务,尤其对于app开发者而言,没有什么途径比消息推送更能直接.即时地触及到目标用户群体.根据相关数据显示,通过推送服务可以显著提升app的用户粘性和活跃度. 下面 ...

  2. 看了极光推送技术原理的几点思考

    看了极光推送技术原理的几点思考 分类: android2012-11-26 20:50 16586人阅读 评论(18) 收藏 举报 目录(?)[+] 移动互联网应用现状 因为手机平台本身.电量.网络流 ...

  3. 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)

    这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...

  4. 极光推送后台php接口,极光推送Jpush(v2)接口 服务端PHP版本的REST API推送类

    在许多的手机App开发中推送是一个必须的应用.高大上的企业都会自己投入成本搭建自己的推送服务器,而小微企业则会选择一些服务商,使用他们的服务,减轻自己的运营和维护的成本.Jpush(极光推送)是目前比 ...

  5. **极光推送PHP服务器端推送移动设备消息(Jpush V2 api)

    jpush.php  这是推送方法  用到curl发送请求 <?php /*** 极光推送php 服务器端* @author yalong sun* @Email <syl_ad@163. ...

  6. Laravel 集成 JPush 极光推送指北

    2019独角兽企业重金招聘Python工程师标准>>> 我是一个 Laravel 小白,我是一个 Laravel 小白,我是一个 Laravel 小白(默念三遍再往下读,如果非小白就 ...

  7. 《小印记》源码分享--极光推送服务器篇

    为什么80%的码农都做不了架构师?>>>    笔者这几天刚完成<小印记>的推送功能,今天特分享一下在做的过程中实际解决的问题.如果读者学到了有用的东西,希望能前往App ...

  8. 极光推送配置(Android Studio),亲测有效

    进行到这里就可以接收到通知了,但是如果你还想根据接收的消息做点什么 step8: public class MyReceiver extends BroadcastReceiver {private ...

  9. iOS:极光推送控制器跳转

    在前面已经做完了极光消息的推送,那么有消息了,如何跳转到需要的控制器呢?其实,主要还是在userInfo这个消息里面做判断来处理,具体如下: 下面这两个是远程推送时接收消息的方法,这是应用程序提供的方 ...

最新文章

  1. 倒计时 3 天!「2019 嵌入式智能国际大会」全日程大公开!
  2. 2018年全球自动驾驶法律政策研究 | 附报告下载
  3. GetLastError()函数返回值及含义
  4. 【Android 安全】DEX 加密 ( Proguard 简介 | Proguard 相关网址 | Proguard 混淆配置 )
  5. sklearn:sklearn.feature_selection的SelectFromModel函数的简介、使用方法之详细攻略
  6. Codeforces Round #645 (Div. 2)(AB)
  7. php date函数实现,PHP date() 函数可实现的功能列表
  8. STM32 BOOT 引脚配置
  9. 五人合伙最佳股份分配_【干货要点】再谈“类直营”——百果园的店长合伙人...
  10. 吴恩达《机器学习》第二章:线性回归
  11. 电脑查询ip地址的方法,第一种最为简单
  12. 李航《统计学习方法》SMO算法推导中的思考
  13. 静电放电(ESD)知识小记
  14. 【杂记】各项异性滤波简介Anisotropic Filtering(AF)
  15. win7下java用jdbc驱动来连接sql server的方法 (转载)
  16. Linux系统磁盘高级应用适合初学者
  17. Uni App input 手机键盘回车搜索
  18. 程序员自我提升的5个方法
  19. 跨境支付行业洗牌在即:本月底必须登记 支付机构不得再“借牌照”
  20. c语言 动态分配存储空间

热门文章

  1. 【统计分析系统--SAS介绍】
  2. SAS统计描述、作图与均值显著性检验
  3. maven私服deploy-405错误
  4. 开源资产管理系统SNIPE-IT搭建
  5. 适用于 Flutter 的 Google 移动广告 SDK 正式版现已发布
  6. ❤️❤️❤️Unity废柴看过来,手把手教你做植物大战僵尸(十四)—— 游戏胜利和失败界面
  7. zabbix下载方式
  8. 老闪创业那些事儿(14)——测试老白变身记
  9. python刷步数程序设计_乐心健康间接修改微信步数-Docker持久运行python脚本
  10. 异构数据源离线同步工具之DataX的安装部署