关于javascript:Mobtech短信验证-for-Flutter

38次阅读

共计 2813 个字符,预计需要花费 8 分钟才能阅读完成。

这是一个基于 SMSSDK 性能的扩大的 Flutter 插件。应用此插件可能帮忙您在应用 Flutter 开发利用时, 疾速地实现获取验证码性能。

Demo 例子:https://github.com/MobClub/SM…

开始集成

https://pub.dev/packages/mobsms
在 pubspec.yaml 文件中退出上面依赖

`dependencies:
  mobsms:
  mobcommonlib: `

而后执行:flutter packages get 导入 package
在你的 dart 工程文件中,导入上面头文件,开始应用

import 'package:mobsms/mobsms.dart';
import 'package:mobcommonlib/mobcommonlib.dart';

iOS:平台配置参考 iOS 集成文档

Android:导入 SMSSDK 相干依赖

在我的项目根目录的 build.gradle 中增加以下代码:

dependencies {classpath 'com.mob.sdk:MobSDK:2018.0319.1724'}

在 /android/app/build.gradle 中增加以下代码:

apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
// 导入 MobSDK
apply plugin: 'com.mob.sdk'

平台相干集成 在我的项目的 /android/app/build.gradle 中增加:

android {//.........}
apply plugin: 'com.mob.sdk'
MobSDK {
    appKey "您的 appkey"
    appSecret "您的 appsercret"
    SMSSDK {}}

这样就能够在你的 project/android/src 下的类中 import cn.smssdk.flutter.MobsmsPlugin 并应用 MobsmsPlugin 中的 api 了。

隐衷协定接入
展现 MobTech 隐衷协定:开发者须要展现 MobTech 隐衷条款,并将批准后果回传给 MobTech 即可,举荐如下形式:将 MobTech 隐衷协定的 URL 嵌入 app 本身隐衷协定形容中(举荐应用)

第一步:将咱们 sdk 的隐衷形容增加到您的隐衷政策内容中 参考表达方式:为了实现【】性能,咱们应用了 MobTech 的【】产品,此产品的隐衷策略条款,能够参考:http://www.mob.com/about/policy

第二步:先将 mobFoundation.framework 更新到 3.2.24 及之后的版本(能够在我的项目根目录找到这个 mob 库,看外面的 plist 文件,外面有版本号),而后须要在我的项目的 plist 文件里增加 MOBNetLater 参数配置,参数值配置为 2

配置如图:

第三步:回传用户隐衷受权后果(应用隐衷版本,如果不回传受权后果,sdk 性能将无奈应用)

接口如下:

import 'package:mobcommonlib/mobcommonlib.dart';
Mobcommonlib.submitPolicyGrantResult(true, (dynamic ret, Map err) => {});

只须要在应用 sdk 性能接口之前调用一次这个接口回传,把用户承受您们隐衷条款与否的后果调用 upload 接口通知咱们即可

为了使 MobTech 的 SDK 产品能更好的兼容 ios14 零碎,同时合乎苹果将于 2020 年 12 月 8 日失效的要求应用程序(APP)开发者配置隐衷“标签”新政策,咱们根据 MobTech 不同的 SDK 产品制作了不同的配置操作文档。建议您在接入 MobTech SDK 服务时更新到最新版本, 接入咱们的隐衷政策链接,同时在 App Store Connect 后盾,参考对应 SDK 的配置操作文档,增加您 App 的隐衷“标签”数据内容。
App Store Connect 后盾配置参考文档:
链接

接口办法阐明
回传用户隐衷受权后果 (submitPrivacyGrantResult)

/**
 * 回传用户隐衷受权后果
 * @param status     用户是否批准隐衷协定
 * @param result     默认传 null
 */  
Mobcommonlib.submitPolicyGrantResult(bool status, Function(bool)? result)

例:

Mobcommonlib.submitPolicyGrantResult(true, null);
文本获取验证码(getTextCode)
Smssdk.getTextCode("手机号","区号(中国填写 86)","模板 id", (dynamic ret, Map err){if(err!=null){......}
   else
   {........}
});

语言获取验证码(getVoiceCode)

Smssdk.getVoiceCode("手机号","区号(中国填写 86)", (dynamic ret, Map err){if(err!=null){......}
    else
     {......}
});

提交验证码(commitCode)

Smssdk.commitCode("手机号","区号(中国填写 86)","验证码", (dynamic ret, Map err){if(err!=null){......}
   else
     {......}
});

获取国家列表(getSupportedCountries)

Smssdk.getSupportedCountries((dynamic ret, Map err){if(err!=null){......}
   else
   {......}
});

提交用户信息(submitUserInfo)

Smssdk.submitUserInfo("3241241", "SmsSDK_Flutter_User_3241241",
              "https://download.sdk.mob.com/510/deb/0c0731ac543eb71311c482a2e2.png",
                    "区号(中国填写 86)", "手机号", (dynamic ret, Map err){if(err!=null){......}
   else
    {......}
});

获取版本号(getVersion)

Smssdk.getVersion((dynamic ret, Map err){if(err!=null){......}
   else
   {......}
});

Flutter iOS 端注意事项

因为插件更新,SDK 的 Pod 依赖被替换,Flutter 自身写入 Pod 文件不会先执行删除原有依赖,导致可能会呈现原有本地库仍然存在,请查看 Pod 文件夹下文件,间接手动删除 mob_smssdk 以及 MOBFoundation 文件即可,如有疑难,请间接通过官网和咱们分割。

正文完
 0