安卓一键分享解决方案

概要  
       开发者仅需10分钟即可集成到自己的App中,支持国内外40多家的主流社交平台,有强大的社会化统计分析管理后台,可以实时了解用户、信息流、回流率、传播效率等数据。

主要功能及优点  
1.一键分享,支持分享文字、图片、图文、音乐、视频、链接  
2.支持绝大部分社交平台  
3.体积小,集成方便

模块集成主要步骤  
   去mob官网下载sharesdk(下载页面)  
   进入ShareSDK解压目录,打开“Share SDK for Android”目录,可以找到“QuickIntegrater.jar”,这个就是快速集成ShareSDK的工具 .

Windows下  
   首先确定您已经安装了JDK,并且正确配置了JAVA_HOME和PATH系统变量,此时您可以双击QuickIntegrater启动程序

Linux/Mac OS下  
   同样需要先确保已经正确配置了JDK,之后启动终端,cd进入“Share SDK for Android”目录,输入: java -jar QuickIntegrater.jar 可启动QuickIntegrater

填写自己项目的名字与包名,点击确定之后会在当前目录创建一个文件夹,将这文件夹的所有内容复制到你的项目中  

   如果载入进去后有的类出现乱码,则右键项目选择properties,将编码格式修改为UTR-8  
 
   配置Androidmanifest.xml文件  
   添加权限

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
<uses-permission android:name= "android.permission.GET_TASKS"  />
<uses-permission android:name= "android.permission.INTERNET"  />
<uses-permission android:name= "android.permission.ACCESS_WIFI_STATE"  />
<uses-permission android:name= "android.permission.ACCESS_NETWORK_STATE"  />
<uses-permission android:name= "android.permission.CHANGE_WIFI_STATE"  />
<uses-permission android:name= "android.permission.WRITE_EXTERNAL_STORAGE"  />
<uses-permission android:name= "android.permission.READ_PHONE_STATE"  />
<uses-permission android:name= "android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name= "android.permission.GET_ACCOUNTS" />
<!-- 蓝牙分享所需的权限 -->
  <uses-permission android:name= "android.permission.BLUETOOTH"  />
  <uses-permission android:name= "android.permission.BLUETOOTH_ADMIN"  />

添加activity信息

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
13
<activity
  android:name= "com.mob.tools.MobUIShell"
  android:theme= "@android:style/Theme.Translucent.NoTitleBar"
  android:configChanges= "keyboardHidden|orientation|screenSize"
  android:screenOrientation= "portrait"
  android:windowSoftInputMode= "stateHidden|adjustResize"  >
  <intent-filter>
  <data android:scheme= "tencent100371282"  />
  <action android:name= "android.intent.action.VIEW"  />
  <category android:name= "android.intent.category.BROWSABLE"  />
  <category android:name= "android.intent.category.DEFAULT"  />
  </intent-filter>
  </activity>

如果您集成了微信或者易信,还需要添加下面两个Activity

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!--微信分享回调 -->
  <activity
  android:name= ".wxapi.WXEntryActivity"
  android:theme= "@android:style/Theme.Translucent.NoTitleBar"
  android:configChanges= "keyboardHidden|orientation|screenSize"
  android:exported= "true"
  android:screenOrientation= "portrait"  />
                           
<!--易信分享回调 -->
  <activity
  android:name= ".yxapi.YXEntryActivity"
  android:theme= "@android:style/Theme.Translucent.NoTitleBar"
  android:configChanges= "keyboardHidden|orientation|screenSize"
  android:exported= "true"
  android:screenOrientation= "portrait"  />

在ShareSDK.xml中替换mob后台申请的Appkey与各个平台申请的key(注:mob后台申请的appkey可在mob官网注册后申请获得。demo中各个平台的key是mob注册申请的,如果开发产品则需要开发者去各个平台申请key)

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
1、表格中的第一项
     <ShareSDK
         AppKey="api20" />
是必须的,其中的AppKey是您在ShareSDK上注册的开发者帐号的AppKey
                          
2、所有集成到您项目的平台都应该为其在表格中填写相对应的开发者信息,以新浪微博为例:
     <SinaWeibo
         Id="1"
         SortId="1"
         AppKey="568898243"
         AppSecret="38a4f8204cc784f81f9f0daaf31e02e3"
         RedirectUrl="http://www.mob.com"
         Enable="true" />
