当我想做一个智能的记事本的时候,我就在尝试自己写一组分享功能。后来才知道,原来每个社交软件中都有自己的分享接口。

这就大大减少了我们的代码量了。

第一种方法:特点--简单

package com.example.share;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem; public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} /* 创建菜单 */
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(, , , "分享");
return true;
} public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case :
// intent.setType("text/plain"); //纯文本
/*
* 图片分享 it.setType("image/png");  //添加图片 File f = new
* File(Environment.getExternalStorageDirectory()+"/name.png");
*
* Uri uri = Uri.fromFile(f); intent.putExtra(Intent.EXTRA_STREAM,
* uri);  
*/
Intent intent=new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "Share");
intent.putExtra(Intent.EXTRA_TEXT, "I have successfully share my message through my app");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(Intent.createChooser(intent, getTitle()));
return true;
}
return false;
}
}

效果图:

这种方式仅仅是调用了系统中自带的分享功能。如果希望分享功能更加的抢到,涉及到的范围更加的广的话,那不得不说一说ShareSDK包了

shareSDK

ShareSDK是一种社会化分享组件,为iOS、Android、WP8 的APP提供社会化功能,集成了一些常用的类库和接口,缩短开发者的开发时间,还有社会化统计分析管理后台。ShareSDK移动开发者服务平台由广州掌淘网络科技有限公司开发。
支持包括QQ、微信、新浪微博、腾讯微博、开心网、人人网、豆瓣、网易微博、搜狐微博、facebook、twitter、google+等国内外40多家的主流社交平台,帮助开发者轻松实现社会化分享、登录、关注、获得用户资料、获取好友列表等主流的社会化功能,强大的统计分析管理后台,可以实时了解用户、信息流、回流率、传播效率等数据,有效地指导移动APP的日常运营与推广,同时为APP引入更多的社会化流量。

强大功能编辑

  1. 集成快捷,操作简单
    40多家主流社交网络,无论开发还是维护,都需要巨大的工作量才能完成,使用分享组件只需要3分钟即可集成完成,即可拥有丰富的功能和人性化的操作。
  2. 评论和赞功能
    可以直接通过第三方登录,发表评论和赞
  3. 插件稳定,安装包小
    每个开放平台的库包是独立的,开发者可根据需求添加,极大的减小APP体积,分享内容更稳定。
  4. 适配专用游戏引擎
    Cocos2d-xUnity3D;ANE;Jave Script的专用游戏引擎社会化分享
  5. 社会化统计分析
    标准、专业的统计分析后台,实时了解SNS、用户、信息流、转化率、传播效应等基本数据,新增自定义短链、“评论和赞”板块,有效指导日常运营与推广。并于2014年3月,发布了“2013年全年社会化媒体分享行业报告”。

2支持cocos2d游戏引擎

ShareSDK的cocos2d专用分享组件基于cocos2d游戏引擎平台优化推出的,支持iOS和Android双平台,高度自定义的界面,集成简单便捷。[1] 

3支持Unity3d游戏引擎

ShareSDK的Unity3D专用分享组件针对于Unity3D工具推出的,支持iOS和Android双平台,依托社交媒体带来优质的免费游戏用户。[2] 

4发展历程

2013年1月16日 ShareSDK for iOS正式发布。
2013年3月18日 ShareSDK for Android版正式发布。
2013年8月ShareSDK APP开发者用户已超1万。[3] 
2013年12月19日ShareSDK for cocos2d-x 2.2.0专用组件正式发布
2013年12月27日新增评论和赞模块
2014年2月20日ShareSDK for Unity3d正式发布
2014年3月10日ShareSDK for ANE正式发布
2014年3月22日ShareSDK for Jave Script正式发布
 
摘自:http://baike.baidu.com/view/9915538.htm?fr=aladdin
 
关于游戏中使用的ShareSDK分享:http://www.unitymanual.com/thread-12434-1-1.html
 
第二种方法:特点--全面
在SHARESDK官网中下载 shareSDK for android 功能开发包
http://share.sharesdk.cn/Download
1.到官网上下载最新版本的ShareSDK并解压
2.进入ShareSDK解压目录,打开“Share SDK for Android”目录,可以找到“QuickIntegrater.jar”,这个就是快速集成ShareSDK的工具
像我这样解压出来自动就是压缩包的形式,不能直接打开。所以要通过命令行打开。
3.生成一个Sample的文件夹,将文件夹中的内容复制到项目中去。就ok了。
4.复制到项目中是一定要保证编码的问题。最好是用UTF-8的编码,这样就不会报错了。
效果图:
 

