SMSSDK从2.x版本升级至3.x版本指导-云栖社区-阿里云

一、前言本文档旨在指导开发者如何从SMSSDK2.1.4及之前版本升级至3.0.0版。简而言之,SDK的导入和挂接方法以及混淆配置不变,只是注册和初始化方法有少许变化。完整接入流程请参考:Android 短信SDK集成文档(for 3.

一、前言
本文档旨在指导开发者如何从SMSSDK2.1.4及之前版本升级至3.0.0版。
简而言之,SDK的导入和挂接方法以及混淆配置不变,只是注册和初始化方法有少许变化。
完整接入流程请参考:Android 短信SDK集成文档(for 3.0.0及以上)http://wiki.mob.com/sdk-sms-android-3-0-0/
二、升级方法
1.在Application节点下添加以下属性:

android:name="com.mob.MobApplication"

2.Application节点下添加以下meta-data:

<!-- 通过AndroidManifest配置AppKey和AppSecret,如果你选择通过代码配置,则不需要配置以下meta-data -->
<meta-data android:name="Mob-AppKey" android:value="你的AppKey"/>
<meta-data android:name="Mob-AppSecret" android:value="你的AppSecret"/>

注意:注册AppKey的方法有两种,除了上述通过MobApplication和meta-data的方式注册外,还可以使用代码注册,具体说明请参考Android 短信SDK集成文档(for 3.0.0及以上)中的【三、添加代码 / 3.关于配置AppKey和AppSecret的说明】。
3.删除旧版SDK的初始化方法:

SMSSDK.initSDK(this, "您的appkey", "您的appsecret");

在新版SDK中,上述方法已经被废弃,如果你选择通过上面提到的继承MobApplication的方式注册AppKey,则不需要为短信SDK的初始化做其他工作,可以直接开始使用SDK的接口。如果你选择使用代码注册AppKey,则需要在使用短信SDK前调用以下代码来注册你的AppKey:

// 通过代码注册你的AppKey和AppSecret
MobSDK.init(context, "你的AppKey", "你的AppSecret");

4.新版SDK新增了以下方法:

// 如果希望在读取通信录的时候提示用户,可以添加下面的代码,并且必须在其他代码调用之前,否则不起作用;如果没这个需求,可以不加这行代码
   SMSSDK.setAskPermisionOnReadContact(boolShowInDialog)

用于控制是否在读取通讯录时提醒用户以及提醒的方式(全屏或者非全屏)。
如果不需要提醒用户,请不要调用以上代码,SDK默认不提示。
如果需要提醒用户,则需要调用以上方法,并且必须在其他代码调用之前,否则不起作用。该方法的参数为True,代表使用非全屏Dialog方式提醒用户,Fasle代表使用全屏dialog方式提醒用户。
至此,全部升级工作已经完毕。