如何在android

时间:2017-03-03 05:45:32

标签: android android-file android-sharing

我尝试了很多方法,但我不能这样做。

我有 * .txt 文件。我希望通过Bluetooth , wifi , email and ...分享。

当我使用此代码时,我无法共享文件:

  File file = new File(Environment.getExternalStorageDirectory(), "Email-Ghap/Emails.txt");
        Intent sharingIntent = new Intent(Intent.ACTION_SEND);
        sharingIntent.setType("*/txt");
        sharingIntent.putExtra(Intent.EXTRA_STREAM, file);
        startActivity(Intent.createChooser(sharingIntent, "share file with"));

我完全想要这样:当用户点击分享按钮并选择一个电子邮件发件人(如 Gmail )进行分享时。该文件必须附加新文件的文件......

我找到了这个链接https://stackoverflow.com/a/16036249/4016922

但它共享txt文件内容。我想共享文件而不是txt文件的内容

1 个答案:

答案 0 :(得分:8)

像这样更改您的代码。

File file = new File(Environment.getExternalStorageDirectory(), "Email-Ghap/Emails.txt");

File file = new File(Environment.getExternalStorageDirectory() + "/" + "Email-Ghap/Emails.txt");

从:

sharingIntent.setType("*/txt");

sharingIntent.setType("text/*");

所以你的最终代码看起来像

    File file = new File(Environment.getExternalStorageDirectory().toString() + "/" + "abc.txt");
            Intent sharingIntent = new Intent(Intent.ACTION_SEND);
            sharingIntent.setType("text/*");
            sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + file.getAbsolutePath()));
            startActivity(Intent.createChooser(sharingIntent, "share file with"));