求下图 PS怎么把图片存的更清晰的

中国领先的IT技术网站
51CTO旗下网站
如何在Android中实现分享功能
Android应用中能很方便的完成这些功能,很多的应用中都有“分享”功能?如何分享呢?下面给大家说说看。
作者:放纵的青春来源:| 08:24
最近是越来越懒了,连打字都懒着打,最近有人问到Android分享功能用那个比较好,使用Android自带的Intent来进行分享还是借助第三方呢,直接上代码:
一、使用Intent直接和第三方应用进行通信:
/**&&&&&&&*&分享功能&&&&&&&*&&&&&&&&*&@param&context&&&&&&&*&&&&&&&&&&&&上下文&&&&&&&*&@param&activityTitle&&&&&&&*&&&&&&&&&&&&Activity的名字&&&&&&*&@param&msgTitle&&&&&&&*&&&&&&&&&&&&消息标题&&&&&&&*&@param&msgText&&&&&&*&&&&&&&&&&&&消息内容&&&&&&&*&@param&imgPath&&&&&&&*&&&&&&&&&&&&图片路径,不分享图片则传null&&&&&&&*/&&&&&&&public&void&shareUtil(String&activityTitle,&String&msgTitle,&String&msgText,&&&&&&&&&&&&&&&String&imgPath)&{&&&&&&&&&&&Intent&intent&=&new&Intent(Intent.ACTION_SEND);&&&&&&&&&&&if&(imgPath&==&null&||&imgPath.equals(&&))&{&&&&&&&&&&&&&&&intent.setType(&text/plain&);&//&纯文本&&&&&&&&&&&}&else&{&&&&&&&&&&&&&&&File&f&=&new&File(imgPath);&&&&&&&&&&&&&&&if&(f&!=&null&&&&f.exists()&&&&f.isFile())&{&&&&&&&&&&&&&&&&&&&intent.setType(&image/jpg&);&&&&&&&&&&&&&&&&&Uri&u&=&Uri.fromFile(f);&&&&&&&&&&&&&&&&&&&intent.putExtra(Intent.EXTRA_STREAM,&u);&&&&&&&&&&&&&&&}&&&&&&&&&&&}&&&&&&&&&&&intent.putExtra(Intent.EXTRA_SUBJECT,&msgTitle);&&&&&&&&&&&intent.putExtra(Intent.EXTRA_TEXT,&msgText);&&&&&&&&&&&intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);&&&&&&&&&&&startActivity(Intent.createChooser(intent,&activityTitle));&&&&&&&}&
看代码是不是很简单,但是使用上述代码要想分享成功,必须让当前设备必须安装微信才能实现分享。
虽然现在微信的使用率很高,很普遍,但不得不防意外出现,另外它的分享有局限性,最多就是分享个文字加图片,如果要应用升级很难。
二、使用第三方的分享工具,比如友盟,shareSDK(支持多种社交平台)。
并且不要求设备安装微信。 这个详细使用,如果使用过第三方的应该都知道怎么用,详细可以去对应的接入文档查看,看起来很高大上的第三方,并且使用起来很方便,但第三方毕竟是第三方,你懂得。
三、使用微信的官方sdk包,这种方式不需要设备安装微信。
它的实现方式和第二种一样,毕竟也是接入第三代方, 虽然也是第三方,但是本人觉得腾讯的更可靠一点,再说我们分享的最终目的,最常用平台不外如是,这里不详细介绍如何接入,只是说一下接入技巧,和常碰见的问题(如果你是新手,哈哈,下面说的接入步骤最好不要乱)。
1. 建立自己的应用 (ShareTestDemo)
应用建立好之后,先运行程序,需注意此时你运行的时候,使用的是默认的debug.keystore签名的。
2.到微信开发平台官网下载开发工具包,解压,将libammsdk.jar复制到libs中,并将其add到build
3.到微信开发平台官网创建你的应用,使用过第三方的都知道什么意思,所以这里省去前面那些基本的操作(不明白的可以去平台https://open./cgi-bin/frame?t=home/app_tmpl&lang=zh_CN看一下接入流程)
,这里主要注意以下的步骤。
其中有一步是要用个签微信的apk工具对我们程序进行签名的,因为我们的程序已经安装了,所以直接下载安装,然后在手机里面的那个框框输入包名(包名不能填错),点击生成按钮,这时候会生成一个md5加密值,将其输入到创建应用页面的框中(此时我们注意,如果我们的应
用程序还没有安装到手机中的话,签名工具会提示没有找到相关包)。
再接下来输入包名(包名一定不能填错),然后提交审核。接下来就是等微信官方进行审核了。在审核期间,我们拿到创建该应用由微信提供的appid接入我们自己的应用(按照接入文档或参考微信提供的DEMO),算是基本完成了一大半工作,接下来就是等审核通过了就可以正常使用了。
4.在上述过程完成后,其实我们的应用已经实现分享功能呢,最起码测试通过了,但我们一旦用正式的签名文件进行打包,安装,发布,结果发现分享功能无法用了,微信分享API调不起来,这时候不要慌,回到第一步,我们说过需注意&需注意此时你运行的时候,使用的是Android默认的debug.keystore签名的。
&这句话,对就是签名文件造成的问题,在使用第三方时尤其要注意这个问题,包括微信支付宝等都是一样,找到了问题,接下来是不是就简单了(
我们在申请AppId的时候填写应用程序签名也是就是用debug.keystore生成的。
改用我们正式那个签名文件xxx.keystore对程序进行正式的打包,然后安装到手机中,然后再次运行微信那个签名apk工具,将我们的包名输入到里面(包名不能填错),重新生成一个MD5的加密值,然后到官网,找到创建的应用,点击修改,将刚刚生成的那个签名输入到里面,然后保存重新提交审核。
)审核通过后,我们要想使用分享功能,就必须正式打包安装。
5.在微信分享成功后,关于微信分享信息结果反馈,这个要注意的是以下两点,要不是不会收到分享反馈的。(支付等操作都须注意)
(1)这个Activity的名字一定是WXEntryActivity
(2)WXEntryActivity这个类一定是建立在 应用包名+wxapi包下
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
原创原创头条头条专题
24H热文一周话题本月最赞
讲师:0人学习过
讲师:2人学习过
讲师:3人学习过
精选博文论坛热帖下载排行
本书主要介绍了在手机上开发J2ME游戏的方法,作者在介绍了J2ME游戏开发相关知识背景的基础上,以大富翁手机游戏的设计开发为例,详细讲述了...
订阅51CTO邮刊当我想做一个智能的记事本的时候,我就在尝试自己写一组分享功能。后来才知道,原来每个社交软件中都有自己的分享接口。
这就大大减少了我们的代码量了。
第一种方法:特点--简单
package com.example.
import android.app.A
import android.content.I
import android.os.B
import android.view.M
import android.view.MenuI
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/* 创建菜单 */
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, "分享");
return true;
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// 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是一种社会化分享组件,为iOS、Android、WP8 的APP提供社会化功能,集成了一些常用的类库和接口,缩短开发者的开发时间,还有社会化统计分析管理后台。ShareSDK移动开发者服务平台由开发。
支持包括QQ、微信、新浪微博、腾讯微博、开心网、人人网、豆瓣、网易微博、搜狐微博、facebook、twitter、google+等国内外40多家的主流社交平台,帮助开发者轻松实现社会化分享、登录、关注、获得用户资料、获取好友列表等主流的社会化功能,强大的统计分析管理后台,可以实时了解用户、信息流、回流率、传播效率等数据,有效地指导移动APP的日常运营与推广,同时为APP引入更多的社会化流量。
集成快捷,操作简单
40多家主流社交网络,无论开发还是维护,都需要巨大的工作量才能完成,使用分享组件只需要3分钟即可集成完成,即可拥有丰富的功能和人性化的操作。
评论和赞功能
可以直接通过第三方登录,发表评论和赞
插件稳定,安装包小
每个开放平台的库包是独立的,开发者可根据需求添加,极大的减小APP体积,分享内容更稳定。
适配专用游戏引擎
;;ANE;Jave Script的专用游戏引擎社会化分享
社会化统计分析
标准、专业的统计分析后台,实时了解SNS、用户、信息流、转化率、传播效应等基本数据,新增自定义短链、&评论和赞&板块,有效指导日常运营与推广。并于2014年3月,发布了&2013年全年社会化媒体分享行业报告&。
ShareSDK的cocos2d专用分享组件基于cocos2d游戏引擎平台优化推出的,支持iOS和Android双平台,高度自定义的界面,集成简单便捷。[1]&
ShareSDK的Unity3D专用分享组件针对于Unity3D工具推出的,支持iOS和Android双平台,依托社交媒体带来优质的免费游戏用户。[2]&
日 ShareSDK for iOS正式发布。
日 ShareSDK for Android版正式发布。
2013年8月ShareSDK APP开发者用户已超1万。[3]&
日ShareSDK for cocos2d-x 2.2.0专用组件正式发布
日新增评论和赞模块
日ShareSDK for Unity3d正式发布
日ShareSDK for ANE正式发布
日ShareSDK for Jave Script正式发布
摘自:/view/9915538.htm?fr=aladdin
关于游戏中使用的ShareSDK分享:/thread-.html
第二种方法:特点--全面
在SHARESDK官网中下载 shareSDK for android 功能开发包
1.到上下载最新版本的ShareSDK并解压
2.进入ShareSDK解压目录,打开&Share SDK for Android&目录,可以找到&QuickIntegrater.jar&,这个就是快速集成ShareSDK的工具
像我这样解压出来自动就是压缩包的形式,不能直接打开。所以要通过命令行打开。
3.生成一个Sample的文件夹,将文件夹中的内容复制到项目中去。就ok了。
4.复制到项目中是一定要保证编码的问题。最好是用UTF-8的编码,这样就不会报错了。
阅读(...) 评论()

我要回帖

更多关于 比蓝光更清晰的图片 的文章

 

随机推荐