shareSDK社会化分享

点击打开链接,下载源码

注册--创建应用

shareSDK社会化分享_第1张图片

一、获取AppKey

二、下载SDK

三、快速集成

第一步:使快速工具进行集成

进入ShareSDK解压目录,打开“Share SDK for Android”目录,可以找到“QuickIntegrater.jar”,这个就是快速集成ShareSDK的工具

Windows下

首先确定您已经安装了JDK,并且正确配置了JAVA_HOME和PATH系统变量,此时您可以双击QuickIntegrater启动程序

shareSDK社会化分享_第2张图片

正确输入项目的名称和包名,勾选需要的集成的平台,然后点击“确定”。QuickIntegrater会自行产生一个目录,复制此目录中的所有文件到您的项目中覆盖即可。


1、直接复制jar包到目标项目libs目录 直接复制jar和资源的方式,可以参考ShareSDK的Sample项目。 使用复制jar的方法,需要除了复制MainLibs/libs中的jar外,还需要复制MainLibs/res中图片和strings,否则会出现授权时找不到资源的问题。 而且如果您的项目也集成了快捷分享,还需要复制OneKeyShare/src中的源码、OneKeyShare/res中的资源,如果你的项目里没有android-support-v4的jar需要把OneKeyShare/libs下的android-support-v4的jar到您的项目中。

第二步:配置AndroidManifest.xml(查看视频教程)

1、添加权限 
2、添加activity信息 注:intent-filer 是处理QQ和QZone回调的,其中tencent100371282里的tencent后的数字部分是QQ的id,一定要与sharesdk.xml里的QQ和QZone的Id保持一致;(2.6.2之前用此intent处理QQ的回调,包括2.6.2的版本) 
3、如果您集成了微信,易信,QQ,支付宝还需要添加下面回调的activity处理; (注:ShareSDK2.6.2之前QQ不需要处理下面的QQ的activity,从ShareSDK2.6.3开始加的QQ客户端回调的activity处理)  
Java
<!--微信分享回调 --> <activity android:name=".wxapi.WXEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true" android:screenOrientation="portrait" /> <!--易信分享回调 --> <activity android:name=".yxapi.YXEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true" android:screenOrientation="portrait" /> <!-- QQ客户端回调 --> <activity android:name="cn.sharesdk.tencent.qq.ResultReceiver" android:launchMode="singleTask" android:noHistory="true"> <!-- 如果集成QQ分享,或者使用QQ客户端来进行QQ空间的分享,须要在此处添加一个对ACTION_VIEW 事件的过滤器,其中的scheme是“tencent”前缀再开发者应用的加上appId。如果此过滤器不设置, 则分享结束以后不能得到正确的回调 --> <intent-filter android:priority="1000" > <data android:scheme="tencent100371282" /> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> </intent-filter> </activity> <!-- 支付宝分享回调 --> <activity android:name=".apshare.ShareEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true"/>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
< ! --微信分享回调 -- >
< activity
android : name = ".wxapi.WXEntryActivity"
android : theme = "@android:style/Theme.Translucent.NoTitleBar"
android : configChanges = "keyboardHidden|orientation|screenSize"
android : exported = "true"
android : screenOrientation = "portrait" / >
 
< ! --易信分享回调 -- >
< activity
android : name = ".yxapi.YXEntryActivity"
android : theme = "@android:style/Theme.Translucent.NoTitleBar"
android : configChanges = "keyboardHidden|orientation|screenSize"
android : exported = "true"
android : screenOrientation = "portrait" / >
 
< ! -- QQ客户端回调 -- >
< activity
android : name = "cn.sharesdk.tencent.qq.ResultReceiver"
android : launchMode = "singleTask"
android : noHistory = "true" >
< ! --
如果集成 QQ分享,或者使用 QQ客户端来进行 QQ空间的分享,须要在此处添加一个对 ACTION_VIEW
事件的过滤器,其中的 scheme是“ tencent”前缀再开发者应用的加上 appId。如果此过滤器不设置,
则分享结束以后不能得到正确的回调
-- >
< intent - filter android : priority = "1000" >
< data android : scheme = "tencent100371282" / >
< action android : name = "android.intent.action.VIEW" / >
< category android : name = "android.intent.category.DEFAULT" / >
< category android : name = "android.intent.category.BROWSABLE" / >
< / intent - filter >
< / activity >
 
< ! -- 支付宝分享回调 -- >
< activity
android : name = ".apshare.ShareEntryActivity"
android : theme = "@android:style/Theme.Translucent.NoTitleBar"
android : configChanges = "keyboardHidden|orientation|screenSize"
android : exported = "true" / >

4、替换mob后台申请的Appkey与各个平台申请的key(查看视频教程)

shareSDK社会化分享_第3张图片


第三步:添加分享代码(查看视频教程)

在您的代码中调用此方法,即可打开一键分享功能进行分享

private void showShare() { ShareSDK.initSDK(this); OnekeyShare oks = new OnekeyShare(); //关闭sso授权 oks.disableSSOWhenAuthorize(); // 分享时Notification的图标和文字 2.5.9以后的版本不调用此方法 //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name)); // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用 oks.setTitle(getString(R.string.share)); // titleUrl是标题的网络链接,仅在人人网和QQ空间使用 oks.setTitleUrl("http://sharesdk.cn"); // text是分享文本,所有平台都需要这个字段 oks.setText("我是分享文本"); // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数 oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片 // url仅在微信(包括好友和朋友圈)中使用 oks.setUrl("http://sharesdk.cn"); // comment是我对这条分享的评论,仅在人人网和QQ空间使用 oks.setComment("我是测试评论文本"); // site是分享此内容的网站名称,仅在QQ空间使用 oks.setSite(getString(R.string.app_name)); // siteUrl是分享此内容的网站地址,仅在QQ空间使用 oks.setSiteUrl("http://sharesdk.cn"); // 启动分享GUI oks.show(this); }
private void showShare() {
 ShareSDK.initSDK(this);
 OnekeyShare oks = new OnekeyShare();
 //关闭sso授权
 oks.disableSSOWhenAuthorize(); 

// 分享时Notification的图标和文字  2.5.9以后的版本不调用此方法
 //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name));
 // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
 oks.setTitle(getString(R.string.share));
 // titleUrl是标题的网络链接,仅在人人网和QQ空间使用
 oks.setTitleUrl("http://sharesdk.cn");
 // text是分享文本,所有平台都需要这个字段
 oks.setText("我是分享文本");
 // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
 oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片
 // url仅在微信(包括好友和朋友圈)中使用
 oks.setUrl("http://sharesdk.cn");
 // comment是我对这条分享的评论,仅在人人网和QQ空间使用
 oks.setComment("我是测试评论文本");
 // site是分享此内容的网站名称,仅在QQ空间使用
 oks.setSite(getString(R.string.app_name));
 // siteUrl是分享此内容的网站地址,仅在QQ空间使用
 oks.setSiteUrl("http://sharesdk.cn");

// 启动分享GUI
 oks.show(this);
 }


-

你可能感兴趣的:(shareSDK社会化分享)