Skip to content

GetuiLaboratory/getui-apicloud-gysdk-android

Repository files navigation

集成配置

  1. 个推开放平台注册帐号,并创建应用,获取 APPID 参数。

  2. APICloud Studio 中替换您APP应用参数

<meta-data name="GETUI_APPID" value="替换您在个推https://www.getui.com/注册的APPID"/>
<meta-data android:name="GT_INSTALL_CHANNEL" android:value=""/>

接口文档

1. initialize

初始化个推SDK。

参数:

  • callback(ret, err): function,当获取到 ret.typeGTCountSDKDidReceiveGtcid 时,表示初始化成功。

功能: 初始化个推SDK,设置通用回调上下文。

示例:

var gy;
apiready = function () {
    gy = api.require('GetuiGy');
    gy.initialize(callback);
    var params = {
        debug: '1',
        preLoginTimeout: '10',
        loginTimeout: '10'
    };
    gy.preSetParams(params);
    var startparam = {
        appId: '个推平台申请'//仅iOS需要填写,android在meta-data中
    };
    gy.startSdk(startparam);
}
function callback(ret, err) {
    alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
    var log;
    switch (ret.type) {
        case 'GTCountSDKDidReceiveGtcid':
            log = 'gtcid:' + ret.cid;
            break;
    }
    if (log) {
        console.log(log);
    }
}

2. preSetParams

预设置参数。

参数:

  • debug: String,是否开启调试模式("1" 表示开启)
  • preLoginTimeout: String,预登录超时时间(单位:秒)
  • loginTimeout: String,登录超时时间(单位:秒)

功能: 设置调试模式及预登录、登录的超时时间。

示例:

var params = {
    debug: '1',
    preLoginTimeout: '10',
    loginTimeout: '10'
};
gy.preSetParams(params);

3. startSdk

启动个推SDK。

参数:

  • appId: String,仅 iOS 需要,例如 '5xpxEg5qvI9PNGH2kQAia2'

功能: 初始化并启动个推SDK,设置回调以处理成功或失败的结果。成功时返回 gtcid(个推用户ID)。

示例:

var startparam = {
    appId: '5xpxEg5qvI9PNGH2kQAia2'
};
gy.startSdk(startparam);

4. gyuid

获取个推用户ID。

参数:

功能: 获取当前用户的 gyuid。若未预登录,返回错误提示“请先预登录”。

示例:

gy.gyuid(function (ret, err) {
    alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
    console.log('gyuid:' + ret.data);
});

5. getCurrentCarrierCount

获取运营商数据(仅限 iOS)。

参数:

功能: 在 Android 平台上不支持,返回错误提示“Android 不支持”。

示例:

function getCurrentCarrierCount() {
    gy.getCurrentCarrierCount(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('getCurrentCarrierCount:' + ret.data);
    });
}

6. currentNetworkInfo

获取当前网络信息(仅限 iOS)。

参数:

功能: 在 Android 平台上不支持,返回错误提示“Android 不支持”。

示例:

function currentNetworkInfo() {
    gy.currentNetworkInfo(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('currentNetworkInfo:' + ret.data);
    });
}

7. preGetToken

预获取认证 Token。

参数:

功能: 执行预登录操作,提前判定当前网络环境是否适合一键认证。

示例:

function preGetToken() {
    gy.preGetToken(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('preGetToken:' + JSON.stringify(ret.data));
    });
}

8. isPreGettedTokenValidate

检查预登录 Token 是否有效。

参数:

功能: 检查预登录结果是否有效,返回布尔值。

示例:

function isPreGettedTokenValidate() {
    gy.isPreGettedTokenValidate(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('isPreGettedTokenValidate:' + JSON.stringify(ret.data));
    });
}

9. deletePreResultCache

清理预登录数据。

参数:

功能: 在 Android 平台上不支持,返回错误提示“Android 不支持”。

示例:

function deletePreResultCache() {
    gy.deletePreResultCache(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('deletePreResultCache:' + JSON.stringify(ret.data));
    });
}

10. login

执行一键登录。

参数:

功能: 执行一键登录操作,返回登录结果。

示例:

function login() {
    gy.login(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('login:' + JSON.stringify(ret.data));
    });
}

11. getPhoneVerifyToken

获取手机验证 Token。

参数:

  • phone: String,手机号
  • timeout: Integer,超时时间(单位:毫秒,默认 8000)

功能: 获取用于手机号码验证的 Token。

示例:

function getPhoneVerifyToken() {
    gy.getPhoneVerifyToken(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('getPhoneVerifyToken:' + JSON.stringify(ret.data));
    });
}

12. checkPhoneNumber

校验手机号码。

参数:

  • accessCode: String,访问代码
  • processId: String,进程 ID
  • pn: String,待校验的手机号
  • operatorType: Integer,运营商类型

功能: 校验输入的手机号码是否与本机号码一致。

示例:

function checkPhoneNumber() {
    var param = {
        pn: "15258060511"
    };
    gy.checkPhoneNumber(param, function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('checkPhoneNumber:' + JSON.stringify(ret.data));
    });
}

13. getVersion

获取 SDK 版本号。

参数:

功能: 获取当前个推 SDK 的版本号。若获取失败,返回错误提示“获取版本失败”。

示例:

function getVersion() {
    gy.getVersion(function (ret, err) {
        alert("ret = " + JSON.stringify(ret) + "err = " + JSON.stringify(err));
        console.log('version:' + ret.version);
    });
}

一键认证产品简介

产品说明

“一键认证”产品整合了三大运营商的网关认证能力,支持 Android、iOS 和 H5 三大平台,实现三大运营商网络打通、常见机型全覆盖的效果。“一键认证”简化了登录流程,为用户首次登录 APP 提供畅通无阻的通道,有效减少等待时间,帮助用户快速建立与 APP 的连接。此外,个推“一键认证”能有效保障用户账号安全,降低因密码设置简单或多账号使用同一密码导致的密码破解或泄露风险,同时减少短信验证被劫持的风险,为用户账号提供安全的“保护伞”。

“一键认证”主要包括两种形式:

  1. 一键登录:具备授权页面,APP 开发者经用户授权后可获得号码,适用于注册、登录等场景。
  2. 本机号码校验:不返回号码,仅返回待校验号码与本机号码是否一致的结果,适用于基于手机号码的安全风控场景。

一键登录用户认证流程如下图所示:

img

一键登录(App 和 H5)业务流程

:预登录操作用于提前判定当前网络环境是否适合使用一键认证,建议在登录操作前调用,不影响登录流程,降低对用户体验的影响。例如:初次打开 APP、进入个人中心页(“我的”)等。

本机号码校验(App)业务流程

img

本机号码校验(H5)业务流程

img

产品优势

  1. 用户体验优化
    秒级登录体验,提升用户转换率与留存率。

  2. 安全能力提升
    采用运营商网关认证技术,避免短信被劫持。

  3. 风险场景识别
    识别羊毛党、黄牛等风险设备,保障业务安全。

  4. 并发服务稳定
    服务稳定高效,支持高并发处理认证请求。

  5. 全天候技术支持
    专业技术支持团队 7x24 小时专人专线服务。

接入说明

  1. 个推开发者中心注册开发者账号;
  2. 登录进入开发者中心-应用管理页面,创建应用,设置应用名称、应用类型、Android 设置包名等;
  3. 下载 SDK 并集成到 App;
  4. 当出现问题时,建议:

img

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published