https 接口说明

https 接口说明

1. 概述

http 协议是明文传输,内容不需要解密直接可读,https 在 http 基础上添加 SSL/TLS 加密 层,保证数据安全。相对而言,https 协议更安全,http 协议效率更高。

2. IGtPush接口类型定义

2.1 函数说明

IGtPush(String host, String appKey, String masterSecret)

IGtPush(String appKey, String masterSecret, boolean useSSL)

2.2 参数说明

参数名 类型 必需 默认值 参数描述
host string 推送os域名.host可选填,如果host不填程序自动检测用户网络,选择最快的域名连接下发。getui服务url地址,可使用 https url或者http url (服务端SDK版本号3.4.0.0及以上版本支持该功能)
appKey string 用于鉴定身份是否合法
masterSecret string 第三方客户端个推集成鉴权码,用于验证第三方合法性。在服务端推送鉴权时使用
useSSL boolean FALSE 是否使用http接口调用:true为https,false为http。默认为http。 (服务端SDK版本号4.0.1.0及以上版本支持该功能)

3. https使用方法

方法一:

// 此处true为https域名,false为http,默认为false。java推荐使用此方法,没有特别需求不需要指定host。
IGtPush push = new IGtPush(appkey, master, true);

方法二:

// host为域名,优先使用host进行连接,根据域名协议来区分,将代码中host的值变为"https://api.getui.com/apiex.htm";所有语言均支持此方法。
IGtPush push = new IGtPush(host, appkey, master);

4. https接口实例

import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.SingleMessage;
import com.gexin.rp.sdk.base.impl.Target;
import com.gexin.rp.sdk.exceptions.RequestException;
import com.gexin.rp.sdk.http.IGtPush;
import com.gexin.rp.sdk.template.LinkTemplate;
public class Demo {
    static String appId = "b03c5cfef65ed30108f0a3fd82c3f6b41";
    static String appkey = "110000";
    static String master = "a02a76119b20d4e31620d7597a3b4f35";
    static String CID = "873ffc4fec7bfd43d4705639eacb41d0";
    static String host = "https://api.getui.com/apiex.htm";
    public static void main(String[] args) throws Exception {
        // https连接
        IGtPush push = new IGtPush(appkey, master, true);
        // 此处true为https域名,false为http,默认为false。Java语言推荐使用此方式
        // IGtPush push = new IGtPush(host, appkey, master);
        // host为域名,根据域名区分是http协议/https协议
        LinkTemplate template = linkTemplateDemo();
        SingleMessage message = new SingleMessage();
        message.setOffline(true);
        // 离线有效时间,单位为毫秒,可选
        message.setOfflineExpireTime(24 * 3600 * 1000);
        message.setData(template);
        message.setPushNetWorkType(0); // 可选,判断是否客户端是否wifi环境下推送,1为在WIFI环境下,0为不限制网络环境。
        Target target = new Target();
        target.setAppId(appId);
        target.setClientId(CID);
        // 用户别名推送,cid和用户别名只能2者选其一
        // String alias = "个";
        // target.setAlias(alias);
        IPushResult ret = null;
        try {
            ret = push.pushMessageToSingle(message, target);
        } catch (RequestException e) {
            e.printStackTrace();
            ret = push.pushMessageToSingle(message, target, e.getRequestId());
        }
        if (ret != null) {
            System.out.println(ret.getResponse().toString());
        } else {
            System.out.println("服务器响应异常");
        }
    }
    public static LinkTemplate linkTemplateDemo() {
        LinkTemplate template = new LinkTemplate();
        // 设置APPID与APPKEY
        template.setAppId(appId);
        template.setAppkey(appkey);
        // 设置通知栏标题与内容
        template.setTitle("请输入通知栏标题");
        template.setText("请输入通知栏内容");
        // 配置通知栏图标
        template.setLogo("icon.png");
        // 配置通知栏网络图标,填写图标URL地址
        template.setLogoUrl("");
        // 设置通知是否响铃,震动,或者可清除
        template.setIsRing(true);
        template.setIsVibrate(true);
        template.setIsClearable(true);
        // 设置打开的网址地址
        template.setUrl("http://www.baidu.com");
        return template;
    }
}
通知
2017.12.18 iOS SDK 2.1.0.0

新增 SDK 离线状态返回。 优化 SDK 解决已知问题。

......
2017.08.17 Android SDK 2.11.1.0

增加 "绑定、解绑别名" 结果回调 修复 "设置标签" 在某些情况下失败问题 修复若干其他 bug【感谢快看小说的反馈及大力支持~】

......
2017.08.10 iOS SDK 2.0.0.0

新增支持一键解绑该别名下对应的所有用户。 优化 SDK 解决已知问题,以 Framework 形式提供 SDK 库。 扩展 SDK(GtExtensionSdk)新增资源释放接口,防止超时处理导致的问题。

......
2017.08.03 Android SDK 2.10.3.5

调整代码符合google审核规则 针对海外用户进行联网优化 bug修复

......
2017.07.13 PYTHON SDK 4.0.1.4

修改获取用户状态接口的返回值无法识别的问题

......

文档中心搜索