ShareSDK实现第三⽅分享功能
⽬标:
集成ShareSDK,然后实现⾃⼰的软件可以分享信息到等第三⽅交互平台上⾯去。
本⽂以集成ShareSDK和实现分享为例,具体说⼀下实现软件第三⽅分享的流程。
1. 获取注册ShareSDK的账号,下载Android版ShareSDK并获取ShareSDK的
AppKey(AppKey后⾯要⽤)
具体流程参看下⾯链接:
2. 快速集成
进⼊ShareSDK(官⽹下载的分享SDK)解压⽬录,打开“Share SDK for Android”⽬录,可以到“QuickIntegrater.jar”,这个就是
快速集成ShareSDK的⼯具
Windows下
⾸先确定您已经安装了JDK,并且正确配置了JAVA_HOME和PATH系统变量,此时您可以双击QuickIntegrater启动程序
Linux/Mac OS下
同样需要先确保已经正确配置了JDK,之后启动终端,cd进⼊“Share SDK for Android”⽬录,输⼊: java -jar QuickIntegrater.jar
可启动QuickIntegrater
正确输⼊项⽬的名称和包名,勾选需要的集成的平台,然后点击“确定”。
QuickIntegrater会⾃⾏产⽣⼀个⽂件夹(名称就是你刚才填写的项⽬名称),复制此⽂件夹中所有⽂件到您的项⽬中覆盖即可。
AndroidStudio快速集成参考链接:
3.配置l
下⾯清单⽂件的配置是全部的,没有的平台就是不需要配置
1、添加权限
<uses-permission android:name="android.permission.GET_TASKS" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permis
2、添加activity信息
(注意: tencent后⾯的appid要保持和您配置的QQ的appid⼀致)
Java
<activity
android:name="ls.MobUIShell"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="portrait"
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>
<!-- 调⽤新浪原⽣SDK,需要注册的回调activity -->
<intent-filter>
<action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
3、如果您集成了,易信,新浪微博⽀付宝还需要添加下⾯回调的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" />
<!-- ⽀付宝分享回调 -->
<activity
android:name=".apshare.ShareEntryActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true"/>
4、替换mob后台申请的Appkey与各个平台申请的key
AppKey是你再ShareSDK官⽹获取到的AppKey;
后⾯的AppKeyheAppSecret是你在各个第三⽅交互平台获得的AppKey和AppSecret。
如何获取平台的AppKey和AppSecret链接:
已经在官⽹申请了账号了,想要在上⾯开发应⽤,必须⾸先对应⽤进⾏审核。在审核之前,需要填写应⽤的相关信息,包括名称、图标、⽤途说明、签名等。
4. 添加代码分享
在您的代码中调⽤此⽅法,即可打开⼀键分享功能进⾏分享
Java
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("sharesdk");
// text是分享⽂本,所有平台都需要这个字段
oks.setText("我是分享⽂本");
// imagePath是图⽚的本地路径,Linked-In以外的平台都⽀持此参数
oks.setImagePath("/sdcard/test.jpg");//确保SDcard下⾯存在此张图⽚
// url仅在(包括好友和朋友圈)中使⽤
oks.setUrl("sharesdk");
// comment是我对这条分享的评论,仅在⼈⼈⽹和QQ空间使⽤
oks.setComment("我是测试评论⽂本");
// site是分享此内容的⽹站名称,仅在QQ空间使⽤
oks.setSite(getString(R.string.app_name));
// siteUrl是分享此内容的⽹站地址,仅在QQ空间使⽤
oks.setSiteUrl("sharesdk");
// 启动分享GUI
oks.show(this);
}
基本上到这⾥就算成功了!!