一 引言: java
ShareSDK是很是棒的移动社会化分享和评论工具,相信咱们在开发应用过程当中都离不开它。可是当咱们集成ShareSDK时候一样会遇到一些问题。 android
1. ShareSDK包比较大,组合国内多家分享平台之后其SDK包的大小应该在1M以上,这对应用来讲仍是不小的负荷。 git
2. 集成ShareSDK过程当中咱们不可避免的须要将它的资源文件复制到应用的res资源目录下,这对咱们应用后期维护形成不小的干扰。 app
基于以上的两大状况,我想经过ApkPlug框架将ShareSDK总体作成组件,在用户须要的时候才动态的从服务端加载到本地,这样作很方便的就解决了以上两个问题。 框架
项目源码可从这里下载 ide
二 项目所使用到的开发库 模块化
Apkplugv2.7.5版本 (必须是v2.7.5以上版本,不然没法运行) 工具
Apkplug插件托管服务 v1.8.0版本以上 this
ShareSDKv2.10.7 (使用的最新版本DEMO) spa
三 项目目录结构
ShareSDKMain ---主应用演示DEMO
ShareSDKPlug ---ShareSDK 组件的具体实现
PlugShareSDK1.0.0.jar --组件调用库
四 使用步骤
五 调用ShareSDK组件
以上步骤配置完成之后便可使用ShareSDK组件了,使用方式很是简单,以分享功能为例
1.首先初始化ShareSdkAgent (在PlugShareSDK1.0.0.jar包中定义)
ShareSdkAgent agent=new ShareSdkAgent(this,frame.getSystemBundleContext());
2.建立分享数据Bean PlugShareInfo (在PlugShareSDK1.0.0.jar包中定义)
final PlugShareInfo oks=new PlugShareInfo(); oks.setAddress("北京市"); oks.setTitle("apkplug下sharesdk分享组件功能"); oks.setTitleUrl("http://www.apkplug.com"); oks.setText("apkplug是android下的模块化框架,ShareSDK是一个很是棒的社会化分享组件,本着不重复造轮子的思想,咱们将ShareSDK作成插件。详情见官网http://www.apkplug.com"); //oks.setImagePath(testImage); oks.setImageUrl("http://img.appgo.cn/imgs/sharesdk/content/2013/07/25/1374723172663.jpg"); oks.setUrl("http://www.apkplug.com"); //oks.setFilePath(testImage); oks.setComment("推荐使用apkplug框架减少应用体积,提供开发效率。"); oks.setSite(getString(R.string.app_name)); oks.setSiteUrl("http://mob.com"); oks.setVenueName("apkplug"); oks.setVenueDescription("apkplug是android下的模块化框架!"); oks.setLatitude(23.056081f); oks.setLongitude(113.385708f); oks.setDisableSSOWhenAuthorize(false);
3.调用ShareSDK组件进行分享
agent.StatShareSDK( new CheckInitCallBack(){ @Override public void onSuccess(PlugShareSDK sharesdk) { //ShareSDK组件已安装并启动完成 //执行分享功能 sharesdk.showShare(oks); } @Override public void onFailure(int errorNo, String strMsg) { } });
运行DEMO: