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