Android实现截图分享qq 微信功能

在上篇文章给大家介绍了Android实现截图和分享功能的代码。感兴趣可以点击阅读,今天通过本文给大家介绍Android实现截图分享qq 微信功能。一起看看吧。

前言

现在很多应用都有截图分享的功能,今天就来讲讲截图分享吧

今天涉及到以下内容:

  • Android截屏
  • Android分享
  • 效果图展示

ok,下面就来具体讲讲

一.权限,注意权限

先在自己的mainfast中添加以下权限:

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

然后是要申请Android7.0以上的权限,之前讲过了,这里就不再废话了。

二.截图分享类

代码如下:

package com.dialogfragmentdemo.util;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import java.io.File;
import java.io.FileOutputStream;
/**
 * Title:截屏分享
 * Description:
 * 需要用户读写权限
 * <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 * <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
 *
 * Created by pei
 * Date: 2017/12/6
 */
public class ShotShareUtil {
 /**截屏分享,供外部调用**/
 public static void shotShare(Context context){
 //截屏
 String path=screenShot(context);
 //分享
 if(StringUtil.isNotEmpty(path)){
  ShareImage(context,path);
 }
 }
 /**获取截屏**/
 private static String screenShot(Context context){
 String imagePath=null;
 Bitmap bitmap= ScreenUtil.snapShotWithoutStatusBar(context);
 if(bitmap!=null){
  try {
  // 图片文件路径
  imagePath = SDCardUtil.getDiskCachePath()+"share.png";
  LogUtil.e(ShotShareUtil.class, "====imagePath====" + imagePath);
  File file = new File(imagePath);
  FileOutputStream os = new FileOutputStream(file);
  bitmap.compress(Bitmap.CompressFormat.PNG, 100, os);
  os.flush();
  os.close();
  return imagePath;
  } catch (Exception e) {
  LogUtil.e(ShotShareUtil.class, "====screenshot:error====" + e.getMessage());
  }
 }
 return null;
 }
 /**分享**/
 private static void ShareImage(Context context,String imagePath){
 if (imagePath != null){
  Intent intent = new Intent(Intent.ACTION_SEND); // 启动分享发送的属性
  File file = new File(imagePath);
  intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));// 分享的内容
  intent.setType("image/*");// 分享发送的数据类型
  Intent chooser = Intent.createChooser(intent, "Share screen shot");
  if(intent.resolveActivity(context.getPackageManager()) != null){
  context.startActivity(chooser);
  }
 } else {
  ToastUtil.shortShow("先截屏,再分享");
 }
 }
}

三.在mainactivity中调用

以下是示例代码:

@Override
 public void onClick(View v) {
 super.onClick(v);
 switch (v.getId()) {
  case R.id.button:
  LogUtil.e(MainActivity.class,"====我点击了====");
  //截屏分享
  ShotShareUtil.shotShare(mContext);
  break;
  default:
  break;
 }
 }

四.效果图

上面是分享的时候,手机上没装qq和微信的情况,下面展示有qq,微信的情况

总结

