How can I attach an image file in email?

后端 未结 3 1195
独厮守ぢ
独厮守ぢ 2020-12-06 07:33

I want to attach an image with email, that image is stored in /data/data/mypacke/file.png. How can I attach that image file programmatically? What would sample

相关标签:
3条回答
  • 2020-12-06 08:02

    Use Intent.ACTION_SEND to hand the image off to another program.

    File F = new File("/path/to/your/file.png");
    Uri U = Uri.fromFile(F);
    Intent i = new Intent(Intent.ACTION_SEND);
    i.setType("image/png");
    i.putExtra(Intent.EXTRA_STREAM, U);
    startActivity(Intent.createChooser(i,"Email:"));
    
    0 讨论(0)
  • 2020-12-06 08:08

    I've done exactly what Blumer did and ran into permissions problems unless the file was on the sdcard or unless the file has MODE_WORLD_READABLE access.

    0 讨论(0)
  • 2020-12-06 08:12

    Worth noting that if the file is located in internal storage and set to MODE_PRIVATE (which it should be) then you should set the file to be readable by other programs before launching the intent. Using the code from the answer,

    File F = new File("/path/to/your/file.png");
    F.setReadable(true, false);                     // This allows external program access
    Uri U = Uri.fromFile(F);
    Intent i = new Intent(Intent.ACTION_SEND);
    i.setType("image/png");
    i.putExtra(Intent.EXTRA_STREAM, U);
    startActivity(Intent.createChooser(i,"Email:"));
    
    0 讨论(0)
提交回复
热议问题