faceVerify

来自于:开发者立即使用

概述

本模块封装了一登的SuperID SDK,快速整合人脸识别功能,让用户通过刷脸的提高身份验证效率。开发者只需在产品中嵌入本模块,产品即可具备人脸识别功能,让用户通过刷脸完成身份验证,不再需要通过密码、卡券、二维码等方式。

不能同时添加的模块:alarmNotification

注意事项

  • 开发者需要到一登的开发者中心,注册证号并添加应用,然后获取SUPERID_APPKEY和SUPERID_SECRET,配置到config文件中

  • 填写应用签名时,通过下载使用平台提供的 签名工具 安装到安卓设备,输入准备集成的工程包名,获取应用MD5签名

配置 config.xml 文件:

针对 android 平台配置方法:

  • 配置示例:

    <meta-data
            name="SUPERID_APPKEY"
            value="bf1acab2de4925b9cd624819" />
    <meta-data
        name="SUPERID_SECRET"
        value="f7d6d005f7cb33456be98c37" />

针对 ios 平台配置方法:

  • 配置示例:

<feature name="faceVerify">
    <param name="appID" value="bf1acab2de4925b9cd624819" />
    <param name="appSecret" value="f7d6d005f7cb33456be98c37" />
</feature>

模块接口

login

一登 登录授权 login({params},callback(ret))

params

phone:

  • 类型:数字
  • 描述:(可选项)传入用户的手机号码,作为一登账号

callback(ret)

ret:

  • 类型:JSON 对象
  • 描述:用户信息说明
  • 内部字段:
{
    status: true,        //布尔类型;是否成功返回
    openid:'******',     //字符串类型,(仅在安卓客户端这样返回)开发者应用生成的openid

    userInfo: {        //JSON 对象;用户信息
       app_uid:'',     //(仅在iOS客户端这样返回)
       openId:'',      //(仅在iOS客户端这样返回)
       phone: '',      //字符串类型;用户手机号
       name: '',       //字符串类型;用户名称
       email: '',      //字符串类型;用户邮箱
       avatar:'',      //字符串类型;用户的头像url
       regioncode:'',  //字符串类型;区域编号
       persona:{       //JSON对象;用户画像信息
               gender:'',  //字符串类型;性别
               tags:[      //数组类型;外貌标签
                   "eyeglasses"
               ],
               location:{  //JSON对象,位置
                   country:'',   //字符串类型;国家
                   province:'',  //字符串类型;省份
                   city:''       //字符串类型;城市
               }
               generation:'',   //字符串类型;年代
               character:''     //字符串类型;性格
       },
       group_uid:''       //字符串类型
    }      
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code:0,           //数字类型;错误码
    msg:''            //字符串类型;错误信息
}

示例代码

    var faceVerify = api.require('faceVerify');
    faceVerify.login(function(ret){
         if(ret.status) {
           api.alert({msg:JSON.stringify(ret)});
         } else {
            api.alert({msg:JSON.stringify(err)});
         }
   });

可用性

iOS系统,android 系统

可提供的1.0.0及更高版本

logout

退出登录请求

logout()

示例代码

    var faceVerify = api.require('faceVerify');
    faceVerify.logout();

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

isOpenIDAuthorized

判断用户的openID是否已经授权绑定一登账号

isOpenIDAuthorized(params, callback(ret))

params

openid:

  • 类型:字符串;
  • 描述:(必选项)需要判断是否授权的用户uid(ios不支持此参数)

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:是否授权信息
  • 内部字段:
{
    status: true,        //布尔类型;是否授权
    errMsg:''            //字符串;错误信息(iOS无此参数)
}

示例代码

    var faceVerify = api.require('faceVerify');
    var params = {openid:'34di93e93939'}
    faceVerify.isOpenIDAuthorized(params, function(ret){
        alert(JSON.stringify(ret));
    });

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

userCancelAuthorization

解除当前用户一登账号的授权绑定

userCancelAuthorization(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:解除绑定信息
  • 内部字段:
{
    status: true,        //布尔类型;是否授权
    errMsg:''            //字符串;错误信息(iOS没有此参数)
}

示例代码

    var faceVerify = api.require('faceVerify');
    faceVerify.userCancelAuthorization(function(ret){
        alert(JSON.stringify(ret));
    });

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

faceLoginWithPhoneUid

调用用户的手机号登陆

faceLoginWithPhoneUid(params, callback(ret))

params

phone

  • 类型:字符串
  • 描述:(必选项) 用户手机号

name

  • 类型:字符串
  • 描述:(必选项) 用户昵称

userInfo

  • 类型:JSON对象
  • 描述:(必选项) 用户信息,用户自定义信息,key和value自定义
  • 内部字段
{
    email:'heheheda@apicloud.com',
    authID:'123456789'
}

uid

  • 类型:字符串
  • 描述:(可选项)开发者应用用户的唯一uid
  • 默认值:无

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true,        //布尔类型;是否成功返回
    openid:'******',     //字符串类型,开发者应用生成的openid

    userInfo: {        //JSON 对象;用户信息
       phone: '',      //字符串类型;用户手机号
       name: '',       //字符串类型;用户名称
       email: '',      //字符串类型;用户邮箱
       avatar:'',      //字符串类型;用户的头像url
       regioncode:'',  //字符串类型;区域编号
       persona:{       //JSON对象;用户画像信息
               gender:'',  //字符串类型;性别
               tags:[      //数组类型;外貌标签

               ],
               location:{  //JSON对象,位置
                   country:'',   //字符串类型;国家
                   province:'',  //字符串类型;省份
                   city:''       //城市
               }
               generation:'',  //字符串类型;年代
               character:''    //字符串类型;性格
       },
       group_uid:''       //字符串类型
    }      
}