以上所述是小编给大家介绍的Android实现截图分享qq 微信功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Android实现截图和分享功能的代码

    先给大家展示下效果图吧 直接上代码: xml的布局: <Button android:id="@+id/btn_jp" android:layout_marginTop="10dip" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:tex

  • Android 实现微信,微博,微信朋友圈,QQ分享的功能

    Android 实现微信,微博,微信朋友圈,QQ分享的功能 一.去各自所在的开发者平台注册相应的Key值:引入相关jar包.权限等 二.ShareUtil工具类 import android.app.Activity; import android.content.Context; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.graphics.Bit

  • Android开发中判断手机是否安装了QQ或者微信

    下面一段代码给大家分享了android中判断手机是否安装了qq或者微信,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧 public static boolean isWeixinAvilible(Context context) { final PackageManager packageManager = context.getPackageManager();// 获取packagemanager List<PackageInfo> pinfo = packageMana

  • Android RichText 让Textview轻松的支持富文本(图像ImageSpan、点击效果等等类似QQ微信聊天)

    AndroidRichText帮助实现像QQ,微信一样的,一个TextView里既有文字又有表情又有图片的效果,采用插件化的框架,代码简单,可拓展性强. 基础框架包只有四个java文件, RichTextWrapper :TextView的包裹类,实现支持富文本,通过new RichTextWrapper(TextView v)来构造. RTMovementMethod: 继承自Android原生的LinkMovementMethod,重写onTouchEvent方法,优化了ClickSpan(

  • Android仿QQ、微信聊天界面长按提示框效果

    先来看看效果图 如何使用 示例代码 PromptViewHelper pvHelper = new PromptViewHelper(mActivity); pvHelper.setPromptViewManager(new ChatPromptViewManager(mActivity)); pvHelper.addPrompt(holder.itemView.findViewById(R.id.textview_content)); 使用起来还是很简单的 首先new一个PromptViewH

  • Android实现截图分享qq 微信功能

    在上篇文章给大家介绍了Android实现截图和分享功能的代码.感兴趣可以点击阅读,今天通过本文给大家介绍Android实现截图分享qq 微信功能.一起看看吧. 前言 现在很多应用都有截图分享的功能,今天就来讲讲截图分享吧 今天涉及到以下内容: Android截屏 Android分享 效果图展示 ok,下面就来具体讲讲 一.权限,注意权限 先在自己的mainfast中添加以下权限: <uses-permission android:name="android.permission.WRITE

  • 解决Android调用系统分享给微信,出现分享失败,分享多文件必须为图片格式的问题

    解决Android调用系统分享图片给微信,出现分享失败,分享多文件必须为图片格式 近期应公司需求,分享多图片到微信的功能,之前一直是用微信自己家SDK实现分享,但是查看微信的原生SDK是不具备多图分享的.在网上查找解决办法,直接调用手机系统进行分享,进行系统分享时分享给QQ,微博等都可以,但分享微信时就会出现分享失败,分享多文件必须为图片格式,看网上各路大神都各显神通都没解决具体问题,于是自己就总结出此篇文章为后来者少踩些坑,让你更快完成公司交给你的任务,让产品经理对你刮目相看,话不多说直接上干

  • Android实现短信、微信、微博分享功能

    在纠结了几天的图表功能之后,我开始开发一个新的功能.即分享内容到短信.微信.微博等渠道,对应的我有一个简单的 Task: 在 Toolbar 写分享的按钮 绘制一个 Android 的分享页面 编写短信分享示例 编写社交分享 在这一天,我只完成了前面的三部分. Toolbar 上的分享按钮 在 Toolbar 主要还是靠 ImageView 来绘制右上角的分享按钮: <?xml version="1.0" encoding="utf-8"?> <a

  • Android实现类似qq微信消息悬浮窗通知功能

    实现方法:(需要开启悬浮窗通知权限.允许应用在其他应用上显示) 一.利用headsup 悬挂式Notification,他是5.0中新增的,也就是API中的Headsup的Notification,可以在不打断用户操作的时候,给用户通知 二.使用Window创建悬浮窗 当window属性设置为FLAGE_NOT_FOCUSABLE表示不需要获取焦点,也不需要接受各种输入事件,此标记会同时启用FLAGE_NOT_TOUCH_MODEL,最终事件会直接传递给下层具有焦点的Widow FLAGE_NO

  • Android使用WebView实现截图分享功能

    在APP项目的开发过程中,经常会用到分享图片的功能,有时候还需要根据当前用户信息获取指定的分享图片,比如要求在用户分享图中显示用户名.Uid.用户头像等信息.想到的实现方法主要有两点: 1.通过android SDK自带的Canvas方法进行绘制. 2.通过webView实现客户端与H5交互,然后将H5界面做截图处理. 本文主要介绍第二种方式的实现过程,第一种方式的实现方法,后续有时间会在博客中做说明,下面开始本文内容. 首先确定我们要实现的逻辑: 1.客户端与H5的交互,客户端将用户信息(用户

  • Android将内容分享到QQ和微信实例代码

    具体代码如下所示: package dmpte.sharewechat; import android.annotation.SuppressLint; import android.app.Activity; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; impo

  • Android实现app分享文件到微信功能

    本文实例为大家分享了Android实现app分享文件到微信的具体代码,供大家参考,具体内容如下 两种实现方案: 1.使用WXFileObject构造分享方法发送到微信: 2.调用系统分享方法,把文件直接发送到微信: 那么下面来分别看看怎么实现: 0.准备工作 首先,需要在AndroidManifest.xml中配置FileProvider信息,以适配10以后版本文件读取问题 AndroidManifest.xml <provider android:name="androidx.core.

  • Android截屏分享功能

    最近项目需要实现Android截屏分享功能,包括Android截屏获取图片.将图片保存到本地.通知系统相册更新.通过微信.QQ.微博分享截屏图片,本篇文章作为总结回顾.     一.Android截屏获取图片 通过对view进行绘制,得到bitmap,可以对Activity.Fragment进行绘制,也可以对其他的View进行绘制.    1 Activity截图(带空白的状态栏) public Bitmap shotScreen(Activity activity) { View view =

  • android系统分享的自定义功能的示例代码

    分享功能是app中特别常见的功能,国内的app基本都支持分享到微信 QQ等主流的社交应用.至于分享功能的实现大多是使用第三方的share sdk一步到位,或者分享的app比较少比如就一个微信 那通常使用微信sdk的分享模块即可.但其实android系统就给我们提供过一种分享的实现方式,代码也比较简单如下 Intent share = new Intent(Intent.ACTION_SEND); share.setType("text/plain"); share.putExtra(I

随机推荐