其中的SortId是此平台在分享列表中的位置,由开发者自行定义,可以是任何整型数字,数值越大
越靠后AppKey、AppSecret和RedirectUrl是您在新浪微博上注册开发者信息和应用后得到的信息
Id是一个保留的识别符,整型,ShareSDK不使用此字段,供您在自己的项目中当作平台的识别符。
Enable字段表示此平台是否有效,布尔值,默认为true,如果Enable为false,即便平台的jar包
已经添加到应用中,平台实例依然不可获取。
                          
各个平台注册应用信息的地址如下:
     新浪微博        http://open.weibo.com
     腾讯微博        http://dev.t.qq.com
     QQ空间          http://connect.qq.com/intro/login/
     微信好友        http://open.weixin.qq.com
     Facebook       https://developers.facebook.com
     Twitter        https://dev.twitter.com
     人人网          http://dev.renren.com
     开心网          http://open.kaixin001.com
     搜狐微博        http://open.t.sohu.com
     网易微博        http://open.t.163.com
     豆瓣           http://developers.douban.com
                              
     有道云笔记      http://note.youdao.com/open/developguide.html#app
     印象笔记        https://dev.evernote.com/
     Linkedin       https://developer.linkedin.com
     FourSquare     https://developer.foursquare.com/
     搜狐随身看      https://open.sohu.com/
     Flickr         http://www.flickr.com/services/
     Pinterest      http://developers.pinterest.com/
     Tumblr         http://www.tumblr.com/developers
     Dropbox        https://www.dropbox.com/developers
     Instagram      http://instagram.com/developer#
     VKontakte      http://vk.com/dev
     易信好友        http://open.yixin.im/
     明道             http://open.mingdao.com/
     Line           http://media.line.me/zh-hant/
     Pocket         http://getpocket.com/developer/apps/new

添加java代码

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
private  void  showShare() {
  ShareSDK.initSDK( this );
  OnekeyShare oks =  new  OnekeyShare();
  //关闭sso授权
  oks.disableSSOWhenAuthorize();
                          
// 分享时Notification的图标和文字  2.5.9以后的版本不调用此方法
  //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name));
  // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
  oks.setTitle(getString(R.string.share));
  // titleUrl是标题的网络链接,仅在人人网和QQ空间使用
  oks.setTitleUrl( "http://sharesdk.cn" );
  // text是分享文本,所有平台都需要这个字段
  oks.setText( "我是分享文本" );
  // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
  oks.setImagePath( "/sdcard/test.jpg" ); //确保SDcard下面存在此张图片
  // url仅在微信(包括好友和朋友圈)中使用
  oks.setUrl( "http://sharesdk.cn" );
  // comment是我对这条分享的评论,仅在人人网和QQ空间使用
  oks.setComment( "我是测试评论文本" );
  // site是分享此内容的网站名称,仅在QQ空间使用
  oks.setSite(getString(R.string.app_name));
  // siteUrl是分享此内容的网站地址,仅在QQ空间使用
  oks.setSiteUrl( "http://sharesdk.cn" );
                          
// 启动分享GUI
  oks.show( this );
  }

调用

复制代码

1
2
3
4
5
6
7
8
9
10
11
12
13
protected  void  onCreate(Bundle savedInstanceState) {
         super .onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         btShare = (Button)findViewById(R.id.bt_share);
         btShare.setOnClickListener( new  View.OnClickListener() {
                                      
             @Override
             public  void  onClick(View v) {
                 // TODO Auto-generated method stub
                 showShare();                               //点击打开一键分享菜单
             }
         });
     }

如果上述文档不能满足你的分享需求,mob还提供了更高级的自定义功能。(点击跳转)

环境相关  
开发平台:android                         
语言:     java  
开发工具: eclipse

效果展示 

Note:本源代码由“极分享”社区创建,添加或者修改,我们会持续优化源代码以提供更好的解决方案,更多详情和支持请前往 finalshares.com 。

