本文摘录自我的新浪博客(android-robot),因为点击量很高,特分享至简书。点击阅读博客原文
大家都知到,分享一张图到微信朋友圈我们很常见,但是想要分享多张图到微信朋友圈几乎见不到。微信sdk暂未开放一次分享多张图片到朋友圈,但是有没有别的办法解决呢?显然是有的,不然我也不在这废话了。
下面的代码亲测有效,轻轻松松分享多图:
- 判断是否安装了微信代码
if(!AppUtils.isInstalledPackage(context, "com.tencent.mm")){
ToastUtils.showToast(R.string.msg_wechat_uninstall);
return;
}
//AppUtils.isInstalledPackage
public static boolean isInstalledPackage(Context context, String packageName) {
PackageInfo packageInfo = null;
try {
if (context!= null){
packageInfo = context.getPackageManager().getPackageInfo(packageName, 0);
}
} catch (PackageManager.NameNotFoundException e) {
packageInfo = null;
e.printStackTrace();
}
if (packageInfo == null) {
return false;
} else {
return true;
}
}
- 分享多张图
Intent weChatIntent = new Intent();
weChatIntent.setComponent(new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI"));
ArrayList imageList = new ArrayList();
for(String path : picPaths){
File file = new File(path);
if(file.exists()){
imageList.add(FileUtils.getFileUri(context, file));
}
}
if(imageList.size() == 0) return;
weChatIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
weChatIntent.setType("image/*");
weChatIntent.putExtra(Intent.EXTRA_STREAM, imageList);
weChatIntent.putExtra("Kdescription", description); //分享描述
context.startActivity(weChatIntent);
注意:该方法不支持分享网络图片,只支持分享本地图片。