eoe 移动开发者论坛

 找回密码
 加入eoe

QQ登录

只需一步,快速开始

查看: 1996|回复: 6
收起左侧

[Android实例] 第二次使用友推sdk

  [复制链接]

该用户从未签到

4

主题

45

帖子

359

e币
发表于 2014-7-30 14:10:16 | 显示全部楼层 |阅读模式
本帖最后由 流123 于 2014-7-31 15:18 编辑

上次发文活动晚了,神马都没有了。不知道这次还会不会迟到了;
这里要感谢我的同事@叶无双,微信开发平台一直注册不了,不知道是怎么回事,这里使用他的key;
这里发了一个完整的应用,文件管理器,很多人都有。这里主要介绍友推的截图分享功能;
1:先去官网下载友推的截图分享sdk,http://youtui.mobi/download/index.htm,打开地址,下载,
社交分享组件,即可。看效果图



涂鸦效果



主要介绍下使用代码图,
首先是youtui_sdk.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <KeyInfo>

  3.     <!--
  4.     分享平台的注册信息,一定要填入在相应平台注册的正确信息,不然应用无法完成授权,
  5.         也无法进行分享,enable属性决定是否分享该平台
  6.         
  7.     -->


  8.     <!-- 友推sdk注册地址 : http://youtui.mobi/ -->

  9.     <YouTui AppKey="759464" />

  10.     <!-- 微信和朋友圈注册:https://open.weixin.qq.com/ -->

  11.     <Wechat
  12.         AppId="wxe60461a4c1fe7aba"
  13.         Enable="true" />

  14.     <WechatMoments
  15.         AppId="wxe60461a4c1fe7aba"
  16.         Enable="true" />

  17.     <!-- 新浪微博注册地址:http://open.weibo.com/ -->

  18.     <SinaWeibo
  19.         AppKey="2502314449"
  20.         AppSecret="df10502d7b422937adea431cd985904a"
  21.         Enable="true"
  22.         IsNoKeyShare="false"
  23.         IsWebShare="false"
  24.         RedirectUrl="http://youtui.mobi/weiboResponse" />

  25.     <!-- QQ,QQ空间注册地址:http://open.qq.com/ -->

  26.     <QQ
  27.         AppId="1101255276"
  28.         AppKey="h4sOXgtTtsqRjoOq"
  29.         Enable="true" />

  30.     <QZone
  31.         AppId="1101255276"
  32.         AppKey="h4sOXgtTtsqRjoOq"
  33.         Enable="true" />
  34.     <!-- 腾讯微博注册地址:http://dev.t.qq.com/ -->

  35.     <TencentWeibo
  36.         AppKey="801443192"
  37.         AppSecret="45d65f2d2650637c96ece74f4a67b686"
  38.         Enable="true"
  39.         IsNoKeyShare="true"
  40.         RedirectUrl="http://yt.bidaround.cn/" />
  41.    

  42.     <!-- 人人注册地址: http://dev.renren.com/ -->

  43.     <Renren
  44.         AppId="244110"
  45.         AppKey="b1a80ac1aa694090bfb9aa3a590f2161"
  46.         Enable="true"
  47.         SecretKey="506ccdbda36046d197801e79c4ebba23" />

  48.     <ShortMessage Enable="true" />

  49.     <Email Enable="true" />
  50.     <!-- 复制链接 -->

  51.     <CopyLink Enable="true" />

  52.     <More Enable="true" />

  53. </KeyInfo>
