得益于慕课网的视频教学,集成mob的一键分享可实现40多个平台的分享,集成第三方操作简单易懂,直接入题
001. SharedSDK准备工作:
No1:你要实现那些分享最好事先去对应的平台对你的应用做以申请(因为审核通过需要时间),获取相应的APP_KEY,分享都其他平台的钥匙(不会申请的可以去个开发平台看相应的官方文档,一步一步操作)。
No2:做一键分享之前我建议你去 mob官网 看一下文档,对你开发一键分享很有帮助。
No3:在官网下载最新的一键分享的SDK:最新SDk地址 ,并在Mob官网注册获取平台的App Key和App Secret,我们的分享就是借助他们两个和该平台实现对接并使用其功能。
002. SharedSDK集成配置(此处为Studio):
No1:以新浪微博分享为例,先看下面的流程图,了解分享的背后
< ! - - 在这里先付一张成果图look一下
对上图做一简单的解析:客户端通过点击按钮,通过app_Key获取平台的名字,通过相应的名字将我们客户端Map集合中
的文本信息和图片信息(视频、连接等都可以分享)一并分享出去,此时借助Mob平台实现分享,需要借助我们之前申请的两个
值。分享成功之后返回客户端一个信息。
003. 集成SharedSDK环境:
No1:集成一键分享的SDK:解压缩你在Mob官网下载的最新的sdk得到如下目录,按图操作:
No2:配置Studio:
a. 打开你集成的目录文件得到以下四个文件夹,看图对应放到studio目录即可:
b. 新建一个studio项目,切换到project目录视图,只需在main目录下新建asserts目录即可(libs目录应该为空,因为我放了文件进去),如下:
c. 将刚才你生成项目下面的4个包对应copy到studio的对应目录即可,下面分别做以说明:
紫01:将libs下面的jar包全部copy到studio下面,选择 add to library作为库文件引入
紫02: 把assets中的内容copy到我们新建的assets目录,然后修改ShareSDK.xml文件中的,然后将你申请的各个平台的APP_ID以及Mob的sharesdk appkey按照SharedSDK.xml修改即可
紫03:把src中的cn和cm目录copy到main目录下的java文件
紫04:把res中的资源内容copy到res目录
注:清单配置文件按官方文档和自己的需求更改即可:点击查看官方清单配置文件详解
OK,至此studio配置完成,几行代码便可实现一键分享N多平台!!
值得注意的一点是下图所示(RedirectUrl="http://www.sharesdk.cn" 这个网址和你新浪微博开放平台的授权回调网址保持一致,否则在分享时会出现访问出错 ):
No3:代码编写:
在主Activity当中添加一个一键分享的按钮,给按钮添加点击监听,在监听里面调用showShare()方法,实现一键分享功能,就这么简单:
public class MainActivity extends AppCompatActivity { private Button sharedBt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
//注册一键分享 ShareSDK.initSDK(this); //初始化控件 sharedBt= (Button) findViewById(R.id.sharedId); sharedBt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showShare(); } }); }
//调用第三方集成实现一键分享 private void showShare() { OnekeyShare share = new OnekeyShare(); //关闭sso授权 share.disableSSOWhenAuthorize(); // 分享时Notification的图标和文字 2.5.9以后的版本不调用此方法 //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name)); // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用 //oks.setTitle(getString(R.string.share)); share.setTitle("分享title"); // titleUrl是标题的网络链接,仅在人人网和QQ空间使用 share.setTitleUrl("自己指定一个地址即可"); // text是分享文本,所有平台都需要这个字段 share.setText("对你的应用的简介"); // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数 //oks.setImagePath("/sdcard/a.jpg");//确保SDcard下面存在此张图片 // url仅在微信(包括好友和朋友圈)中使用 share.setUrl("自己选择一个网址链接"); // comment是我对这条分享的评论,仅在人人网和QQ空间使用 share.setComment("个人评论"); // site是分享此内容的网站名称,仅在QQ空间使用 share.setSite(getString(R.string.app_name)); // siteUrl是分享此内容的网站地址,仅在QQ空间使用 share.setSiteUrl("自己制定的链接地址"); // 启动分享GUI share.show(this); } }Eclipse版本的一键分享你可以去Mob上按照他说一步一步操作即可,欢迎探讨