通过邮件应用程序共享文件,无需请求权

时间:2016-01-05 16:51:08

标签: java android android-intent android-6.0-marshmallow

我正在获取文件Uri,然后使用它来构建一个intent并传递该Uri的读取权限:

      Intent shareIntent = ShareCompat.IntentBuilder.from(MainActivity.this).setType("image/jpeg")
          .setStream(uri).getIntent();
      String sendTo[] = {"send_to_email@gmail.com"};
      shareIntent.putExtra(Intent.EXTRA_EMAIL, to);
      shareIntent.setData(uri);
      shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

问题在于shareIntent.setData(uri)将“Uri”添加为“收件人”字段中的收件人以及来自sendTo[]的电子邮件。

通过避免使用shareIntent.setData(uri)来修复此问题,但根据BABBQ talk about file sharing,如果未设置setData(uri),则FLAG_GRANT_READ_URI_PERMISSION将无效。

如何避免在“收件人”字段中作为收件人添加在.setData(uri)中传递的Uri?谢谢!

0 个答案:

没有答案