android 使用第三方(ShareSDK)分享

话不多说,直接进入正题

1、获取Appkey

需要进入shareSDK的官网,获取一个appkey 和 App Secret

网址http://www.mob.com/

 

首先需要注册用户,然后登录。之后点击进入后台


android 使用第三方(ShareSDK)分享_第1张图片
 

 

接着添加应用



 

添加完应用后,会生成应用



 

 

 

2、下载ShreSDK 

 

下载链接:http://www.mob.com/downloads/

 

然后选择自己需要的sdk,此处我们下载android
android 使用第三方(ShareSDK)分享_第2张图片
 

 

 

下载完成解压后是这个目录


android 使用第三方(ShareSDK)分享_第3张图片
 3、集成shareSDK 

 

这里给出官方集成sdk的文档 文档地址:http://wiki.mob.com/


android 使用第三方(ShareSDK)分享_第4张图片
 

可以选择你自己需要的文档,进行查阅。

 

 

同时这里也给出自己按照 官方的文档做的示例

 

 

3.1将shareSDK导入我们的项目

 

我们使用的是引用的方式


android 使用第三方(ShareSDK)分享_第5张图片
 

 


android 使用第三方(ShareSDK)分享_第6张图片
 

 


android 使用第三方(ShareSDK)分享_第7张图片
 

若提示错误 解决办法:Onekeyshare和Sharesdk在项目的根目录里的project.properties配置文件里设置了target=android-8,如果没有此版本的Adnroid SDK请修改你有的Android SDK版本后保存。项目的编码格式为UTF-8。

 

3.2项目引用

这里Onekeyshare 依赖了Sharesdk

选中Onkeyshare 右键--》properties--》android ---》add 
android 使用第三方(ShareSDK)分享_第8张图片
 

接着选中Sharesdk项目右键--》properties---》android--》is library


android 使用第三方(ShareSDK)分享_第9张图片
 

 

 

再接着选中我们自己的app 项目右键--》properties--》android--》add


android 使用第三方(ShareSDK)分享_第10张图片
 

 

再接着选中我们自己的app 项目右键--》properties--》java build path--》Projects--》add

 


android 使用第三方(ShareSDK)分享_第11张图片
 

 

接着进入下载后解压的shareSDK 目录。进入ShareSDK for Android\ Res

将改目录下的ShareSDK.xml文件copy到自己的项目assert目录下


android 使用第三方(ShareSDK)分享_第12张图片
 

然后在打开加上你自己的appkey


android 使用第三方(ShareSDK)分享_第13张图片
 
3.3修改manifest.xml

 

接着在manifest.xml文件中添加所需要的权限

 





















 





 

 

 

为了授权操作可以顺利完成,需要在application下注册下面的Activity:

 





       



       





     

         

         

         

         

     



    

    

        

        

    



    

    









    



 













如果集成QQ分享,或者使用QQ客户端来进行QQ空间的分享,须要在此处添加一个回调activity,对ACTION_VIEW事件的过滤器,其中的scheme是“tencent”前缀再开发者应用的加上appId。如果此Activity和过滤器不设置,则分享结束以后不能得到正确的回调。



     

         

          

          

          

     

 

 

 

如果您的项目集微信或者微信朋友圈,请查看AndroidManifest.xml配置文件里的package路径,需要在package目录下创建wxapi目录再放置WXEntryActivity。 没有此activity在微信分享后回调会检查是否有此activity,没有将会报错。

 

 

如我的项目在manifest.xml 中配置了package


android 使用第三方(ShareSDK)分享_第14张图片
 

则我添加的 WXEntryActivity结构如下


android 使用第三方(ShareSDK)分享_第15张图片
 

 

而如果您的项目集易信的两个平台,请查看AndroidManifest.xml配置文件里的package路径需要在package目录下创建yxapi目录在放置回调Activity:

 

 

 

 

 

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

 

android:name="com.mob.MobApplication"

我的结构如下

 
android 使用第三方(ShareSDK)分享_第16张图片
 

 

 

注意:如果你有自己的Application类,那么也可以让你的Application类继承MobApplication即可。

 

 

4、代码及测试

首先一个这么简单的界面


android 使用第三方(ShareSDK)分享_第17张图片
 

添加事件监听

public void shareTo(View v) {
		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("分享");
		
		// titleUrl是标题的网络链接,仅在人人网和QQ空间使用
		oks.setTitleUrl("http://sharesdk.cn");
		
		
		// text是分享文本,所有平台都需要这个字段
		oks.setText("我是分享文本");
		// imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
		//oks.setImagePath("/sdcard/test.jpg");// 确保SDcard下面存在此张图片
		
		
		// comment是我对这条分享的评论,仅在人人网和QQ空间使用
		oks.setComment("我是测试评论文本");
		
		// site是分享此内容的网站名称,仅在QQ空间使用(分享完成后可能会提示,是留在QQ,还是返回应用这个名称就是应用名)
		oks.setSite(getString(R.string.app_name));
		
		// siteUrl是分享此内容的网站地址,仅在QQ空间使用(分享后点击就会进入改地址)
		oks.setSiteUrl("http://sharesdk.cn");
		// url仅在微信(包括好友和朋友圈)中使用
		oks.setUrl("http://sharesdk.cn");
		// 启动分享GUI
		oks.show(this);

	}

 

 

 

运行效果如下


android 使用第三方(ShareSDK)分享_第18张图片
 


 




android 使用第三方(ShareSDK)分享_第19张图片
 

 

 


android 使用第三方(ShareSDK)分享_第20张图片
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Android)