安卓一键分享解决方案相关推荐

  1. 关于安卓一键分享的,急求帮助!

    现在要做一个项目,设置里面点击一个按钮就可以分享,有三个分享平台,新浪微博,微信和微信朋友圈 现在的问题是我要在三个平台分享的内容不同,在新浪微博中分享的是一段文字叙述和一个网页链接:而在微信和微信朋 ...

  2. 安卓一键分享到qq,微信,微博,官方SDK非第三方

    当我们项目中需要集成分享功能时,我们通常会采取一下几个办法: 1.调用系统自带分享 优点:简单快速,几行代码搞定,不需添加任何额外包: 缺点:系统会调出手机内部所有带分享功能的APP,且界面风格跟随系 ...

  3. 安卓 android一键分享 新浪微博 腾讯微博,qq空间,qq,人人网

    安卓 android一键分享 新浪微博 腾讯微博,qq空间,qq,人人网 附源码:  http://download.csdn.net/detail/zjgwxh/8678809

  4. 云炬Android开发笔记 16附加功能开发(二维码,一键分享,分页,搜索)

    阅读目录 1.二维码高性能解决方案 1.1推荐的库的使用 1.2 扫描到数据回调的处理 2. 一键分享功能的使用 2.1 第三方功能的使用 2.2 逻辑增加 2.3 编译测试 3.分页功能实现  4. ...

  5. react native一键分享功能实现amp;原理和注意点(支持微信、qq、新浪微博等)

    前言 目前使用一键分享比较主流的两个SDK:ShareSDK.友盟: 又因为友盟功能比较多且比较全,比如说友盟统计.友盟推送等,所以本文重点介绍的是友盟分享功能在rn上的应用以及要注意的点. reac ...

  6. 甜椒刷机助手(安卓一键刷机助手) v3.5.1.1 电脑版

    甜椒刷机助手(安卓一键刷机助手) v3.5.1.1 电脑版 软件大小:15.8MB 软件语言:简体中文 软件性质:常用软件 软件授权:官方版 更新时间:2014-02-26 应用平台:/WinXP/| ...

  7. ShareSDK一键分享

    ShareSDK一键分享 效果图 第一步ShareSDK 1.首先进入mob的官网:http://mob.com; 如下图所示有注册和登录,首先我们需要注册一个账户,才可以申请应用得到appkey来使 ...

  8. SEO那些事:一句代码一键分享网站

    这是很久以前就已经写过的笔记了,有一个习惯,每次遇到一个问题,都会进行百度,然后把解决问题的关键点记录下来,有人问我,为什么更新频率如此之快,大部分都是从前积累的知识点. 其实每天工作所涉及的知识点都 ...

  9. android一键分享功能不使用任何第三方sdk

    在android中有自带的一键分享功能,不过它会把所有带分享的应用都找出来,如果我们只需要一些常见的分享应用,该如何做呢? 下面看我的效果图(横屏和竖屏自动适配): 接下来看我的调用(支持图片和文字分 ...

最新文章

  1. leetcode算法题--链表中倒数第k个节点
  2. 杭电1325java实现
  3. MySQL8.0.16主从同步
  4. 初中参观机器人博物馆的作文_展馆导览机器人好不好用?小笨展馆机器人案例...
  5. Java中String相关类型的区别
  6. Oracle数据库应用系统结构
  7. python多进程通信manager_python中进程间数据通讯模块multiprocessing.Manager的介绍
  8. oracle中md5加密解密_Oracle定义DES加密解密及MD5加密函数示例
  9. 使用Prometheus监控kubernetes集群
  10. 数据库中常用使用场景
  11. vs的windows应用程序上的鼠标为什么一直是加载状态?_了解 JavaScript 应用程序中的内存泄漏...
  12. ios浏览器微信支付回调页面_iOS微信系列,WKWebview加载H5进行微信支付返回浏览器解决方案!...
  13. python程序设计 清华大学出版社 pdf下载-清华大学出版社-图书详情-《Python程序设计教程》...
  14. 计算机信息管理不会电脑,不要抱怨网速慢.只怪你不会调网速★让你的电脑一点都不卡...
  15. python怎么选取第几行第几列_python 第几行第几列python 常见的17个错误分析-python-第二电脑网...
  16. MySQL学习(2)——MySQL表的增删查改(基础)
  17. obs多推流地址_OBS直播进阶操作使用手册
  18. 2000、XP、2003所有注册表设置
  19. Mac OS系统进不去,重装也不行,只能抹盘安装,Espionage的加密文件如何救出?
  20. Gstreamer说明

热门文章

  1. 初学JAVA 10道入门小程序
  2. 用友t3服务器系统管理显示类型不匹配,用友T3“运行时错误‘13’:类型不匹配”...
  3. html如何添加pyecharts,pyecharts入门
  4. 【Linux】按照大小、行数切割文件
  5. ipv6地址格式c语言,IPv6地址格式详解:ipv6地址格式怎么写?
  6. 【八芒星计划】 VM PWN
  7. IDEA 最新注册码(亲测有效)
  8. 卷积的本质及物理意义(深度简要理解)
  9. 【面试被虐】说说游戏中的敏感词过滤是如何实现的?
  10. 关于召开“2022第五届全国生物资源提取与应用