乐趣区

关于短信验证:MobTech短信验证ApiCloud端SDK

短信验证码 SDK,为开发者提供全球通用的短信验证码工具,开发者能够用其在 App 植入短信验证码
SDK、简略设置即可实现短信验证性能,集成疾速便捷,且前期易于治理。

配置集成 开发者应用本模块之前须要先到 Mob 官网申请开发者账号,并在账号内填写相应信息创立本人的 APP,从而获取 AppKey 和 AppSecret, 而后增加 SMSSDK 性能, 获取模板 id。详情参考: 疾速集成获取 Appkey 和 AppSecret

筹备工作

下载并装置开发工具:APICloud Studio 2

创立利用

APICloud 提供了两种创立利用的形式,不便开发者在云端或 APICloud Studio 中创立利用。云端创立利用:

(1)注册并登录 APICloud 零碎:https://www.apicloud.com/console 点击左上角“创立利用”,如图:抉择“Native”,填写“名称”及“阐明”,利用创立实现。

APICloud Studio 中创立利用:

(2)登录 APICloud Studio,没有账号点击“注册账号”,曾经注册,用之前注册的 APICloud 账号登录 APICloud Studio

这 2 端能够互相同步信息:

同步本地利用到云端资源库,开发者在 APICloud Studio 创立的利用会和云端资源库建设连贯。我的项目代码改变后,能够应用 APICloud Studio 的代码提交性能提交代码到云端资源库。

增加模块

关上 APICloud 云端,1.2.0 版开始 smssdk 模块同时依赖于 mobcommonlib 模块,故须要在模块库搜寻 mobcommonlib 模块,并增加至 已增加模块。

留神:从 1.2.0 版本开始,应用短信 SDK 须要接入隐衷性能,隐衷性能的接入办法请参考 mobcommonlib 模块的文档。

模块应用攻略
Android:应用此模块之前 android 需先配置 config.xml 文件,办法如下

<meta-data name="Mob-AppKey" value="moba6b6c6d6"/>
<meta-data name="Mob-AppSecret" value="b89d2427a3bc7ad1aea1e1e8c1d36bf3"/>

iOS:iOS 须要将 Info.plist 文件放入 res 目录下,文件内容内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>MOBAppKey</key>
<string>moba6b6c6d6</string>
<key>MOBAppSecret</key>
<string>b89d2427a3bc7ad1aea1e1e8c1d36bf3</string>
</dict>
</plist>

字段形容:

  • Mob-AppKey:(必须配置)从 MobTeck 官网获取的 AppKey。
  • Mob-AppSecret:(必须配置)从 MobTech 官网获取的 AppSecret。申请办法参考疾速集成获取 AppKey 和 AppSecret。

编译 APP 时 iOS 请配置拜访联系人的权限

Demo 实例 widget 下载地址

获取文本验证码 (getTextCode)

须要引入模块: var moduleSMSSDK = api.require(‘smssdk’);

getTextCode({params}, callback(ret,err)) params:

phoneNumber:类型:字符串

默认值:无

形容:手机号

zone:

类型:字符串

默认值:无

形容:区域号,不要加 "+" 号

tempCode:

类型:字符串

默认值:无

形容:模板 id

callback(ret,err) ret:

类型:JSON 对象

外部字段:{smart:0 // 是否为智能验证 bool 类型, ios 疏忽此字段}

err:

类型:JSON 对象

外部字段:

{
    code:0    // 错误码(详见错误码常量)msg:""    // 谬误形容
};

示例代码

var param = {zone:'86', phoneNumber:'18500000000',tempCode:'1319972'};
moduleSMSSDK.getTextCode(param, function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
    alert("Error:\n" + JSON.stringify(err));
    } else {// 失常音讯示例:{"smart":false}
       alert("Success:\n" + JSON.stringify(ret));
    }
    });

获取语音验证码 (getVoiceCode)
getVoiceCode({params}, callback(ret, err)) params:

phoneNumber:

类型:字符串

默认值:无

形容:手机号

zone:

