LightSDK.native.safekeyboardShow

功能描述

通过js展现安全键盘

支持格式

Json

请求参数:

字段 可选 类型及范围 说明
textShow string Plain:明文显示,不加密(当textShow设置为Plain时,encryptMode无论设置成什么都不加密)。DelayAsterisk:字符0.5秒后变为星号。InstantAsterisk:字符输入后直接变为星号。默认为InstantAsterisk配置(大小写不敏感,后面类型为string的配置项一样)
disorderEffect string appear:首次打开键盘时就乱序 click:点击按钮时才乱序,appearandclick:打开键盘就乱序且点击按钮也乱序。若无配置或配置字符串不符合这三个,则默认为click效果。注意:该字段须配合disorder字段一起使用。
disorder string none:不乱序。number:只有数字乱序。numberAndAlpha:数字字母都乱序。若无配置或配置字符串不符合这三个,则默认为none。
pressEffect string default:按钮点击后有点击效果,none:没有点击效果。默认为default。
keyboardType string number:数字键盘,alpha:字母键盘,symbol:符号键盘,idcard:身份证键盘,decimal:小数键盘。配置的组合值支持4种,见表格下方描述。
maxLength int 设置最大输入长度,默认为16
encryptMode string 设置加密方式,可选项有:AES(16个倍数的任意字符)、RSA(一大串字符)、MD5、SM2(x&y)、SM3(无)、SM4(16个任意字符)。不配置默认为MD5加密。
secretKey string 密钥,若指定加密方式需要密钥则必须传递,否则不需要传递。若加密方式为SM2则传入的x,y密钥之间用‘&’符号连接,例如: “aaaaaaa&bbbbbb”。若加密方式为RSA,则传入PEM/base64格式,以”—–BEGIN PUBLIC KEY—–”开头,”—–END PUBLIC KEY—–”结尾。
titleText string 设置品牌条和空格键文案(未配置spaceBtnImage和brandImage时生效),不配置或者配置字符串为空默认为“恒生安全输入键盘”。
spaceBtnImage string 设置键盘空格按钮图片,为gmu/gmu_icon目录下的本地图片,相对路径且不包括文件后缀,如使用图片为gmu/gmu_icon/test.png, 则此参数为test,不配置则字母键盘显示titleText设置的文案,数字键盘不显示(图片大小在151pxX22px以内,仅支持格式:png,大小不超过1MB)
brandImage string 设置品牌条品牌图片,为gmu/gmu_icon目录下的本地图片,相对路径且不包括文件后缀,如使用图片为gmu/gmu_icon/test.png, 则此参数为test,不配置则显示titleText设置的文案(图片大小在255pxX22px以内,仅支持格式:png,大小不超过1MB)
keyboardHeaderType string brand:仅显示品牌条,input:仅显示输入框,brandinput:显示品牌条和输入框,默认为brandinput

注意:keyboardType配置的组合值支持4种:number|alpha、alpha|symbol、number、alpha|number|symbol。三者之间配置顺序可改变。默认为alpha|number|symbol,注意idcard、decimal只能单独使用,不能组合使用。

请求调用示例

示例一:

params={
"textShow" :"InstantAsterisk",
"disorder" :"numberAndAlpha",
"pressEffect" :"default",
"keyboardType" :"alpha",
"maxLength" : 11,
"encryptMode" :"MD5",
"titleText" :"adasdasd",
}
LightSDK.native.safekeyboardShow(params,cb);

示例二:

params={
"textShow" :"InstantAsterisk",
"disorder" :"numberAndAlpha",
"pressEffect" :"default",
"keyboardType" :"alpha",
"maxLength" : 11,
"encryptMode" :"RSA",
"titleText" :"adasdasd",
"secretKey":"-----BEGIN PUBLIC KEY-----\n" +
"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCNs2JiPFa38NgrTb9Rejtxg9EO\n" +
"kOf3xju3xjalXYQceNl5/huTO1WrCYwBalhHG2pE3Gw7GulKnxK7nq+oKwxSsp3f\n" +
"nNw1vUEKnQB6KXtYA3/Z9SJGeJ65T/pX4/GxHR2tQJ2N2++JB2+sRA/+tEzr2jj/\n" +
"+V2Dj+r/WiMWSPMBJQIDAQAB\n" +
"-----END PUBLIC KEY-----"
}
LightSDK.native.safekeyboardShow(params,cb);

返回值说明

字段名 字段类型 说明
text string 输入的字符串
strength int 密码强度,1:弱,2:中,3:强
cipherText string 十六进制密文

返回字段示例

"data":
{
"text":"password",
"strength":1,
"cipherText":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqPvovSfXcwBbW8cKMCgwqNpsYuzF8R",
}

注意事项

需要在config.js配置文件中做以下配置:

module.exports = {
plugins:{
"safekeyboard": {}
}
};

截图实例

调用安全键盘后:(keyboardHeaderType=brandinput)

调用安全键盘后:(keyboardHeaderType=brand)

调用安全键盘后:(keyboardHeaderType=input)

事件回调

点击安全键盘右上角完成按钮、安全键盘右下角完成按钮(仅限类型为number|alpha或alpha|symbol)、点击非安全键盘区域的回调示例:

{
"info": {
"error_code": "0",
"error_message": "success"
},
"data": {
"finishedText": "inputFinished"
}
}