fl_aliyun_number_auth 0.1.0 fl_aliyun_number_auth: ^0.1.0 copied to clipboard
aliyun number auth for flutter
阿里云一键登录 #
官方文档 #
-
插件仅连接原生 sdk 的方法和参数,包含 UI 配置(自定义 UI 还未实现完整)
-
一键登录和预取号码流程,请参数官方文档
配置 #
android 配置 android/app/src/main/AndroidManifest.xml
#
添加 http 支持配置
<!--如果有配置其他 networkSecurityConfig 请添加行替换 或者复制 number_auth_network_security_config 中的添加至自己的 xml-->
<application android:networkSecurityConfig="@xml/number_auth_network_security_config"
android:requestLegacyExternalStorage="true" tools:replace="android:networkSecurityConfig">
<!--如果使用弹窗模式 需要添加一下内容-->
<activity android:name="com.mobile.auth.gatewayauth.LoginAuthActivity"
android:theme="@style/NumberAuthDialogTheme" tools:replace="android:theme" />
</application>
使用 #
/// 设置SDK密钥
void setAuthInfo() async {
final result = await FlAliYunNumberAuth()
.setAuthInfo(android: androidAuthInfo, ios: iosAuthInfo);
}
/// 设置授权页UI
/// 所有 UI 单位均为 px 参考 example 转换为 px
void setAuthUI() async {
final result = await FlAliYunNumberAuth()
.setAuthUI(android: buildAndroidUi(context), ios: buildIOSUi(context));
}
/// SDK环境检查函数,检查终端是否支持号码认证
void checkEnvAvailable() async {
final result = await FlAliYunNumberAuth().checkEnvAvailable(AuthType.login);
}
/// 一键登录预取号
void accelerateLoginPage() async {
final result = await FlAliYunNumberAuth().accelerateLoginPage();
}
/// 一键登录获取Token
void getLoginToken() async {
final result = await FlAliYunNumberAuth().getLoginToken();
}
/// 退出登录页面
/// code600024 时调用
void quitLoginPage() async {
final result = await FlAliYunNumberAuth().quitLoginPage();
setResultText = 'quitLoginPage:$result';
}
/// 结束授权页loading动画
void hideLoginLoading() async {
final result = await FlAliYunNumberAuth().hideLoginLoading();
}
/// 二次授权弹窗取消事件
void quitPrivacyAlert() async {
final result = await FlAliYunNumberAuth().quitPrivacyAlert();
}
/// 设置授权页协议框是否勾选
void setCheckboxIsChecked() async {
final result =
await FlAliYunNumberAuth().setCheckboxIsChecked(Random().nextBool());
}
/// 获取授权页协议勾选框选中状态
/// true 选中 false 未选中 null 未初始化
void queryCheckBoxIsChecked() async {
final result = await FlAliYunNumberAuth().queryCheckBoxIsChecked();
}
/// 获取上网卡运营商 CMCC(中国移动)、CUCC(中国联通)、CTCC(中国电信)
void getCurrentCarrierName() async {
final result = await FlAliYunNumberAuth().getCurrentCarrierName();
}
/// 授权页协议内容动画执行,注意:必须设置privacyAnimation属性,才会执行动画
void privacyAnimationStart() async {
final result = await FlAliYunNumberAuth().privacyAnimationStart();
}
/// 授权页checkbox动画执行,注意:必须设置checkboxAnimation属性,才会执行动画
void checkBoxAnimationStart() async {
final result = await FlAliYunNumberAuth().checkBoxAnimationStart();
}
/// 获取sdk 版本号
void getVersion() async {
final result = await FlAliYunNumberAuth().getVersion();
}
/// ios 特有方法
void iosMethod() async {
final result = await FlAliYunNumberAuth().iosMethod();
}
/// android 特有方法
void androidMethod() async {
final result = await FlAliYunNumberAuth().androidMethod();
}