下载 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.Unity
public 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