示例代码

var faceVerify = api.require('faceVerify');
var params = {
    phone:'15116919979',
    name:'lanjingmin',
    userInfo : {
        email:'heheheda@apicloud.com',
        authID:'123456789'
    },
    uid : 123456788
};

faceVerify.faceLoginWithPhoneUid(params,function(ret){
    alert(JSON.stringify(ret));
});

可用性

android系统

可提供的1.0.0及更高版本

updateUserInfo

更新上传用户个人信息至一登用户账号

updateUserInfo(params, callback(ret))

params

userInfo

  • 类型:JSON对象
  • 描述:(必选项) 用户信息,用户自定义信息,key和value自定义
  • 内部字段
{
    email:'heheheda@apicloud.com',
    authID:'123456789'
}

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:状态返回信息
  • 内部字段:
{
    status: true,        //布尔类型;是否授权
    errMsg:''            //字符串;错误信息(iOS无此参数)
}

示例代码

var faceVerify = api.require('faceVerify');
var params = {
    userInfo : {
        email:'heheheda@apicloud.com',
        authID:'123456789'
    }
};

faceVerify.updateUserInfo(params, function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS、android系统

可提供的1.0.0及更高版本

uploadUserBehaviourEvent

行为属性上传接口,正常情况不调用。

uploadUserBehaviourEvent(params, callback(ret))

params

tag

  • 类型:字符串
  • 描述:(必选项) 行为事件的类型

attributes

  • 类型:JSON对象
  • 描述:(必选项) 该事件的属性字典,key和value自定义

action

  • 类型:JSON对象
  • 描述:(必选项) 该事件的用户操作字典, key和value自定义

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:状态返回信息
  • 内部字段:
{
    status: true,        //布尔类型;上传是否成功
    errMsg:''            //字符串;错误信息 (ios无此参数)
}

示例代码

var faceVerify = api.require('faceVerify');
var params = {
    tag : 'listenMusic',
    attributes:{
        singleName:'oopp',
        singer:'ladygaga'
    },
    action:{
        favourit:1,
        shareChannel:'sina'
    }
};

faceVerify.uploadUserBehaviourEvent(params, function(ret){
    alert(JSON.stringify(ret));
})

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

faceVerify

用户登录授权成功后,调用人脸验证功能即可实现二次验证,实现签到等功能的需求。

faceVerify(params, callback(ret))

params

count

  • 类型:数字类型
  • 描述:(可选项) 验证失败重试次数
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:状态返回信息
  • 内部字段:
{
    status: true,        //布尔类型;是否成功
    errMsg:''            //字符串;错误信息
}

示例代码

var faceVerify = api.require('faceVerify');
var params = {
    count : 0
}
faceVerify.faceVerify(params, function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS系统,android系统

可提供的1.0.0及更高版本

getFaceFeatures

获取人脸属性

一登人脸属性功能是基于一登账号。当用户的一登账号授权开发者的应用以后,即可使用人脸属性高级功能。人脸属性高级功能通过开启摄像头识别用户人脸,返回当前用户的人脸属性,包括(表情、脸部坐标、微笑值、是否带眼镜、胡须密度等)。开发者可以使用这些参数为用户做更精准的数据推送、图片美化等自定义操作。

开发者注册后,可申请开通的高级功能有【性别】、【年龄】、【微笑】、【带眼镜】、【胡须密度】、【表情】、【颜值】、【动作】、【闭眼】、【张嘴】、【人脸关键点】、【人脸检测框】等,申请高级接口的流程如下:

1 注册成为一登开发者

2 在一登开发者中心创建应用

3 在应用栏目中的【功能权限】进行申请

获取到的人脸属性的字段参考

getFaceFeatures(callback(ret))

callback(ret)

ret

  • 类型:JSON对象
  • 描述:人脸属性字典
  • 内部字段
{
    status: true,        //布尔类型;是否成功
    featureInfo:''       //JSON对象;人脸属性值, 请参考人脸属性的字段
}

err

  • 类型:JSON对象
  • 内部字段
{
    code: 0,        //数字类型;错误码
    msg:''          //JSON对象;错误信息
}

示例代码

var faceVerify = api.require('faceVerify');
faceVerify.getFaceFeatures(function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS系统,android系统

可提供的1.0.0及更高版本