zoukankan      html  css  js  c++  java
  • 个推 简单的应用(安卓)

    // 定义常量, appId、appKey、masterSecret 采用本文档 "第二步 获取访问凭证 "中获得的应用配置

    private static String appId = "";
    private static String appKey = "";
    private static String masterSecret = "";
    private static String url = "http://sdk.open.api.igexin.com/apiex.htm";



    /*
    * 个推 title 推送标题 text 推送内容 list clientid数组(数组里面是多个手机用户的ID(每个用户的ID是唯一的))
    */
    public static void PushPrivate(String title, String text, List<String> list,String code) {
    // 显示每个用户的用户状态,false:不显示,true:显示
    System.setProperty("gexin.rp.sdk.pushlist.needDetails", "true");
    // 推送主类
    IGtPush push = new IGtPush(url, appKey, masterSecret);
    try {
    ListMessage message = new ListMessage();
    // 通知模版:支持TransmissionTemplate、LinkTemplate、NotificationTemplate,此处以NotificationTemplate为例
    // 在通知栏显示一条含图标、标题等的通知,用户点击后激活您的应用
    TransmissionTemplate template = new TransmissionTemplate();
    template.setAppId(appId);
    template.setAppkey(appKey);
    // 透传消息设置,1为强制启动应用,客户端接收到消息后就会立即启动应用;2为等待应用启动
    template.setTransmissionType(2);
    template.setTransmissionContent(code);
    // 设置定时展示时间
    message.setData(template);
    message.setOffline(true); //用户当前不在线时,是否离线存储,可选,默认不存储
    message.setOfflineExpireTime(72 * 3600 * 1000); //离线有效时间,单位为毫秒,可选
    // 接收者
    List<Target> targets = new ArrayList<Target>();
    if (list.size() > 0 && list != null) {
    for(String clientId : list){
    Target target = new Target();
    target.setAppId(appId); // 接收者安装的应用的APPID
    target.setClientId(clientId); // 接收者的ClientID
    targets.add(target);
    }
    }
    // 推送前通过该接口申请“ContentID”
    String contentId = push.getContentId(message);
    IPushResult ret = push.pushMessageToList(contentId, targets);
    System.out.println(ret.getResponse().toString());
    } catch (Exception e) {
    e.printStackTrace();
    }
    }





    调取使用:
    PageData CID = new PageData();
    String title = "你有一条作废的合同信息";
    String text = "请前去审批 ";
    List<String> list = new ArrayList<String>();
    List<PageData> listcid = contractService.findlistCID(CID);
    for(int i =0 ;i<listcid.size();i++){
    list.add(listcid.get(i).get("CID").toString());
    }
    JSONObject json =new JSONObject();
    json.put("ID", contractId);
    json.put("TYPE",0);
    json.put("TITLE","你有一条作废的合同信息");
    json.put("TEXT","请前去审批");
    String ID = json.toString();
    PushToApp.PushPrivate(title,text,list,ID);
  • 相关阅读:
    第二十九课 循环链表的实现
    第二十八课 再论智能指针(下)
    第二十七课 再论智能指针(上)
    第二十六课 典型问题分析(Bugfix)
    普通new和placement new的重载
    leetcode 581. Shortest Unsorted Continuous Subarray
    leetcode 605. Can Place Flowers
    leetcode 219. Contains Duplicate II
    leetcode 283. Move Zeroes
    leetcode 217. Contains Duplicate
  • 原文地址:https://www.cnblogs.com/songyinan/p/8574125.html
Copyright © 2011-2022 走看看