1原理:
微信原生是不支持多图片分享的,但是Android原生是支持的,由于微信实现了Android原生的intentfilter,所以可以通过原生的调用分享。
2代码:
public static void shareImages(Context context, Uri[] uri) {
Intent shareIntent = new Intent();
// 1 Finals 2016-11-2 调用系统分享
shareIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
shareIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// 2 Finals 2016-11-2 添加图片数组
ArrayList<Uri> imageUris = new ArrayList<Uri>();
for (int i = 0; i < uri.length; i++) {
imageUris.add(uri[i]);
}
shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);
shareIntent.setType("image/*");
// 3 Finals 2016-11-2 指定选择微信。
ComponentName mComponentName = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI");
shareIntent.setComponent(mComponentName);
// 4 Finals 2016-11-2 开始分享。
context.startActivity(Intent.createChooser(shareIntent, "分享图片"));
}