类型:字符串

默认值:无

形容:区域号,不要加 "+" 号 

callback(ret, err) ret:

类型:JSON 对象 外部字段:{}

err:

类型:JSON 对象

外部字段:

{
    code:0    // 错误码(详见错误码常量)msg:""    // 谬误形容
};

示例代码:

// param 中的 key 命名不能扭转
var param = {zone:'86', phoneNumber:'18500000000'};
moduleSMSSDK.getVoiceCode(param, function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
   alert("Error:\n" + JSON.stringify(err));
  } else {// 失常音讯示例:{}
    alert("Success:\n" + JSON.stringify(ret));
    }
   });

提交验证码 (commitCode)

commitCode({params}, callback(ret, err)) params:

phoneNumber:

类型:字符串

默认值:无

形容:手机号

zone:

类型:字符串

默认值:无

形容:区域号,不要加 "+" 号

code:

类型:字符串

默认值:无

形容:验证码 

callback(ret, err) ret:

类型:JSON 对象 外部字段:{}

err:

类型:JSON 对象

外部字段:

{
    code:0    // 错误码(详见错误码常量)msg:""    // 谬误形容
};

示例代码:

// param 中的 key 命名不能扭转
var param = {zone:'86', phoneNumber:'18500000000', code:'4847'};
moduleSMSSDK.commitCode(param, function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
  alert("Error:\n" + JSON.stringify(err));
  } else {}});

获取区号 (getSupportedCountries)

getSupportedCountries(callback(ret, err)) callback(ret, err) ret:

类型:JSON 对象

外部字段:

{
    countries =
    (
        {
        rule = "^\\d+";
        zone = 1868;
        }
    )
}

err:

类型:JSON 对象

外部字段:

{
    code:0    // 错误码(详见错误码常量)msg:""    // 谬误形容
};

示例代码:

// param 中的 key 命名不能扭转
moduleSMSSDK.getSupportedCountries(function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
      alert("Error:\n" + JSON.stringify(err));
     } else {// 失常音讯示例:{"countries":[{zone=590, rule=^\d+},{zone=680, rule=^\d+}]}
        alert("Success:\n" + JSON.stringify(ret));
    }
  });

提交用户材料 (submitUserInfo)

submitUserInfo({params}, callback(ret, err)) params:

uid:
类型:字符串
默认值:无
形容:用户 id

nickname:
类型:字符串
默认值:无
形容:用户昵称

avatar:
类型:字符串
默认值:无
形容:头像地址

phoneNumber:
类型:字符串
默认值:无
形容:手机号

zone:
类型:字符串
默认值:无
形容:区域号,不要加 "+" 号 

callback(ret, err) ret:

类型:JSON 对象

外部字段:{}

err:

类型:JSON 对象

外部字段:

{
    code:0    // 错误码(详见错误码常量)msg:""    // 谬误形容
};`

示例代码:

// param 中的 key 命名不能扭转
var uid = "3241241";
var nickname = "SmsSDK_Api_Cloud_User_" + uid;
var avatar = "https://download.sdk.mob.com/510/deb/0c0731ac543eb71311c482a2e2.png";
// param 中的 key 命名不能扭转
var param = {uid:uid, nickname:nickname, avatar:avatar, phoneNumber:'18500000000', zone:'86'};

moduleSMSSDK.submitUserInfo(param, function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
alert("Error:\n" + JSON.stringify(err));
} else {}});

获取版本号 (getVersion)

getVersion(callback(ret, err)) callback(ret,err) ret

类型:JSON 对象

外部字段:{version: “1.0.0”}

err

类型:JSON 对象

外部字段:{}

示例代码:

// param 中的 key 命名不能扭转
moduleSMSSDK.getVersion(function(ret, err){if (err !== null && err !== undefined && err !== '') {// 谬误音讯示例:{"msg":"Template not exist.","code":484}
       alert("Error:\n" + JSON.stringify(err));
   } else {// 失常音讯示例:{"version":'3.2.2'}
   }
});
退出移动版