实现微信(好友、朋友圈)、QQ(好友、空间)、新浪微博等社会化分享方式。
前言
现在的app几乎里面都包括社会化分享和第三方登录这两个功能,前段时间给大家分享了关于几种(第三方登录)的实现,今天再给大家分享关于社会化分享的几种方式。
在关于第三方登录的那篇文章中就已经提到了mob这个第三方平台,我们直接调用其SDK即可。市面上做社会化分享平台的跟人感觉不错的:mob和友盟,根据个人或者公司的需求来选择吧。
正文
再做社会化分享的时候,mob里面给我们提供了一篇文章详细的讲解,如何实现的。
既然我们使用的是第三方平台,所以相对于我们自己实现要简单的很多。
到各大平台注册并创建应用
1.到mob平台去注册并创建应用
注册和创建应用的步骤我想就不用我多说了。
SDK地址(http://www.mob.com/#/downloadDetail/ShareSDK/android),下载下来发现无法解压(你们可以试一下),联系他们客服,他们说:上传错误,就给我发了一个。我把它和我的Dmeo放在一起,可供下载。
解压压缩包之后,找到ShareSDK for Android下Libs里面的两个文件夹,在后面我们会用到
2.到微信、新浪微博和QQ平台去注册并创建应用获取AppKey
这是开放平台地址:
QQ开放平台地址:http://open.qq.com/
新浪微博开放平台地址:http://open.weibo.com/
微信开放平台地址:https://open.weixin.qq.com/
各大开放平台的网址及申请流程汇总:http://bbs.mob.com/forum.php?mod=viewthread&tid=275
3.配置
1).导入SDK到工程文件:
- 新建library形式的module,删掉这个module中src/main目录里面的所有文件(包括删掉java、res、AndroidManifest.xml)
- 复制第三方库的AndroidMainfest.xml、res、src文件(夹)到库目录的src/main目录中
将src/main目录下的src目录重命名为java
我们将上图中的两个工程文件新建为两个Library module:ShareSDK和OneKeyShare,记得要将下面的这个文件夹中的东西也要拷到MainLibs这个module的libs文件夹下:
然后,需要注意的是,OneKeyShare这个module是依赖于ShareSDK这个module;而app这个module是依赖于OneKeyShare这个module。
2).添加应用信息:
先在app这个module(即我们这个项目的module)下新建一个assets文件夹(即第三方资产目录),操作如下:
然后,我们将上图中的ShareSDK.xml文件复制到assets目录下。
紧接着开始修改ShareSDK.xml文件中的代码。这里以新浪微博为例:
Enable字段表示是否想分享到该平台
RedirectUrl字段表示是否使用客户端分享
注:如果选择客户端分享,而手机没安装客户端则会使用网页版进行授权(除微信外)
新浪微博的回调地址RedirectUrl这个字段的值就是我们后台项目中的应用信息——>高级信息——>OAuth2.0 授权设置中的授权回调页这个字段,需要我们填写一个有效的地址就可以,例如下图:
注:如果RedirectUrl这个字段不填或填写不对会报以下错误:
3).配置AndroidManifest.xml: