不使用任何第三方SDK和jar,利用android原生自带的api进行多图分享,已在线上项目使用
/**
* 分享多图到对应应用*
* @param context
* @param
* @param paths 本地图片的路径
*/
public static void shareComm(Context context, String Kdescription, List<String> paths, String appPackage, String activityName) {
if (!TextUtils.isEmpty(appPackage)){
if (!AppInstallHelper.isInstalled(context, appPackage, activityName)) {
ActivityHelper.showTips(context, "您没有安装该应用!");
return;
}
}
Intent intent = new Intent();
if (!TextUtils.isEmpty(appPackage)){
intent.setComponent(new ComponentName(appPackage, activityName));
}
intent.setAction("android.intent.action.SEND_MULTIPLE");
ArrayList<Uri> imageList = new ArrayList<Uri>();
for (String picPath : paths) {
File f = new File(picPath);
if (f.exists()) {
imageList.add(Uri.fromFile(f));
}
}
if (imageList.size() == 0) {
ActivityHelper.showTips(context, "图片不存在!");
return;
}
intent.putExtra(Intent.EXTRA_TEXT, Kdescription);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_STREAM, imageList); //图片数据(支持本地图片的Uri形式)
intent.putExtra(Intent.EXTRA_TEXT, Kdescription);
intent.putExtra("Kdescription", Kdescription); //分享页面,图片上边的描述
context.startActivity(intent);
}