复制代码
主要填写友推的key,和微信的key就可以了,其他的key,友推都已经集成好了,省了。。。。
其次,是代码调用分享。

  1.             mGridViewToolbar.setOnItemClickListener(new OnItemClickListener(){

  2.                         public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
  3.                                         long arg3) {
  4.                                 switch(arg2){
  5.                                 //回到根目录
  6.                                 case 0:
  7.                                         menuPosition = 1;
  8.                                          initFileListInfo(mRootPath);
  9.                                         break;
  10.                                 //回到SD卡根目录
  11.                                 case 1:
  12.                                         menuPosition = 2;
  13.                                 initFileListInfo(mSDCard);
  14.                                         break;
  15.                                 //显示搜索对话框
  16.                                 case 2:
  17.                                         searchDilalog();
  18.                                         break;
  19.                                 //创建文件夹
  20.                                 case 3:
  21.                                         createFolder();
  22.                                         break;
  23.                                 //粘贴文件
  24.                                 case 4:
  25.                                         palseFile();
  26.                                         break;
  27.                                 //分享
  28.                                 case 5:

  29.                                         ShareData whiteViewShareData = new ShareData();
  30.                                         whiteViewShareData.isAppShare = false;
  31.                                         whiteViewShareData.setDescription("友推积分组件");
  32.                                         whiteViewShareData.setTitle("文件管理");
  33.                                         whiteViewShareData.setText("文件管理");
  34.                                         whiteViewShareData.setTarget_url("http://www.anzhi.com/soft_1686964.html");
  35.                                         whiteViewShareData.setImageUrl("http://pic16.nipic.com/20110817/6593637_190516770901_2.jpg");
  36.                                         // shareData.setImagePath(Environment.getExternalStorageDirectory()+YoutuiConstants.FILE_SAVE_PATH+"demo.png");
  37.                                         YtTemplate whiteGridTemplate = new YtTemplate(MainActivity.this, YouTuiViewType.WHITE_GRID, false);
  38.                                         whiteGridTemplate.setShareData(whiteViewShareData);

  39.                                         YtShareListener whiteViewListener = new YtShareListener() {

  40.                                                 @Override
  41.                                                 public void onSuccess(ErrorInfo error) {
  42.                                                         YtLog.e("----", error.getErrorMessage());
  43.                                                 }

  44.                                                 @Override
  45.                                                 public void onPreShare() {

  46.                                                 }

  47.                                                 @Override
  48.                                                 public void onError(ErrorInfo error) {
  49.                                                         YtLog.e("----", error.getErrorMessage());
  50.                                                 }

  51.                                                 @Override
  52.                                                 public void onCancel() {

  53.                                                 }
  54.                                         };
  55.                                         /** 添加分享结果监听,如果开发者不需要处理回调事件则不必设置 */
  56.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_QQ, whiteViewListener);
  57.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_QZONE, whiteViewListener);
  58.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_RENN, whiteViewListener);
  59.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_SINAWEIBO, whiteViewListener);
  60.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_TENCENTWEIBO, whiteViewListener);
  61.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_WECHAT, whiteViewListener);
  62.                                         whiteGridTemplate.addListener(YtPlatform.PLATFORM_WECHATMOMENTS, whiteViewListener);
  63.                                         /**
  64.                                          * 为每个平台添加分享数据,如果不单独添加,分享的为whiteViewTemplate.setShareData(
  65.                                          * whiteViewShareData)设置的分享数据
  66.                                          */
  67.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_QQ, whiteViewShareData);
  68.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_QZONE, whiteViewShareData);
  69.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_RENN, whiteViewShareData);
  70.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_SINAWEIBO, whiteViewShareData);
  71.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_TENCENTWEIBO, whiteViewShareData);
  72.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_WECHAT, whiteViewShareData);
  73.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_WECHATMOMENTS, whiteViewShareData);
  74.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_MESSAGE, whiteViewShareData);
  75.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_EMAIL, whiteViewShareData);
  76.                                         whiteGridTemplate.addData(YtPlatform.PLATFORM_MORE_SHARE, whiteViewShareData);

  77.                                         whiteGridTemplate.show();
  78.                                         temp = whiteGridTemplate;
  79.                                        
  80.                                 
  81.                                 //        MainActivity.this.finish();
  82.                                         break;
  83.                                 }
  84.                         }                  
  85.             });
  86.    
复制代码
主要调用代码,都是友推文档里已经写好了的,一看就明白。
清单文件也要配置好
  1. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  2.     <uses-permission android:name="android.permission.RECORD_AUDIO" >
  3.     </uses-permission>
  4.    
  5.     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  6.     <!-- 检测网络状态 -->
  7.     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
  8.     <!-- 获取mac地址作为用户的备用唯一标识 -->
  9.     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
  10.     <!-- 获取用户手机的IMEI,用来唯一的标识用户。 -->
  11.     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  12.     <!-- 缓存资源优先存入SDcard -->
  13.     <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
  14.     <uses-permission android:name="android.permission.INTERNET" />
  15.     <!-- 允许应用程序联网 -->
  16.     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  17.     <!-- 用于加载图片 -->
  18.     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
  19.     <!-- 用于人人SSO登陆 -->
  20.     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
  21.     <!-- 用于人人SSO登陆 -->
  22.     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
  23.     <!-- 用于人人SSO登陆 -->
