Android集成说明

更新时间:2022-05-24 11:26:37

开发环境要求

应用平台

适用版本

开发环境

Android

Android 6.0(SDK API 21)及以上系统

适用Java和Kotlin

JAVA开发语言项目配置

引入EsignSDK.aar

将EsignSDK.aar文件引入到APP模块中src/libs/下。

注:aar包在【移动端SDK】文档中最下方资源下载里。

添加aar包引用依赖

Kotlin开发语言项目配置

添加Kotlin相关依赖

引用Kotlin插件

权限配置

在AndroidManifestx.xml文件里添加权限声明

<!-- 获取GSM网络信息状态,如当前的网络连接是否有效 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 允许访问Wi-Fi网络状态信息 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 允许获取Wi-Fi网络状态改变信息 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!-- 访问网络 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 读取手机状态 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- SD 卡读写权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- 相机权限 -->
<uses-permission android:name="android.permission.CAMERA"/>
<!-- 添加H5Activity的声明 -->
<activity android:name="com.esign.esignsdk.h5.H5Activity"
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
android:launchMode="singleTask">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data 
              android:host="facesdk" 
              android:scheme="esign" 
         />
    </intent-filter>
</activity>

注意:android:host和android:scheme的值可由开发者自定义,用于支付宝刷脸后回跳APP,对应Scheme入参格式为:esign://facesdk

例如,获取实名认证Url接口或创建签署流程接口中参数redirectUrl需填写为 esign://facesdk。

SDK接口说明

SDK所需的依赖:

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.0'//版本 23以上(必须)
implementation 'com.android.support.constraint:constraint-layout:1.1.3'

//运行时权限
implementation'pub.devrel:easypermissions:1.3.0'
implementation 'com.google.code.gson:gson:2.8.6'
implementation 'org.greenrobot:eventbus:3.2.0'

implementation "com.squareup.retrofit2:retrofit:2.4.0"
implementation "com.squareup.retrofit2:converter-gson:2.4.0"
implementation "com.squareup.retrofit2:adapter-rxjava2:2.4.0"
implementation 'com.squareup.okhttp3:logging-interceptor:3.9.0'

implementation "io.reactivex.rxjava2:rxjava:2.1.5"
implementation "io.reactivex.rxjava2:rxandroid:2.0.1"

SDK初始化

请求方法:EsignSdk.getInstance().init(String key,String license)

接口说明:传入开放平台的licenseKey和license文件内容进行激活SDK。

请求参数:

请求参数

类型

必填

参数描述

key

string

licenseKey

license

string

license文件内字符串

请求示例:

SDK加载H5页面

请求方法:EsignSdk.getInstance().startH5Activity(Activity activity, String url)

接口说明:SDK加载e签宝H5页面入口

请求参数:

请求参数

类型

必填

参数描述

activity

Activity

当前Activity

url

string

需要打开的url(如实名认证Url或签署链接Url)

请求示例:

回调处理

请求方法:在MainActivity的processResult进行处理

接口说明:processResult添加下面的代码

请求示例:

返回结果在AuthEvent.result中是Json格式

响应格式:

{key:XXX,res:XXX}

参数名称

必填

业务类型

示例

key

sign:签署场景

realName:实名认证

will:意愿认证


res

fail:失败

success:成功


注:签署过程中先返回key为will的结果,再返回key为sign的结果。

功能方法说明

SDK关闭H5页面

请求方法:EsignSdk.getInstance().finishH5Activity()

接口说明:在需要关闭H5页面的地方调用

设置实名Scheme地址

请求方法:EsignSdk.getInstance().setRealScheme()

接口说明:处理流程结束之后的错误页面

设置签署Scheme地址

请求方法:EsignSdk.getInstance().setSignScheme()

接口说明:处理流程结束之后的错误页面

设置标题栏的高度

请求方法:EsignSdk.getInstance().setTitleHeight(int)

设置标题的字体大小

请求方法:EsignSdk.getInstance().setTitleSize(int)

设置返回icon的大小

请求方法:EsignSdk.getInstance().setBackIconSize(int)

设置H5页面默认标题

请求方法:EsignSdk.getInstance().setTitle(int)

设置标题背景颜色

请求方法:EsignSdk.getInstance().setTitleColor(int)

设置标题字体颜色

请求方法:EsignSdk.getInstance().setTitleTextColor(int)

设置关闭按钮的字体大小

请求方法:EsignSdk.getInstance().setCloseSize(int)


设置关闭按钮的字体颜色

请求方法:EsignSdk.getInstance().setCloseTextColor(int)

设置打开H5页面是否显示进度条

请求方法:EsignSdk.getInstance().setShowLoading(boolean)

接口说明:打开H5会进行key和license校验,网络原因有时会白屏一会

设置打开H5页面进度条的颜色

请求方法:EsignSdk.getInstance().setCircleColor(int)

设置打开H5页面进度条的半径大小

请求方法:EsignSdk.getInstance().setCircleSize(int)

设置打开H5页面进度条的宽度

请求方法:EsignSdk.getInstance().setCircleWidth(int)

设置刷脸页面录制进度条颜色

请求方法:EsignSdk.getInstance().setArcColor(int)


设置刷脸页面开始录制按钮背景颜色

请求方法:EsignSdk.getInstance().setRecordBtnBgColor(int)

设置刷脸页面开始录制按钮文本颜色

请求方法:EsignSdk.getInstance().setRecordBtnTextColor(int)

如果SDK需要混淆,混淆规则如下

下载地址【请点击

我要纠错