上云无忧 > 文档中心 > 天翼云一键登录使用教程 - Android客户端接入
一键登录
天翼云一键登录使用教程 - Android客户端接入

文档简介:
本文为您介绍了Android客户端如何接入一键登录功能。 1.开发环境配置。 注意事项 : 一键登录服务必须打开蜂窝数据流量并且手机操作系统给予应用蜂窝数据权限才能使用。
*产品来源:中国电信天翼云。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

1.开发环境配置

注意事项 :

  • 一键登录服务必须打开蜂窝数据流量并且手机操作系统给予应用蜂窝数据权限才能使用。
  • 取号请求过程需要消耗用户少量数据流量(国外漫游时可能会产生额外的费用)。
  • 一键登录服务目前支持中国移动4G 、5G和中国电信 4G、5G中国联通 4G、5G网络。

1.1接入前说明

1.请在天翼云官网一键登录产品帮助中心-开发指南-SDK版本发布中下载获得最新版本SDK。

2.正确配置包名与签名。

3.正确配置 appId、appSecret。

1.2 搭建开发环境

1.在 Eclipse/AS 中建立你的工程。

2.将*.aar(SDK)包拷贝到项目工程的libs目录下,如果没有可新建。

3.在 工程的 build.gradle 文件添加:

dependencies {

implementation(name: 'sdk包名', ext: 'aar')}复制

4.在工程的app/build.gradle目录下添加:

repositories {flatDir {
dirs 'libs'
}
}复制

5.混淆规则

在Proguard混淆文件中增加以下配置:

-dontwarn com.example.cfYun.sdk.**
-keep class com.example.cfYun.**{*;}
-keep class cn.com.chinatelecom.account.**{*;}
-dontwarn com.sdk.**
-keep class com.sdk.** { *;}复制

6.权限申请

<uses-permission android:name="android.permission.INTERNET" />复制

2.SDK方法说明

2.1 初始化

使用拉取授权页功能前必须先进行初始化操作,建议放在 Application 的 onCreate() 方法中

代码说明:

IdealSplash.initSdk(context, appid,appSecret);复制

**注:**初始化V1.0.3版本以上都需加 appSecret参数;

参数说明:

参数 类型 说明
context context 调用者的上下文环境,其中 activity 中 this 即可以代表。
appid String 应用的appId
appSecret String 应用秘钥

成功响应:

参数 类型 说明
msg String Success
code Int 200
operatorType String 运营商类型
userId String 用户Id

初始化结果回调方法示例:

