Android 微信朋友圈多图分享,不用申请key,不用第三方sdk

来源:互联网 发布:软件著作权怎么加急 编辑:程序博客网 时间:2024/05/21 17:04

老规矩先上效果图

这里写图片描述

下来是代码

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<String> 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<String> 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<Uri> 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。

源码

支持网络图片的源码

阅读全文
0 0
原创粉丝点击