老规矩先上效果图

下来是代码

MainActivity.java

package com.example.myapplication;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.content.pm.PackageManager;import android.net.Uri;import android.os.Environment;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.Toast;import java.io.File;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private Button button;    ArrayList paths = new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        File myFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath()         + File.separator + "DCIM" + File.separator + "Camera");        File[] files = myFile.listFiles();        if (files != null){            for (File file:files) {                if (file.getName().endsWith("jpg")){                    if (paths.size() <8){                        paths.add(file.getAbsolutePath());                    }else {                        break;                    }                }            }        }        if(!isApkInstalled(this, "com.tencent.mm")){            Toast.makeText(this,"没有安装微信",Toast.LENGTH_SHORT).show();            return;        }        button = findViewById(R.id.button);        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                shareMoreImageToWXCirle(MainActivity.this,"哈哈哈哈哈哈哈",paths);            }        });    }    /**     * 判断一个apk是否安装     *     * @param context     * @param packageName     */    public boolean isApkInstalled(Context context, String packageName) {        PackageManager pm = context.getPackageManager();        try {            pm.getPackageInfo(packageName, 0);        } catch (PackageManager.NameNotFoundException e) {            return false;        }        return true;    }    private  void shareMoreImageToWXCirle(Context context , String Kdescription , ArrayList paths){        Log.e("paths",paths.toString());        Intent intent = new Intent();        ComponentName comp = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI");        intent.setComponent(comp);        intent.setAction(Intent.ACTION_SEND_MULTIPLE);        ArrayList imagelist = new ArrayList<>();        for (String picPath: paths) {            File file = new File(picPath);            if (file.exists()){                imagelist.add(Uri.fromFile(file));            }        }        if (imagelist.size() == 0){            Toast.makeText(context,"图片不存在",Toast.LENGTH_SHORT).show();            return;        }        Log.e("遍历图片加入list",System.currentTimeMillis()+"");        intent.setType("image/*");        intent.putExtra(Intent.EXTRA_STREAM,imagelist);//图片数据,支持本地uri        intent.putExtra("Kdescription", Kdescription);//内容描述        context.startActivity(intent);        Log.e("跳转",System.currentTimeMillis()+"");    }}

完了,没错,就是这么简单粗暴。代码比较乱,只是个简单demo。

源码

支持网络图片的源码

更多相关文章

  1. Android文件图片上传的详细讲解(三)---模式回调类
  2. Android(安卓)IntentService用法和源码分析
  3. android之ListView和adapter配合显示图片和文字列表
  4. [置顶] android Listview分批加载+自动加载(附源码下载)
  5. Android(安卓)把Layout变成图片
  6. android中的贪吃蛇源码
  7. android实现涂鸦,保存涂鸦后的图片,清屏
  8. Android(安卓)调用系统的照相,浏览图片,转存并裁剪!
  9. Android(安卓)TextView中插入图片

随机推荐

  1. 内网主机从外面连接不了?SSH反向隧道来帮
  2. Scrapy框架的使用之Spider的用法
  3. Scrapy框架的使用之Scrapy入门
  4. 记一次网络中断故障处理
  5. 【机器学习笔记】:大话线性回归(二)
  6. 【机器学习笔记】:一文让你彻底记住什么是
  7. 【SQL刷题系列】:leetcode178 Rank Scores
  8. 谁才是权游的真正主角。
  9. Scrapy框架的使用之Downloader Middlewar
  10. 【SQL刷题系列】:leetcode183 Customers W