initCallOnClick.getInstance().setOnclickCallBack(new initCallBack() {@Override

public void initCallBack(String response) {}复制

2.2 预取号

代码说明:

preLogin(context, CustomCallBack);复制

参数说明:

参数 类型 说明
context context 调用者的上下文环境,其中 activity 中 this 即可以代表。
CustomCallBack CustomCallBack SDK接口CustomCallBack 回调

成功响应:

参数 类型 说明
resultCode String 0
operatorType String 运营商类型
resultMsg String 调用成功

2.3 拉取授权页

代码说明(全屏授权页):

getToken(context, onenessConfig(), CustomCallBack);复制

代码说明(弹窗授权页):

getToken(context, onenessDialogConfig(), CustomCallBack);复制

参数说明:

参数 类型 说明
context context 调用者的上下文环境,其中 activity 中 this 即可以代表。
CustomCallBack CustomCallBack SDK接口CustomCallBack回调
OnenessAuthThemeConfig 或OnenessAuthThemeDialogConfig interface 授权页接口(全屏,弹窗)

成功响应:

参数 类型 说明
resultCode String 0
operatorType String 运营商类型
token String 登录加密token

2.4 获取真实加密手机号

详见《一键登录服务端接入文档》。

代码示例 详见demo。

3.授权页界面

3.1 授权页规范

1.以下所有 API 接口中涉及到的资源需要放置在 drawable 目录下。

2.以下所有 API 接口中如果涉及到顶部偏移和底部偏移的接口,X 相对于屏幕左侧而言 ,Y相对于屏幕顶部而言,Y_B相对屏幕底部而言,单位为dp。

3.2 授权页配置

授权页背景

方法 参数 说明
setAuthBGImgPath authBGImgPath: String 设置授权页面背景

状态栏

方法 参数 说明
setStatusBar statusBarColor:Int 设置状态栏颜色

标题栏

方法 参数 说明
setNavHeight navHeight:Int 设置标题栏高度
setNavText navText:String 设置标题栏标题内容(默认居中)
setNavTextColor navTextColor:String 设置标题栏字体颜色
setNavTextSize navTextSize:Int 设置标题栏字体大小
setReturnStyle navReturnImage:StringnavReturnImageHeight :IntnavReturnImageWeight:IntnavReturnImgOffsetX:Int 设置标题栏返回按钮图片,宽度,高度,X轴偏移量

Logo

方法 参数 说明
setLogoStyle logoImage:StringlogoImageWeight:IntlogoImageHeight:IntlogoImgOffsetY:IntlogoImgOffsetY_B:IntlogoImgOffsetX:Int 设置Logo样式:Logo图片,宽度,高度,Y轴偏移量,Y_B偏移量,X轴偏移量

认证服务

方法 参数 说明
setSloganView sloganColor:IntsloganTextSize:IntsloganOffsetX:IntsloganTexOffsetY:Int 设置认证服务样式:字体颜色,字体大小,X轴偏移量(默认值0 居中),Y轴偏移量

手机掩码

方法 参数 说明
setNumberColor numberColor:Int 设置手机掩码字体颜色
setNumberSize numberSize:Int 设置手机掩码字体大小
setNumberOffsetX numberOffsetX:Int 设置手机掩码X轴偏移量(默认值0,居中显示)
setNumFieldOffsetY numFieldOffsetY:Int 设置手机掩码Y轴偏移量
setNumberThickness numberThickness:boolean 设置手机号掩码字体加粗 (默认不加粗)

登录按钮

方法 参数 说明
setLogBtnImgPath logBtnImgPath:String 设置登录按钮背景
setLogBtnText logBtnText:StringlogBtnTextColor:IntogBtnTextSize:Int 设置登录按钮文本内容,字体颜色,字体大小
setLogBtnOffsetY logBtnOffsetY:Int 设置登录按钮Y轴偏移量
setLogBtnWeightHeight logBtnHeight:Int 设置登录按钮高度
setLogBtnMarginLeftRight logBtnMarginLeft:IntlogBtnMarginRight:Int 设置登录按钮距离屏幕左右的间距

其他登录方式

方法 参数 说明
setSwitchStyle switchText:StringswitchTextColor:IntswitchTextSize:IntswitchTextOffsetY:int 设置其它登录方式样式:文本内容,字体颜色,字体大小,Y轴偏移量(默认居中显示)

协议条款

方法 参数 说明
setCheckBoxImgPath checkBoxPicStr:StringunCheckBoxPicStr:StringcheckBoxWeight:IntcheckBoxHeight:Int 设置协议勾选框样式:选中图片,未选中图片,宽度,高度
setPrivacyStateSelect privacyStateSelect:boolean 设置协议勾选项默认状态,false=未选中,true=选中
setPrivacyTextBefore privacyTextBefore:String 设置协议前缀
setPrivacyTextAndUrl1 clause1:StringclauseUrl1:String 设置自定义协议1,协议名称,协议URL(不设置协议 ,值为null)
setPrivacyTextAndUrl2 clause2:StringclauseUrl2:String 设置自定义协议2,协议名称,协议URL(不设置协议 ,值为null)
setPrivacyTextAndUrl3 Clause3:StringclauseUrl3:String 设置自定义协议3,协议名称,协议URL(不设置协议 ,值为null)
setPrivacyTextAndUrl4 Clause4:StringclauseUrl4:String 设置自定义协议4,协议名称,协议URL(不设置协议 ,值为null)
setPrivacyTextAfter privacyTextAfter:String 设置协议后缀
setPrivacySplit privacySplit1:StringprivacySplit2:String 设置协议条款连接语:x和x与y
setPrivacyText privacyTextSize:IntclauseBaseColor:StringclauseColor:String 设置协议条款字体大小,基本条款字体颜色,自定义协议条款颜色
setPrivacyMargin privacyMarginLeft:StringprivacyMarginRight:String 设置协议部分包括勾选框 距离屏幕左右的间距
setPrivacyOffsetY_B privacyOffsetY_B:Int 设置协议部分距屏幕底部距离
setPrivacyOffsetY privacyOffsetY:Int 设置协议部分距屏幕顶部距离(不使此方法时 设置值为0)
setPrivacyBookSymbol privacyBookSymbol:boolean 协议名称是否加书名号
setPageWindowMode windowWidth:IntwindowHeight:Int 设置弹框大小
setIsBottom isBottom:Boolean 设置是否为底部弹窗 =true,false =居中弹窗

自定义接口

通过设置该回调接口,可以对以下事件进行定制化处理。

.setAuthThemListener(new AuthThemListener() {
 /**
 * 未勾选协议回调
 * @param param  Context
 */  
@Override
    public void onUnCheckedState(Context context) {}
 /**
 * 关闭按钮回调
 * @param param  Context
 */  
  @Override
    public void onReturnClick(Context context) {}
 /**
 * 添加自定义View
 * @param param  Context
 * @param param  relativeLayout
 */  
    @Override
    public void onAddCustomLayout(Context context, RelativeLayout relativeLayout){}
 /**
 * 其他登录方式点击事件回调
 * @param param  Context
 */  
    @Override
    public void onOtherLogin(Context context) {}
});
 /**
 * 勾选框监听
 * @param param  Context
 * @param param  aBoolean true:勾选  false:未勾选
 * */
    @Override
    public void onCheckedStateChange(Context context, Boolean aBoolean) {}
 /**
 * 登录按钮点击事件回调
 * @param param  Context 
 */ 
     @Override
     public void setLogBtnClickListener(Context context) {}复制

4.授权页关闭方法

代码示例:

IdealSplash.quitAuthPage(context);复制

5.本机号码校验

5.1 认证接口获取Token

getMobileAuthToken(Context context, phone, mobileAuthCallback);复制

参数说明:

参数 类型 说明
context context 调用者的上下文环境,其中 activity 中 this 即可以代表。
phone String 需要校验的手机号码
mobileAuthCallback mobileAuthCallback Sdk 自定义接口

成功响应:

参数 类型 说明
resultCode context 0
operatorType String 运营商类型
resultMsg String 调用成功
token String 校验加密token

获取token回调代码示例:

mobileAuthCallback = new MobileAuthCallback() {        @Override

        public void onResult(String result) {
}复制

5.2 请求客户服务器进行校验

详见一键登录服务端接入文档。

代码示例详见 demo。

6.其他请求方法

1.日志输出开关:true: 开启 false: 不开启。

IdealSplash.setDebug(Boolean boolean)复制

2.判断设备移动数据网络是否开启:返回参数:true: 开启 false: 未开启。

IdealSplash.isMobileNetwork(context)复制

3.获取SDK版本号 返回String类型。

IdealSplash.getSDKVersion复制

4.获取运营商类型

JSONObject getOperatorType(Context context)

响应参数:

参数 类型 说明
operatorType String 类型:
CM:移动
CU:联通
CT:电信
UN:未知

7.返回码说明

详见一键登录服务端接入文档。

相似文档
  • 本文为您介绍了IOS客户端如何接入一键登录功能。 1.iOS SDK接入指南。 1.1 注意事项。 使用一键登录服务用户须打开蜂窝数据流量,取号过程中会消耗用户少量的流量。 sdk 中自带有授权页面的 UI 逻辑,开发者可通过 SDK 接口暴露参数修改部分 UI 界面样式。
  • 本文为您介绍了H5客户端如何接入一键登录、本机号码校验功能。 1.准备工作。 1.1 概述。 本文是H5一键登录、本机号码校验的接入文档,用于指导H5一键登录的接入,并详细描述集成步骤和使用方法。
  • 本文将为您介绍一键登录产品UniApp接入相关内容。 1.Uni SDK接入指南。 1.1 注意事项。 使用一键登录服务用户须打开蜂窝数据流量,取号过程中会消耗用户少量的流量; SDK中自带有授权页面的UI逻辑,开发者可通过SDK接口暴露参数修改部分UI界面样式;
  • 本文为您介绍了服务端如何接入一键登录功能。 1.APP获取授权手机号。 Path:/oauth-api/oauth/getMobilePhoneV2/{userId}/{appId} Method:POST。 接口描述:获取授权手机号。 请求参数。
  • 本文为您介绍一键登录产品运营商相关代码及说明。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部