这是一个根据SMSSDK功用的扩展的Flutter插件。运用此插件能够协助您在运用Flutter开发应用时,快速地实现获取验证码功用。

Demo比如:github.com/MobClub/SMS…

开端集成

  • 在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的【 】产品,此产品的隐私策略条款,可以参阅:www.mob.com/about/polic…

第二步:先将mobFoundation.framework更新到3.2.24及之后的版别(可以在项目根目录找到这个mob库,看里面的plist文件,里面有版别号),然后需求在项目的plist文件里增加MOBNetLater参数装备,参数值装备为2

装备如图:

MobTech 短信验证 Flutter插件

第三步:回传用户隐私授权成果(运用隐私版别,如果不回传授权成果,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)

MobTech 短信验证 Flutter插件

例:

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://www.6hu.cc/storage/2022/12/1671537929-0b995e0cead530f.png",
                    "区号(中国填写86)", "手机号", (dynamic ret, Map err){
   if(err!=null){......}
   else
    {......}
});

获取版别号(getVersion)

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