secverify 1.0.0 secverify: ^1.0.0 copied to clipboard
The operator gateway takes the number and verifies the mobile phone number in one second.
import 'package:flutter/material.dart';
import 'dart:io';
import 'dart:convert';
import 'package:flutter/services.dart';
import 'package:secverify/secverify.dart';
import 'package:http/http.dart' as http;
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _version = "unkown";
bool _isVerifySupport = true;
@override
void initState() {
super.initState();
preSettings();
isVerifySupport();
if (_isVerifySupport) {
preVerify();
}
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: FirstView(_version, _isVerifySupport),
);
}
void preVerify(){
Secverify.preVerify((Map ret, Map err){
if(err!=null)
{
// showAlert(err.toString(),context);
}
else
{
String rst = ret.toString();
if (ret == null || ret.isEmpty) {
rst = '预登录成功!';
print(rst);
}
// showAlert(rst,context);
}
});
}
void preSettings() {
Secverify.submitPrivacyGrantResult(true);
Secverify.autoFinishOauthPage(false);
Secverify.setDebugMode(false);
Secverify.setTimeOut(5000);
getVersion();
}
Future<void> getVersion() async {
String version;
version = await Secverify.getVersion;
setState(() {
_version = version;
});
}
Future<void> isVerifySupport() async {
bool isVerifySupport = await Secverify.isVerifySupport;
setState(() {
this._isVerifySupport = isVerifySupport;
});
}
}
class FirstView extends StatelessWidget{
String _version;
bool _isVerifySupport;
FirstView(this._version, this._isVerifySupport);
@override
Widget build(BuildContext context) {
return
Scaffold(
appBar: AppBar(title: Text('SecVerify Flutter'),),
body: Center(
child: Column(
children: <Widget>[
Container(
child: RaisedButton(
child: Text("默认样式"),
onPressed: (){
if(_isVerifySupport) {
verify(context);
} else {
showAlert("当前环境不支持", context);
}
},
),
),
Container(
child: RaisedButton(
child: Text("自定义样式"),
onPressed: (){
preSettings();
setPortraitLayout();
if(_isVerifySupport) {
verify(context);
} else {
showAlert("当前环境不支持", context);
}
},
),
),
Text(
"当前版本号: " + _version
),
],
),
),
);
}
void preVerify(BuildContext context){
Secverify.preVerify((Map ret, Map err){
if(err!=null)
{
showAlert(err.toString(),context);
}
else
{
String rst = ret.toString();
if (ret == null || ret.isEmpty) {
rst = '预登录成功!';
}
showAlert(rst,context);
}
});
}
void verify(BuildContext context) {
Secverify.verify((Map ret, Map err) {
if (err != null) {
showAlert(err.toString(), context);
}
else {
String rst = ret.toString();
if (ret == null || ret.isEmpty) {
rst = '登录失败';
showAlert(rst, context);
} else if(ret.containsKey("opToken")){
doLogin(ret, context);
}
}
Secverify.finshOauthPage();
});
}
//需要自己实现这部分
void doLogin(Map ret, BuildContext context) async {
var optoken = ret.containsKey("opToken") ? ret["opToken"] : "";
var token = ret.containsKey("token") ? ret["token"] : "";
var operator = ret.containsKey("operator") ? ret["operator"] : "";
var phoneOperator = ret.containsKey("phoneOperator") ? ret["phoneOperator"] : "";
var md5 = ret.containsKey("md5") ? ret["md5"] : "";
var appkey = ret.containsKey("appkey") ? ret["appkey"] : "";
var params = Map<String, String>();
params["opToken"] = optoken;
params["operator"] = operator;
params["phoneOperator"] = phoneOperator;
params["token"] = token;
params["md5"] = md5;
params["appkey"] = appkey;
var header = Map<String, String>();
header["Content-Type"] = "application/json";
var client = http.Client();
var response = await client.post("http://demo.verify.mob.com/demo/sdkLogin", headers: header, body: json.encode(params));
var _content = response.body;
print(_content.toString());
showAlert(_content.toString(), context);
}
void showAlert(String text, BuildContext context) {
showDialog(
context: context,
builder: (BuildContext context) => AlertDialog(
title: new Text("提示"),
content: new Text(text),
actions: <Widget>[
new FlatButton(
child: new Text("OK"),
onPressed: () {
Navigator.of(context).pop();
},
)
]));
}
void setPortraitLayout() {
if (Platform.isAndroid) {
// 以下是 Android 自定义设置
// 导航栏设置
var customNav= {
"navColor": "#F0C3D6", //导航栏背景颜色
"navText": "一键登录", //导航栏文本内容
"navTextColor": "#ffffff", //导航栏文本颜色
"navHidden": false, //导航栏是否隐藏
"navTransparent": false,//导航栏是否透明
"navCloseImgHidden": false,//导航栏返回图片是否隐藏
"navTextSize": 16,//导航栏文本大小
"navTextBold": false,//导航栏文本是否加粗
"navCloseImgPath": "close.png", //导航栏返回图片地址
"portraitLayout": {
"layoutWidth": 50,//导航栏图片宽度
"layoutHeight": 50,//导航栏图片高度
"layoutLeft": 10,//导航栏图片左间距
// "layoutRight": 30,//导航栏图片右间距
// "layoutTop": 10,//导航栏图片顶部间距
}
};
// 授权页
var customAuthPage= {
// "backgroundImg":"bg.png",//授权页面背景图片地址
"backgroundClickClose": false,//授权页面点击关闭
"fullScreen": false,//是否全屏
"immersiveTheme": true, // 是否沉浸式透明状态栏
"immersiveStatusTextColorBlack": true // 是否修改状态栏意思
};
// 授权页Logo
var customAuthPageLogo= {
"logoImg": "app_icon.png",//logo地址
"logoAlignParentRight": false,//logo是否靠页面右侧
"logoHidden": false,// logo是否隐藏
"portraitLayout": {
"layoutWidth": 80,//logo宽度
"layoutHeight": 80,//logo高度
// "layoutLeft": 30,//logo左间距
// "layoutRight": 30,//logo右间距
"layoutTop": 30,//logo顶部间距
// "layoutBottom": 30,//logo底部间距
}
};
// 手机号码
var customPhoneNumber= {
"numberColor":"#FFCC00",// 脱敏手机号颜色
"numberSize":20,//脱敏手机号大小
"numberAlignParentRight":false,//脱敏手机号是否靠页面右侧
"numberHidden":false,//脱敏手机号是否隐藏
"numberBold":false,//脱敏手机号字体是否加粗
"portraitLayout": {
// "layoutLeft": 30,//脱敏手机号左间距
// "layoutRight": 30,//脱敏手机号右间距
"layoutTop": 130,//脱敏手机号顶部间距
// "layoutBottom": 30,//脱敏手机号底部间距
}
};
// 切换帐号按钮
var customSwitchNumber= {
"switchAccColor": '#FFCC00',//切换登录文本颜色
"switchAccTextSize": 16,//切换登录文字大小
"switchAccHidden": false,//切换登录是否隐藏
"switchAccAlignParentRight": false,//切换登录是否靠屏幕右侧
"switchAccText": '选择其他方式登录',//切换登录文本内容
"switchAccTextBold": false,//切换登录文本是否加粗
"portraitLayout": {
// "layoutLeft": 30,//切换登录左间距
// "layoutRight": 30,//切换登录右间距
"layoutTop": 170,//切换登录顶部间距
// "layoutBottom": 30,//切换登录底部间距
}
};
// 登陆按钮设置
var customLoginBtn= {
"loginBtnImgArr": ["ffffff","000000"],//登录按钮背景图片或者颜色
"loginBtnText": "登录",//登录按钮文本
"loginBtnTextColor": "#F1C4A8",//登录按钮文字颜色
"loginBtnTextSize": 16,//登录按钮文本大小
"loginBtnOffsetRightX": false,//登录按钮右间距
"loginBtnAlignParentRight": false,//登录按钮是否靠屏幕右侧
"loginBtnHidden": false,//登录按钮是否隐藏
"loginBtnTextBold": false,//登录按钮文本是否加粗
"portraitLayout": {
"layoutWidth": 200,//登录按钮宽度
"layoutHeight": 45,//登录按钮高度
// "layoutLeft": 30,//登录按钮左间距
// "layoutRight": 30,//登录按钮右间距
"layoutTop": 200,//登录按钮顶部间距
// "layoutBottom": 30,//登录按钮底部间距
}
};
// 隐私条款设置(切记,不可隐藏)
var customPrivacy= {
"agreementColor": "#00FFDD",//运营商隐私条款颜色和自定义隐私条款文本颜色
"agreementBaseTextColor": "#330F33",//隐私条款其他文字颜色
"agreementTextSize": 16,//隐私条款文字大小
"agreementTextStart": "登录即同意",//隐私条款开头文本
"agreementTextEnd": "并授权获取本机号码",//隐私条款结束文本
"agreementAlignParentRight": false,//隐私条款是否靠屏幕右侧
"agreementHidden": false,//隐私条款是否隐藏
"agreementCmccText": "《中国移动服务协议》",//隐私条款 移动运营商显示文本
"agreementCuccText": "《中国联通服务协议》",//隐私条款 联通运营商显示文本
"agreementCtccText": "《中国电信服务协议》",//隐私条款 电信运营商显示文本
"agreementTextBold": false,//隐私条款文本是否加粗
"agreementTextWithUnderLine": false,//隐私条款是否带下划线
"cusAgreementFirstArray": ['服务协议',
'https://gitee.com/',
'、'],//隐私条款 自定义一
"cusAgreementSecondArray": ['百度协议',
'https://www.baidu.com',
'和'],//隐私条款 自定义二
"cusAgreementThirdArray": ['隐私条款',
'https://gitee.com/',
'、'],//隐私条款 自定义三
"agreementUncheckHintText": "请阅读并勾选隐私协议",//隐私条款 未勾选时提示的文本
"portraitLayout": {
"layoutLeft": 20,//隐私条款左间距
"layoutRight": 20,//隐私条款右间距
"layoutTop": 270,//隐私条款顶部间距
// "layoutBottom": 20,//隐私条款底部间距
}
};
// 隐私条款复选框
var customCheckBox= {
"checkboxImg":["checked.png","uncheck.png"], // 隐私协议checkbox背景图片
"checkboxDefaultState":true, // 隐私协议checkbox默认状态
"checkboxHidden":false,//隐私协议checkbox是否隐藏
"scale": 1.5,
"portraitLayout": {
"layoutWidth": 50,//隐私协议checkbox 返回图标宽度
"layoutHeight": 50,//隐私协议checkbox 返回图标高度
// "layoutLeft": 20,//隐私协议checkbox左间距
// "layoutRight": 20,//隐私协议checkbox右间距
// "layoutTop": 10,//隐私协议checkbox顶部间距
// "layoutBottom": 20,//隐私协议checkbox底部间距
}
}
;
// 隐私条款具体协议内容页面设置
var customPrivacyContentPage= {
"agreementPageTitle": "隐私协议页",//隐私协议页面 标题
"cusAgreementPageOneTitle": "自定义隐私协议页一",//隐私协议页面 自定义隐私协议一标题
"cusAgreementPageTwoTitle": "自定义隐私协议页二",//隐私协议页面 自定义隐私协议二标题
"cusAgreementPageThreeTitle": "自定义隐私协议页三",//隐私协议页面 自定义隐私协议三标题
"agreementPageCloseImg": "close.png",//隐私协议页面 返回图标名称
"agreementPageTitleTextSize": 16,//隐私协议页面 标题文本大小
"agreementPageTitleTextColor": "#330F33",//隐私协议页面 标题文本颜色
"agreementPageTitleTextBold": true,//隐私协议页面 标题文本是否加粗
"agreementPageTitleHidden": false,//隐私协议页面 标题文本是否隐藏
"agreementPageCloseImgHidden": false,//隐私协议页面 返回图标是否隐藏
"portraitLayout": {
"layoutWidth": 50,//隐私协议页面 返回图标宽度
"layoutHeight": 50,//隐私协议页面 返回图标高度
}
};
// 运营商品牌标签
var customOperatorSlogan= {
"sloganTextSize": 20,// Slogan文本大小
"sloganTextColor": "#330F33",// Slogan文本颜色
"sloganHidden": false,// Slogan是否隐藏
"sloganAlignParentRight": false,// Slogan是否靠屏幕右侧
"sloganTextBold": true,// Slogan文本是否加粗
"portraitLayout": {
// "layoutLeft": 30,//Slogan左间距
// "layoutRight": 30,//Slogan右间距
// "layoutTop": 30,//Slogan顶部间距
"layoutBottom": 30,//Slogan底部间距
}
};
// 弹窗设置
var customDialog= {
"dialogTheme": false,//弹框
"dialogAlignBottom": false,//弹框是否靠底部
"dialogOffsetX": 30,//弹框横屏距两边的间距
"dialogOffsetY": 30,//弹框竖屏距上下的间距
"dialogWidth": 250,//弹框宽度
"dialogHeight": 400,//弹框高度
// "dialogBackground": "bg.png",//弹框蒙版背景图片名称
"dialogBackgroundClickClose": false,//弹框蒙版背景是否点击关闭
"portraitLayout": {
"layoutWidth": 250,//弹框宽度
"layoutHeight": 400,//弹框高度
"layoutLeft": 30,//弹框左间距
"layoutTop": 30,//弹框顶部间距
}
}
;
// 自定义控件设置,目前安卓只支持文本TextView和图片ImageView
var customView= {
"customView": [ {
"viewClass": "TextView",//添加的控件类型
"viewText": "测试文本1",// 控件文本
"viewTextColor": "#330F33",// 控件文本颜色
"viewTextFont": 20,// 控件文本大小
"viewTextBold": true,// 控件文本是否加粗
"viewAlignParentRight":false,// 控件是否靠屏幕右侧
"viewHorizontalCenter":true,//控件是否靠屏幕中间
"portraitLayout": {
// "layoutLeft": 30,//控件左间距
// "layoutRight": 30,//控件右间距
// "layoutTop": 30,//控件顶部间距
"layoutBottom": 135,//控件底部间距
}
},
{
"viewClass": "TextView",//添加的控件类型
"viewText": "测试文本2",// 控件文本
"viewTextColor": "#330F33",// 控件文本颜色
"viewTextFont": 16,// 控件文本大小
"viewTextBold": false,// 控件文本是否加粗
"viewAlignParentRight":false,//控件是否靠屏幕右侧
"viewHorizontalCenter":true,//控件是否靠屏幕中间
"portraitLayout": {
// "layoutLeft": 30,//控件左间距
// "layoutRight": 30,//控件右间距
// "layoutTop": 50,//控件顶部间距
"layoutBottom": 115,//控件底部间距
},
},
{
"viewClass": "ImageView",//添加的控件类型
"viewImg": "logo.png",//图片的地址
"viewAlignParentRight":false,//控件是否靠屏幕右侧
"viewHorizontalCenter":true,//控件是否靠屏幕中间
"portraitLayout": {
"layoutWidth": 30,//隐私协议页面 返回图标宽度
"layoutHeight": 30,//隐私协议页面 返回图标高度
// "layoutLeft": 30,//控件左间距
// "layoutRight": 30,//控件右间距
// "layoutTop": 50,//控件顶部间距
"layoutBottom": 75,//控件底部间距
},
}
]
};
var customParams = {
'customNav': customNav,//导航栏设置
'customAuthPage': customAuthPage,//授权页面设置
'customAuthPageLogo': customAuthPageLogo,//logo设置
'customPhoneNumber': customPhoneNumber,//脱敏手机号设置
'customSwitchNumber': customSwitchNumber,//切换登录设置
'customCheckBox': customCheckBox,//复选框设置
'customPrivacy': customPrivacy,//隐私条款设置
'customPrivacyContentPage': customPrivacyContentPage,//隐私协议页面设置
'customLoginBtn': customLoginBtn,//登录按钮设置
'customOperatorSlogan': customOperatorSlogan,//slogan设置
'customDialog': customDialog,//弹框设置
'customView': customView,//自定义控件设置
};
Secverify.setPortraitLayout(customParams);
Secverify.setLandscapeLayout(customParams);
} else if (Platform.isIOS) {
// 以下是 iOS 自定义设置
// 自定义动画设置
var customAnimation = {
'secAnimateType': 1, //动画类型 0:默认 1:水平翻转 2:淡入淡出 3: Alert 4: Push 5:sheet
// 'secShowType': 0, //展示类型 0:默认 1:Alert 2:Push 3: Sheet
// 以下自定义动画设置只针对于Alert/Sheet展示类型
'secAnimateBgColor': '#F7B376', //弹窗控制器的背景色
'secLeftControlImage': 'leftImg.png', //左边按钮背景图片名称
'secLeftControlHidden': true, //左边按钮是否显示
'secRightControlImage': 'rightImg.png', //右边按钮背景图片名称
'secRightControlHidden': true, //右边按钮是否显示
'secBgViewHidden': false, //背景视图是否展示
'secBgViewCorner': 15, //背景视图的圆角
'secBgViewColor': '#000000', //背景视图颜色
'secBgViewImage': 'bgImg.png', //背景视图的背景图片名称
'secCloseType': true, //关闭按钮显示在左边还是右边 true:左边 false:右边
};
// 导航栏设置
var customNav = {
'secNavBarTintColor': '#F0C3D6', // 导航栏背景色(default is white)
'secNavText': '一键验证', // 导航栏标题
// 'secNavReturnImg': 'close.png', // 导航栏返回按钮图标
// 'secNavBottomLineHidden': true, // 是否隐藏导航栏尾部线条(默认显示,例: true)
// 'secNavBarHidden': false, // 导航栏隐藏(例: false)
// 'secNavStatusBarHidden': false, // 导航栏状态栏隐藏(例: false)
// 'secNavTranslucent': false, // 导航栏透明(例: false)
// 'secNavBackBtnHidden': false, // 导航栏返回按钮隐藏(例: false)
// 'secNavLeftControlHidden': false, // 隐藏导航栏左边按钮
'secNavTintColor': '#FF0000', // 导航栏文字颜色
// 'secNavBackgroundClear': false, // 导航栏背景透明(例: false)
};
// 授权页
var customAuthPage = {
// 'secBackgroundColor': '#E5E589', // 授权页背景颜色
'secBgImg': 'bg.png', // 授权背景图片
'secCancelBySingleClick': false, //单击页面实现取消操作(例: false)
};
// 授权页Logo
var customAuthPageLogo = {
'secLogoImg': 'app_icon.png', // Logo图片名称
'secLogoHidden': false, // Logo是否隐藏(例: false)
'secLogoCornerRadius': 10, // Logos圆角(例: 10)
'secPortraitLayout': {
// 针对该控件的竖屏布局(注意: 每个控件的布局字段所表示的含义都相同,下面将不再解释)
'secLayoutTop': 100, // 顶部间距
// 'secLayoutBottom': -40, // 底部间距
'secLayoutLeft': 20, // 左边间距
// 'secLayoutRight': -20, // 右边间距
'secLayoutWidth': 80, // 控件宽度
'secLayoutHeight': 80, // 控件高度
// 'secLayoutCenterX': 0, // 相对于父视图的CenterX的偏移量,0表示不偏移,即水平居中
// 'secLayoutCenterY': 0, // 相对于父视图的CenterY的偏移量,0表示不偏移,即垂直居中
},
};
// 手机号码
var customPhoneNumber = {
'secNumberColor': '#FFCC00', // 手机号码字体颜色
'secNumberFont': 18, // 字体大小(例: 18)
'secNumberTextAlignment': 1, // 手机号对其方式(例: 0-Left, 1-Center, 2-Right)
'secNumberBgColor': '#C2F6A3', // 手机号码背景颜色
'secPhoneHidden': false, //手机号码是否隐藏
'secPhoneBorderColor': '#FF0000', //手机号码边框颜色
'secPhoneBorderWidth': 2, //手机号码边框宽度
'secPhoneCorner': 5, //手机号码圆角
'secPortraitLayout': {
'secLayoutTop': 100 + 10,
'secLayoutLeft': 20 + 80 + 15,
'secLayoutRight': -20,
'secLayoutHeight': 22, // 控件高度
}
};
// 切换帐号按钮
var customSwitchNumber = {
'secSwitchBgColor': '#F1DBC9', // 切换账号背景颜色
'secSwitchColor': '#FF0000', // 切换账号字体颜色
'secSwitchFont': 14, // 切换账号字体大小
'secSwitchTextHorizontalAlignment': 0, // 切换账号对其方式(例: 0-Center, 1-Left, 2-Right)
'secSwitchHidden': false, // 隐藏切换账号按钮, 默认为false(例: true)
'secSwitchText': '切换手机号', // 切换账号标题
'secPortraitLayout': {
'secLayoutTop': 100 + 80 - 30,
'secLayoutLeft': 20 + 80 + 15,
'secLayoutRight': -20,
'secLayoutHeight': 18, // 控件高度
}
};
// 登陆按钮设置
var customLoginBtn = {
'secLoginBtnText': '登陆', // 登录按钮文本
'secLoginBtnTextColor': '#F1C4A8', // 登录按钮文本颜色
'secLoginBtnBgColor': '#C3D6F1', // 登录按钮背景颜色
'secLoginBtnBorderWidth': 2.0, // 登录按钮边框宽度 (例: 2.0)
'secLoginBtnBorderColor': '#FFCC00', // 登录按钮边框颜色
'secLoginBtnCornerRadius': 5.0, // 登录按钮圆角(例: 5.0)
'secLoginBtnTextFont': 20, // 登录按钮文字字体大小
'secLoginBtnBgImgArr': [
'#FF0000',
'#00FF00',
'0000FF'
], //['enabled.png', 'disabled.png', 'highlighted.png'], // 登录按钮背景图片数组(例:['激活状态图片','失效状态图片','高亮状态图片'], 支持颜色数组: ['#FF0000', '#00FF00', '0000FF'])
'secLoginBtnHidden': false, // 登陆按钮是否隐藏, 不建议隐藏!!!
'secPortraitLayout': {
'secLayoutCenterY': 0,
'secLayoutLeft': 20,
'secLayoutRight': -20,
'secLayoutHeight': 30, // 控件高度
}
};
// 隐私条款设置(切记,不可隐藏)
var customPrivacy = {
'secPrivacyTextColor': '#00FFDD', // 隐私条款基本文字颜色
'secPrivacyTextFont': 16, // 隐私条款协议文字字体大小
'secPrivacyTextAlignment': 0, // 隐私条款对其方式(例: 0-Left, 1-Center, 2-Right)
'secPrivacyAgreementColor': '#DDAA00', // 隐私条款协议文字颜色
'secPrivacyAgreementBgColor': '#000000', // 隐私条款协议背景颜色
'secPrivacyAppName': '秒验Flutter', // 隐私条款应用名称
'secPrivacyProtocolMarkArr': ['《','》'], // 协议文本前后符号(例['<','>'])
'secPrivacyFirstTextArr': ['服务协议',
'https://gitee.com/',
'、'
], // 开发者隐私条款第一组协议(例:['名字','url','分割符'])
'secPrivacySecondTextArr': ['百度协议',
'https://www.baidu.com',
'、'
], // 开发者隐私条款第二组协议(例:['名字','url','分割符'])
'secPrivacyLineSpacing': 5.0, // 隐私条款多行时行距(例: 5.0)
// 'secPrivacyDefaultText': '开发者隐私条款', //开发者隐私条款协议默认名称(不建议修改)
'secPrivacyUnderlineStyle': 1, //隐私协议下划线样式(例: 0-None, 1-Single, 2-Thick, 9-Double)
'secPrivacyNormalTextFirst': '登录即同意', // 隐私条款开头(例: '登录即同意')
'secPrivacyNormalTextEnd': '并授权秒验FlutterApp获取本机号码', // 隐私条款中间连接文字(例: '并授权')
'secPrivacyHidden': false, // 隐私条款是否隐藏, 强烈建议不要隐藏!!!
'isPrivacyOperatorsLast': false, // 运营商协议是否排在最后 默认为false(例: true)
'secPortraitLayout': {
'secLayoutLeft': 50,
'secLayoutCenterY': 80,
'secLayoutRight': -20,
'secLayoutHeight': 70, // 控件高度
}
};
// 隐私条款复选框
var customCheckBox = {
'secCheckedImg': 'checked.png', // 复选框选中时的图片
'secUncheckedImg': 'uncheck.png', // 复选框未选中时的图片
'secCheckDefaultState': false, // 隐私条款check框默认状态,默认为false(例: true)
// secCheckSize: 30, // 复选框尺寸(宽高相同,例: 30)
'secCheckHidden': false, // 隐私条款check框是否隐藏,默认为false(例: true)
'secPortraitLayout': {
// !!!! 注意: 这个复选框的布局是相对于隐私条款的,所以建议先把隐私条款布局好再布局这个框
'secLayoutRight': -10,
'secLayoutCenterY': -20,
'secLayoutWidth': 20,
'secLayoutHeight': 20,
}
};
// 隐私条款具体协议内容页面设置
var customPrivacyContentPage = {
'secPrivacyWebBackBtnImage': 'close.png', // 隐私条款WEB页面返回按钮图片
'secPrivacyWebTitle': '隐私条款内容', // 隐私条款WEB页面标题
'secPrivacyWebNavBarStyle': 0, // 隐私条款导航style (例: 0-Default, 1-Black)
};
// 运营商品牌标签
var customOperatorSlogan = {
'secSloganTextFont': 13, //运营商品牌文字字体大小
'secSloganTextColor': '#0099FF', //运营商品牌文字颜色
'secSloganTextAlignment': 1, //运营商品牌文字对齐方式(例: 0-Left, 1-Center, 2-Right)
'secSloganBgColor': '#666666', //运营商品牌背景颜色
// 'secSloganText': '运营商品牌文字', //运营商品牌文字(不建议修改)
'secSloganHidden': false, //运营商品牌是否隐藏
'secSloganBorderColor': '#FFEEDD', //运营商品牌边框颜色
'secSloganBorderWidth': 2.0, //运营商品牌边框宽度
'secSloganCorner': 5.0, //运营商品牌边框圆角
'secPortraitLayout': {
'secLayoutLeft': 20,
'secLayoutRight': -20,
'secLayoutBottom': -64,
'secLayoutHeight': 18, // 控件高度
},
};
var customParams = {
'customAnimation': customAnimation,
'customNav': customNav,
'customAuthPage': customAuthPage,
'customAuthPageLogo': customAuthPageLogo,
'customPhoneNumber': customPhoneNumber,
'customSwitchNumber': customSwitchNumber,
'customCheckBox': customCheckBox,
'customPrivacy': customPrivacy,
'customPrivacyContentPage': customPrivacyContentPage,
'customLoginBtn': customLoginBtn,
'customOperatorSlogan': customOperatorSlogan,
};
Secverify.setPortraitLayout(customParams);
// Secverify.setLandscapeLayout(customParams);
}
}
void preSettings() {
Secverify.autoFinishOauthPage(false);
}
}