这是一个基于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"// 导入MobSDKapply 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文件即可,如有疑难,请间接通过官网和咱们分割。