Mob社会化分享集成ShareSDK

2周前 (02-13 05:45)阅读1回复0
丸子
丸子
  • 管理员
  • 注册排名9
  • 经验值131185
  • 级别管理员
  • 主题26237
  • 回复0
楼主

若何在项目已经集成 SMSSDK 的情状下集成 ShareSDk 到项目中,需要利用创建 module 的体例引进 ShareSDk,次要内容如下:

1.下载ShareSDK

2.引进 ShareSDK

3.创建 MainLibs Module

4.创建 OneKeyShare Module

5.在项目中引进 Module

6.设置装备摆设权限

7.设置装备摆设 Application

8.启用 ShareSDK

下载 ShareSDk

官网下载地址:ShareSDK,下载时选中要分享的平台,如下图所示:

下载的 ShareSDk 解压缩如下,那里下载的版本是 ShareSDK-Android-3.0.0 ,如下图所示:

展开全文

引进 ShareSDK

起首,复造 ShareSDk 中的 ShareSDK.xml 文件到项目中的 assets 目次下, 那里利用引进 module 的体例引进 ShareSDk,ShareSDK 里面次要引进如下两个 Libs,如下图所示:

下面演示一下 Module的创建过程:

创建 MainLibs Module

1、在新建的项目中创建一个 Android Library,点击链接演示:

2.删除新创建的 Library 中 main 下面的所有文件,及 java、res两个文件夹和 AndroidManifest.xml 文件,如下图所示:

3.复造要引进的 MainLibs 中的 res 、 AndroidMainfest.xml 、libs(里面的jar) 到对应的文件夹,如下图所示:

导进 mainLibs 中构造如下:

此时,那个 module 就创建好了,那里利用 ShareSDK 供给的分享页面,故还需引进 OneKeyShare。

创建 OneKeyShare Module

创建 Module 的过程和上述一样,重视的是多了一个 src ,里面是要利用的 java 文件,所以必需也得引用,如下图所示:

将 src 文件夹复造到 main下面即可,build 之后假设不出错,阐明 Module 创建胜利了,下面根据依靠关系一如对应的 Module 即可。

在项目中引进 Module

那里面 OnKeyShareLibs 依靠 MainLibs ,只需 app 依靠 OnkeyShareLibs 即可,那里演示 OnKeyShareLibs 若何依靠 MainLibs,点击链接演示:

然后,同样的体例 app 依靠 OnKeyShareLibs 即可。

设置装备摆设权限

那里之前设置装备摆设过 SMSSDK ,只需填补贫乏的权限即可,下面是同时集成了 SMSSDK 和 ShareSDK 所需的全数权限,如下:

uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /

uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /

uses-permission android:name="android.permission.INTERNET" /

设置装备摆设 Application

假设之前设置装备摆设过 SMSSDK ,那么 MobUIShell 是设置装备摆设过的,只需添加贫乏的 IntentFilter ,集成 SMSSDK 和 ShareSDK 可共用 MobUIShell ,如下:

activity

android:name="com.mob.tools.MobUIShell"

android:theme="@android:style/Theme.Translucent.NoTitleBar"

android:configChanges="keyboardHidden|orientation|screenSize"

android:windowSoftInputMode="stateHidden|adjustResize"

intent-filter

data android:scheme="tencent100371282" /

action android:name="android.intent.action.VIEW" /

category android:name="android.intent.category.BROWSABLE" /

category android:name="android.intent.category.DEFAULT" /

/intent-filter

/activity

假设您的项目集微信或者微信伴侣圈,请查看AndroidManifest.xml设置装备摆设文件里的package途径,需要在package目次下创建wxapi目次再放置WXEntryActivity。 没有此activity在微信分享后回调会查抄能否有此activity,没有将会报错:

activity

android:name=".yxapi.YXEntryActivity"

android:theme="@android:style/Theme.Translucent.NoTitleBar"

android:configChanges="keyboardHidden|orientation|screenSize"

android:exported="true"

android:screenOrientation="portrait" /

详细请参考:Android ShareSDK完全的集成文档

启用 SDK

通过 AndroidManifest.xml

在 Application 节点下添加以部属性:

android:name="com.mob.MobApplication"

在 Application 标签下添加 meta 参数:

!-- 通过AndroidManifest设置装备摆设AppKey和AppSecret,假设你抉择通过代码设置装备摆设,则不需要设置装备摆设以下meta-data --

meta-data android:name="Mob-AppKey" android:value="你的AppKey"/

meta-data android:name="Mob-AppSecret" android:value="你的AppSecret"/

代码设置装备摆设

// 通过代码注册你的AppKey和AppSecret

MobSDK.init(context, "你的AppKey", "你的AppSecret");

上述两种体例,只利用此中一种即可初始化 ShareSDK 了。

挪用分享界面

private void showShare() {

OnekeyShare oks = new OnekeyShare();

//封闭sso受权

oks.disableSSOWhenAuthorize();

// title题目,印象条记、邮箱、信息、微信、人人网和QQ空间利用

oks.setTitle(getString(R.string.share));

// titleUrl是题目的收集链接,仅在人人网和QQ空间利用

oks.setTitleUrl("");

// text是分享文本,所有平台都需要那个字段

oks.setText("我是分享文本");

// imagePath是图片的当地途径,Linked-In以外的平台都撑持此参数

oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片

// url仅在微信(包罗老友和伴侣圈)中利用

oks.setUrl("");

// comment是我对那条分享的评论,仅在人人网和QQ空间利用

oks.setComment("我是测试评论文本");

// site是分享此内容的网站名称,仅在QQ空间利用

oks.setSite(getString(R.string.app_name));

// siteUrl是分享此内容的网站地址,仅在QQ空间利用

oks.setSiteUrl("");

// 启动分享GUI

oks.show(this);

0
回帖

Mob社会化分享集成ShareSDK 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息