Android微信の友达の輪は多く図を分かち合って、keyを申請する必要はありませんて、第三者のsdkを使いません


いつものルールで効果図を先に載せる
次はコード
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です.
ソースコード
ネットワーク画像のソースコードをサポート