sharesdk集成 分享到微信(sharesdk)
你们好,最近小活发现有诸多的小伙伴们对于sharesdk集成 分享到微信,sharesdk这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。
1、1,导入 ApkPlug 框架
2、将 Bundle2.7.5-Dev.jar 和 ApkplugCloudService1.8.0-Release.jar 拷贝到主应用 libs 目录下
3、Bundle2.7.5-Dev.jar 是 apkplug 核心库 (v2.7.5 版本以后只需要该文件即可不在需 要 libndkfoo.so)
4、ApkplugCloudService1.8.0-Release.jar 是 apkplug 插件托管服务 SDK,我们用它下载 服务端的 ShareSDK 组件
5、2,导入 ShareSDK 调用库
6、将 PlugShareSDK1.0.0.jar 拷贝到主应用的 libs 目录下,它是 ShareSDK 组件的调用库, 它封装了 ShareSDK 组件的调用接口,以及如果从 apkplug 插件托管服务下载组件的业务 逻辑。
7、3,配置相关权限
8、<!-- APKPLUG框架须要的权限 -->
9、<uses-permission
10、android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
11、<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
12、<uses-permission android:name="android.permission.INTERNET" />
13、<uses-permission android:name="android.permission.READ_PHONE_STATE" />
14、<!-- ShareSDK须要的权限 -->
15、<uses-permission android:name="android.permission.GET_TASKS" />
16、<uses-permission android:name="android.permission.INTERNET" />
17、<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
18、<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
19、<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
20、<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
21、<uses-permission android:name="android.permission.READ_PHONE_STATE" />
22、<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
23、<uses-permission android:name="android.permission.GET_ACCOUNTS" />
24、4,配置相关 activity
25、<!-- APKPLUG框架须要的Activity配置 -->
26、<activity
27、android:name="org.apkplug.app.apkplugActivity" android:theme="@android:style/Theme.Translucent" android:configChanges="orientation|keyboardHidden"
28、/>
29、<!-- ShareSDK须要的Activity配置 -->
30、<!-- 微信分享回调 -->
31、<activity
32、android:name="cn.sharesdk.socialization.sample.wxapi.WXEntryActivity"
33、android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true"
34、android:screenOrientation="portrait" />
35、<!-- 易信分享回调 -->
36、<activity
37、android:name="cn.sharesdk.socialization.sample.yxapi.YXEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:excludeFromRecents="true"
38、android:exported="true"
39、android:launchMode="singleTop" />
40、<activity
41、android:name="cn.sharesdk.framework.ShareSDKUIShell" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:windowSoftInputMode="stateHidden|adjustResize" >
42、<!--Adapter表示一个继承自cn.sharesdk.framework.authorize.AuthorizeAdapter的类, 这个类可以监听到页面的生命周期,也可以获取授权页面的各种UI控件。 开发者可以通过继承AuthorizeAdapter,重写其方法,并获取各种UI来自定义这个页面的行为。
43、<meta-data android:name="Adapter" android:value="cn.sharesdk.demo.MyAdapter" />
44、-->
45、<!--Dropbox的SSO功能需要在此处添加一个对ACTION_VIEW事件的过滤器,其中的scheme是“db-”前缀再开发者应用的加上appKey。如果此过滤器不设置,则不能完成SSO功能授权-->
46、<intent-filter>
47、<data android:scheme="db-7janx53ilz11gbs" />
48、<action android:name="android.intent.action.VIEW" />
49、<category android:name="android.intent.category.BROWSABLE" />
50、<category android:name="android.intent.category.DEFAULT" />
51、</intent-filter>
52、<!--如果集成QQ分享,或者使用QQ客户端来进行QQ空间的分享,须要在此处添加一个对 ACTION_VIEW事件的过滤器,其中的scheme是“tenc ent”前缀再开发者应用的加上appId。如 果此过滤器不设置,则分享结束以后不能得到正确的回调-->
53、<intent-filter>
54、<data android:scheme="tencent100371282" />
55、<action android:name="android.intent.action.VIEW" />
56、<category android:name="android.intent.category.DEFAULT" />
57、<category android:name="android.intent.category.BROWSABLE" />
58、</intent-filter>
59、</activity>
60、注释说明:
61、ApkPlug 框架的插件 activity 是不需要在宿主配置的,但 ShareSDK 的这几个 Activity是负责与外部应用通信回调的,因此需要在宿主配置。
62、5,调用 ShareSDK 组件
63、以上步骤配置完成以后即可使用 ShareSDK 组件了,使用方式非常简单,以分享功能为例:
64、(1).首先初始化 ShareSdkAgent (在 PlugShareSDK1.0.0.jar 包中定义)
65、ShareSdkAgent agent=new ShareSdkAgent(this,frame.getSystemBundleContext());
66、(2).创建分享数据 Bean PlugShareInfo (在 PlugShareSDK1.0.0.jar 包中定义)
67、final PlugShareInfo oks=new PlugShareInfo(); oks.setAddress("北京市"); oks.setTitle("apkplug下sharesdk分享组件功能");
68、oks.setTitleUrl("http://www.apkplug.com"); oks.setText("apkplug是android下的模块化框架,ShareSDK是一个非常棒的社会化分享组件, 本着不重复造轮子的思想,我们将ShareSDK做成插件。详情见官网http://www.apkplug.com");
69、//oks.setImagePath(testImage); oks.setImageUrl("http://img.appgo.cn/imgs/sharesdk/content/2013/07/25/1374723172663.jpg"); oks.setUrl("http://www.apkplug.com");
70、//oks.setFilePath(testImage); oks.setComment("推荐使用apkplug框架减小应用体积,提供开发效率。");
71、oks.setSite(getString(R.string.app_name)); oks.setSiteUrl("http://mob.com"); oks.setVenueName("apkplug");
72、oks.setVenueDescription("apkplug是android下的模块化框架!");
73、oks.setLatitude(23.056081f); oks.setLongitude(113.385708f); oks.setDisableSSOWhenAuthorize(false);
74、(3).调用 ShareSDK 组件进行分享
75、agent.StatShareSDK(
76、new CheckInitCallBack(){
77、@Override
78、public void onSuccess(PlugShareSDK sharesdk) {
79、//ShareSDK组件已安装并启动完成
80、//执行分享功能 sharesdk.showShare(oks);
81、}
82、@Override
83、public void onFailure(int errorNo, String strMsg) {
84、}
85、});
86、6,操作演示
87、源码及 Demo 地址:http://store.apkplug.com/pluginfo?plugid=201503301441241
以上就是sharesdk这篇文章的一些介绍,希望对大家有所帮助。
免责声明:本文由用户上传,如有侵权请联系删除!
猜你喜欢
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
最新文章
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13
- 02-13