复制代码
这是权限要加完整了,不然分享时候可能错误;
  1. <meta-data
  2.             android:name="YOUTUI_CHANNEL"
  3.             android:value="com.supermario.filemanager_yt" >
  4.         </meta-data>



  5. <!-- 微信分享需要注册该activity -->
  6.         <activity
  7.             android:name="com.wushuang.constellation.wxapi.WXEntryActivity"
  8.             android:exported="true"
  9.             android:launchMode="singleTask"
  10.             android:theme="@android:style/Theme.Translucent" >
  11.         </activity>
  12.         <!-- qq回调需要注册该activity -->
  13.         <activity
  14.             android:name="com.tencent.connect.common.AssistActivity"
  15.             android:configChanges="orientation|keyboardHidden"
  16.             android:screenOrientation="portrait"
  17.             android:theme="@android:style/Theme.Translucent.NoTitleBar" />

  18.         <!-- qq授权需要注册该activity -->
  19.         <activity
  20.             android:name="com.tencent.tauth.AuthActivity"
  21.             android:launchMode="singleTask"
  22.             android:noHistory="true" >
  23.             <intent-filter>
  24.                 <action android:name="android.intent.action.VIEW" />

  25.                 <category android:name="android.intent.category.DEFAULT" />
  26.                 <category android:name="android.intent.category.BROWSABLE" />

  27.                 <data android:scheme="tencent1101255276" />
  28.             </intent-filter>
  29.         </activity>
  30.         <!-- 人人授权需要注册的activity -->
  31.         <activity
  32.             android:name="com.renn.rennsdk.oauth.OAuthActivity"
  33.             android:configChanges="orientation|navigation|keyboardHidden" />
  34.         <!-- 分享界面 -->
  35.         <activity
  36.             android:name="cn.bidaround.ytcore.activity.ShareActivity"
  37.             android:exported="true"
  38.             android:launchMode="singleTop"
  39.             android:theme="@android:style/Theme.Translucent.NoTitleBar" >

  40.             <!-- 新浪微博分享回调需要设置 -->
  41.             <intent-filter>
  42.                 <action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />

  43.                 <category android:name="android.intent.category.DEFAULT" />
  44.             </intent-filter>
  45.         </activity>
  46.         <!-- 应用授权 activity -->
  47.         <activity
  48.             android:name="cn.bidaround.ytcore.login.AuthActivity"
  49.             android:theme="@android:style/Theme.Translucent.NoTitleBar" />
  50.         <!-- 友推积分activity -->
  51.         <activity android:name="cn.bidaround.point.PointActivity" />
  52.         <!-- 截屏编辑activity -->
  53.                 <activity
  54.             android:name="cn.bidaround.youtui_template.ScreenCapEditActivity"
  55.             android:screenOrientation="portrait"
  56.             android:theme="@android:style/Theme.Black.NoTitleBar" />
复制代码
这是友推用到的类的声明,请注意com.wushuang.constellation.wxapi.WXEntryActivity,这个类路径,com.wushuang.constellation这是微信key对应的包名,因为微信开发账号申请一直系统错误,so用了同事的key,报名也是对应的他的报名。
以上就是友推截图分享使用方法;还是看不明白的,请看源码!!!!
感觉这个截图分享功能,比以前的光一个文字链接分享,强很多了,毕竟图有时候比文字更直观明了。集成难道也不是很难,只是调用了一个方法的事情呢。截图涂鸦挺好玩的,尤其是文件管理中,可以打开图片 分享,随便你在照片上干什么的。赞下!!!
唯一要注意的情况是,youtui-lib文件要项目文件在同一个文件里,必须要导入进开发工具中,并且导入这个lib。项目里必要要有V4jar包才可以。

活动详情请看,http://www.eoeandroid.com/thread-538750-1-1.html

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入eoe

x

该用户从未签到

0

主题

34

帖子

151

e币
发表于 2014-8-17 21:57:49 | 显示全部楼层
原来除了shareSDK还有这个啊

该用户从未签到

0

主题

4

帖子

41

e币
发表于 2014-8-18 13:19:11 | 显示全部楼层
mark一下,以后有用到时再用,谢谢楼主

该用户从未签到

33

主题

329

帖子

1093

e币
发表于 2014-11-12 14:33:37 | 显示全部楼层
感谢分享

签到天数: 367 天

连续签到: 1 天

[LV.9]以坛为家II

3

主题

497

帖子

4089

e币
QQ认证
发表于 2014-11-14 11:10:20 | 显示全部楼层
广东省广东省                        

签到天数: 2 天

连续签到: 1 天

[LV.1]初来乍到

0

主题

18

帖子

4

e币
发表于 2015-4-16 00:06:08 | 显示全部楼层
谢谢你的分享,楼主萌萌哒

签到天数: 11 天

连续签到: 1 天

[LV.3]偶尔看看II

0

主题

24

帖子

100

e币
发表于 2015-4-16 08:35:32 | 显示全部楼层
下载下来看看怎么使用
*滑动验证:
您需要登录后才可以回帖 登录 | 加入eoe

本版积分规则

推荐阅读
赞助商们

QQ|联系我们|小黑屋|手机版|eoe 移动开发者论坛 ( 京ICP备11018032 京公网安11010802020210  

GMT+8, 2017-11-22 17:23 , Processed in 0.519564 second(s), 42 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表
关闭

扫一扫 关注eoe官方微信