现在的项目当中一般都会有第三方分享或登录的功能,在这里对于集成ShareSDK实现第三方的分享和登录做一个整理和汇总,方便后期使用。
一、集成配置。集成配置有两种方式,一种是导入jar包到项目中去,一种是使用ShareSDK maven集成方式。在这里我们介绍使用maven集成方式,之所以选择这种是因为这种方式不需要在AndroidMainfest.xml下面配置任何权限和Activity。
1.登录到ShareSDK官网http://www.mob.com/,申请Mob的appkey与appsecret。
2.在根目录的build.gradle中添加MobSDK+的配置,注意是根目录。

3、在使用到Mob产品的module下面的build.gradle文件里面添加引用

4.在Mob产品的module下面的build.gradle文件里面配置ShareSDK各个社交平台的key信。将之前申请到的appkey与appsecret,以及各个平台获取到的appId和appSecret分别填入到对用的位置上。

5.在项目的Application中进行初始化。

以上就是配置的基本流程,在集成的过程中也可以参照官方的集成文档来进行 http://wiki.mob.com/sdk-share-android-3-0-0/,在配置过程中需要特别说明的一点是,在使用maven集成的时候,我们项目minSdkVersion不能小于16否则就会编译通不过。

二、分享的逻辑功能的实现。分享也是分为两种,一种是一键分享,一种是指定分享。其实两种的写法和逻辑没有太大区别,下面我会详细介绍。
2.1,分享的过程中需要注意的是在不同的平台有不同的字段表示,这一点可以参考官网的说明。http://wiki.mob.com/%e4%b8%8d%e5%90%8c%e5%b9%b3%e5%8f%b0%e5%88%86%e4%ba%ab%e5%86%85%e5%ae%b9%e7%9a%84%e8%af%a6%e7%bb%86%e8%af%b4%e6%98%8e/,接下来我们就使用代码唤起SDK的分享界面进行分享。
2.2,获取到分享的各个字段信息,使用OnekeyShare的对象进行设置。

,设置完成之后我们设置回调,启动分享的GUI

2.3,一键分享和指定分享的不同之处。一键分享使用的是OnekeyShare的对象进行设置数据,最后使用show()方法唤起分享界面,指定分享使用的 Platform.ShareParams的对象进行数据设置,最后使用share()方法进行直接分享。其他的设置回调相关的两者都是相同的。
以上就是使用ShareSDK进行分享的相关功能的实现,下面我们来介绍登录功能的使用。
三、使用ShareSDK进行第三方的登录。
3.1,判断初始化状态,获取授权,获取相关信息。

3.2在setPlatformActionListener监听里面判断获取数据的状态,是成功还是失败还是取消,在获取数据之后发送消息

3.3,处理消息,设置回调,携带信息返回到自己的项目当中去。

3.4,获取到了返回的信息,继续处理下一步的操作。在这里我做了一个简单的封装,方便使用。

以上就是集成ShareSDK,使用第三方分享和登录的基本流程。对于整个流程的完整Demo,我也已经上传到了GItHub上 https://github.com/lucky-you/ShareSDkUtils 。由于本人能力有限,如果出现纰漏或者错误的地方,欢迎指正,大家共同学习,一起进步。
网友评论