android 实现分享功能两种方法的更多相关文章

  1. Android 抗锯齿的两种方法

    Android 抗锯齿的两种方法 (其一:paint.setAntiAlias(ture);paint.setBitmapFilter(true))   在Android中,目前,我知道有两种出现锯齿 ...

  2. android emulator启动的两种方法详解

    android emulator启动的两种方法详解    转https://blog.csdn.net/TTS_Kevin/article/details/7452237 对于android学习者,模 ...

  3. android使用全局变量的两种方法

         在我们使用android编写程序的时候,少不了想利用全局变量,但是面向对象语言和过程语言区别很大,不再是include就可以的.这里我写了使用全局变量的两种方法: 1.使用applicati ...

  4. [转]android使用全局变量的两种方法

    本文转自:http://blog.csdn.net/feiyangxiaomi/article/details/9966215 在我们使用android编写程序的时候,少不了想利用全局变量,但是面向对 ...

  5. Android访问WebService的两种方法

    首先解释一下WebService:WebService是一种基于SOAP协议的远程调用标准.通过WebService可以将不同操作系统平台,不同语言.不同技术整合到一起.详细见:http://baik ...

  6. (转)Android创建桌面快捷方式两种方法

    [IT168技术]Android在桌面上生成快捷方式有两种情况,一种是直接在桌面直接生成;一种是长按桌面,在弹出的快捷菜单中生成. 谈谈在桌面上直接生成.个人觉得这个比较爽快,既然都是快捷方式了干嘛还 ...

  7. Android apk签名的两种方法

    编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识.前端.后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过! 为了保证 ...

  8. 解决android 大图OOM的两种方法

    最近做程序中,需要用到一张大图.这张图片是2880*2180大小的,在我开发所用的华为3C手机上显示没有问题,但是给米3装的时候,一打开马上报OOM错误.给nexus5装,则是图片无法出来,DDMS中 ...

  9. Android全屏的两种方法

    在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: [java] view plain copy package ...

随机推荐

  1. TDD和BDD

    开发人员看测试之TDD和BDD   前言: 已经数月没有来园子了,写博客贵在坚持,一旦松懈了,断掉了,就很难再拾起来.但是每每看到自己博客里的博文的浏览量每天都在增加,都在无形当中给了我继续写博客的动 ...

  2. jquery初步总结

    1.$(document).ready()方法和window.onload差分法 为页元件的正确操作,我们需要把操作元件JS编写的代码$(document).ready()(Jquery)或windo ...

  3. Javascipt数组去重的几种方式

    方法一 function unique(arr) { var retArr = []; for (var i = 0; i < arr.length; i++) { (retArr.indexO ...

  4. Oracle EBS WMS特征(一)

    Oracle EBS WMS特征(一) (版权声明.我的原创或翻译的文章,如需转载,转载用于个人学习,转载请注明出处:否则,请与我联系,版权所有) Oracle WMS这是一个仓库管理,它是Oracl ...

  5. 使用C#或javascript将Table里的数据导出到Excel

    原文:使用C#或javascript将Table里的数据导出到Excel Demo效果图: 用C#将Table数据导出Excel: 本方法已经将导出excel做成分部视图,引用时只需在视图中使用如下代 ...

  6. 十天学Linux内核之第七天---电源开和关时都发生了什么

    原文:十天学Linux内核之第七天---电源开和关时都发生了什么 说实话感觉自己快写不下去了,其一是有些勉强跟不上来,其二是感觉自己越写越差,刚开始可能是新鲜感以及很多读者的鼓励,现在就是想快点完成自 ...

  7. RQNOJ PID4 / 数列(位运算)

    题目描述 给定一个正整数k(3≤k≤15),把所有k的方幂及所有有限个互不相等的k的方幂之和构成一个递增的序列,例如,当k=3时,这个序列是: 1,3,4,9,10,12,13,… (该序列实际上就是 ...

  8. 异步编程和线程的使用(.NET 4.5 )

    C#:异步编程和线程的使用(.NET 4.5 )   异步编程和线程处理是并发或并行编程非常重要的功能特征.为了实现异步编程,可使用线程也可以不用.将异步与线程同时讲,将有助于我们更好的理解它们的特征 ...

  9. DropDownListFor使用ViewData进行绑定的示例

    特别注意,经实践: 此方法的ViewBag的名称必须和new SelectList()中的最后一个参数,即下拉框的默认值的名称必须相同,如: ViewBag.Title = WebConst.UnSe ...

  10. crawler_phantomjs_windows_linux下demo

    1. phantomjs介绍 基于Javascript驱动的命令行webkit引擎,轻量级,安装简单,开发快速,渲染速度较快,无界面的webkit浏览器. phontomjs跟一般浏览器一样可以加载网 ...