平台兼容性
Android | iOS |
---|---|
× | √ |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
Mob SMSSDK For iOS
本插件基于MobTech下SMSSDK制作,使用之前需前往(https://www.mob.com) 注册并创建app,获取AppKey和AppSecret。中国大陆境内短信每月免费赠送10000条,其它国家或地区短信每月免费赠送300元额度(具体内容条款请查看MobTech官方文档)。
声明:以下所有方法均调用MobTech下SMSSDK内提供的方法实现,本插件不包含任何恶意插件、广告等内容,MobTech下SMSSDK数据隐私问题请前往光放文档查看。
使用说明:
1.集成该插件并填写AppKey和AppSecret;
2.插件注册
var testModule = uni.requireNativePlugin("Edwin-ZYS_MOB_SMS_SDK")
3.获取验证码
getSMSCode() {
testModule.zys_getVerificationCodeByMethod({
'methodType': '0',
'phoneNumber': '13000000000',
'zone': '86',
'template': ''
},
(ret) => {
uni.showToast({
title:'验证结果:' + ret['isSuccess'] + ' -- code:' + ret['errorCode'],
icon: "none"
})
})
}
参数说明
参数名 | 是否必传 | 说明 | 参数类型 |
---|---|---|---|
methodType | 是 | 0:短信验证码 1:语音验证码 | 字符串 |
phoneNumber | 是 | 手机号 | 字符串 |
zone | 是 | 国家或区域编码 如中国大陆:86(不需要+) | 字符串 |
template | 是 | MobTech设置的短信模板id | 字符串 |
返回结果说明
返回结果为字典(map)对象:
{
isSuccess: true, // 请求状态
errorCode: ‘错误编码’ // 错误编码,请对照MobTech文档查看对应错误
}
4.验证验证码
verifySMSCode() {
testModule.zys_commitVerificationCode({
'code': '238054',
'phoneNumber': '13000000000',
'zone': '86'
},
(ret) => {
uni.showToast({
title:'验证结果:' + ret['isSuccess'] + ' -- code:' + ret['errorCode'],
icon: "none"
})
})
}
参数说明
参数名 | 是否必传 | 说明 | 参数类型 |
---|---|---|---|
code | 是 | 0:短信验证码 1:语音验证码 | 字符串 |
phoneNumber | 是 | 手机号 | 字符串 |
zone | 是 | 国家或区域编码 如中国大陆:86(不需要+) | 字符串 |
返回结果说明
返回结果为字典(map)对象:
{
isSuccess: true, // 请求状态
errorCode: ‘错误编码’ // 错误编码,请对照MobTech文档查看对应错误
}
5.获取当前Mob SMSSDK版本
getMobSDKVersion() {
var result = testModule.zys_getMobSDKVersion()
uni.showToast({
title:'返回结果' + result,
icon: "none"
})
}
返回结果说明
返回结果为版本号字符串
6.获取zone(区域代码与手机号匹配规则)
getZone() {
testModule.zys_getCountryZone(
(ret) => {
var status = ret['isSuccess'];
if (status == true) {
uni.showToast({
title:'zone:' + ret['zonesArray'],
icon: "none"
})
}else {
uni.showToast({
title:'获取失败',
icon: "none"
})
}
})
}
返回结果说明
返回结果为字典(map)对象:
{
isSuccess: true, // 请求状态
zonesArray: [obj, obj obj] // 返回的区域代码与匹配规则对象数组
}
zonesArray内对象:
{
rule = "^1(3|5|7|8|4|9|6)\\d{9}";
zone = 86;
}