写点什么

MobTech 短信验证 Unity 插件

  • 2022 年 9 月 22 日
    上海
  • 本文字数:1778 字

    阅读完需:约 6 分钟

下载 unitypackage

从 Mob 的 github 地址下载 ShareSDK.unitypackage:Git地址,如下图所示



下载完成后得到一个 SMSSDK.unitypackage 结尾的文件,如下图:



导入 unitypackage

双击导入到 unity 项目中并勾选,如下图:

Demo.cs 是 demo 的示例页面,可通用

Android AlertDialog.cs,DialogOnClickListener.cs,MemoryCString.cs:安卓 dialog SMSSDKUnityBridge.jar:桥接层 baseProjectTemplate.gradle,launcherTemplate.gradle:gradle 配置

iOS (全部勾选)



按图选好之后,点击 import 导入

挂接 SMSSDK 脚本

在 unity 界面左侧选择要使用的场景(例如 Main Camera),点击 Add Component 按钮添加 SMSSDK.cs(SMSSDK 核心文件),或者直接拖进去。如果要测试效果,也可以添加 Demo.cs(SMSSDK 示例 UI),如下图所示:



修改编译环境

Platform 设置,在 unity 中选择菜单栏-File-Build Settings,会打开 Build Settings 操作框,根据自己所编译的环境选择,如果是 iOS 的请选择 iOS 环境,如果是 Android 请选择 Android 环境,然后点击 Switch Platform 切换环境,如下图:



Android 端编译配置

修改 Unity 设置

生成 Gradle 文件

保持 Build Settings 操作框中左侧 Platform 列表Android 项的选中状态,点击 Player Settings,会打开 Project Settings 操作框,如下图:



左侧切换到 Player 标签,然后在右侧选择 Publishing Settings 卡片,勾选 Custom Launcher Gradle Template Custom Base Gradle Template Custom Gradle Properties Template,选项,如下图:



该操作会在"工程\Assets\Plugins\Android 目录下"生成 baseProjectTemplate.gradle、launcherTemplate.gradle、gradleTemplate.gradle 文件。

修改 Gradle 文件

修改 baseProjectTemplate.gradle 文件

打开 baseProjectTemplate.gradle 文件后有两处需要操作:

1.在 classpath 'com.android.tools.build:gradle'后添加 mob 的 classpath

classpath "com.mob.sdk:MobSDK:2018.0319.1724"
复制代码

2.添加 Mob 自己的 maven 仓库

maven {    url "https://mvn.mob.com/android/"}
复制代码

最终 baseProjectTemplate.gradle 文件的参考结果为:



修改 launcherTemplate.gradle 文件

打开 launcherTemplate.gradle,在文件的最下方加入以下代码:

apply plugin: 'com.mob.sdk'
MobSDK {appKey "替换为mob官方申请的appkey"appSecret "替换为mob官方申请的appkey对应的appSecret"
SMSSDK {}}
复制代码

在 gradleTemplate.gradle 文件中添加

MobSDK.spEdition=FP
复制代码

添加混淆配置

混淆设置:SMSSDK 已经做了混淆处理,再次混淆会导致不可预期的错误,请在您的混淆脚本中添加如下的配置,跳过对 SMSSDK 的混淆操作:

-keep class com.mob.**{*;}-keep class cn.smssdk.**{*;}-dontwarn com.mob.**
复制代码

iOS 端编译配置

修改初始化 SDK 的 Appkey 和 AppSecret



接口调用

参考 Demo.cs 文件的使用方式,先引入命名空间

using cn.SMSSDK.Unitypublic SMSSDK smssdk
smssdk = gameObject.GetComponet();
复制代码

如下图:



回传用户隐私授权结果 (submitPolicyGrantResult)

调用示例

传入的第一个参数为 Boolean 类型的,true 代表同意授权、false 代表不同意授权

smssdk.submitPolicyGrantResult(true);
复制代码

获取验证码 (getCode )

smssdk.getCode (CodeType.TextCode, "138XXXX8000", "86", tempCode);
复制代码

注意:这个 tempCode 的参数,是短信模版 id,这个参数主要在于您想不想修改短信内容,不想的话可以传空,千万不能乱传。想要改的话,需要先在我们的开发者后台提交应用审核,审核过之后需要提交短信签名资料审核通过,然后就可以在短信模版那一项添加下模版,审核通过之后就会返回这个 tempCode,就可以传进来

提交验证码 (commitCode )

smssdk.commitCode ("13800138000", "86",code);
复制代码

获取语音验证码 (getCode )

smssdk.getCode (CodeType.VoiceCode, phone, zone, tempCode);
复制代码

获取国家区号 (getSupportedCountryCode)

smssdk.getSupportedCountryCode();
复制代码

获取 SDK 版本号 (getVersion)

smssdk.getVersion();
复制代码

弹出 SDK 自带 UI (showRegisterPage )

// 模板号可以为空   smssdk.showRegisterPage (CodeType.TextCode, null);
复制代码

关于回调数据的处理:

有些 API 将会把回调数据发到你设置的 SMSSDKHandler。回调数据(resp)是一个 json 字符串。你可以使用任意的 JSON 库进行处理。其中 action 是你调用的 API 的类型。

onComplete(int action, object resp)onError(int action, object resp)
复制代码

完成上述步骤后即可导出 Android、iOS 项目进行测试。

如还有任何问题,请联系:技术支持 QQ:4006852216

用户头像

还未添加个人签名 2019.05.08 加入

还未添加个人简介

评论

发布
暂无评论
MobTech 短信验证 Unity插件_ios_MobTech袤博科技_InfoQ写作社区