0

ファイルを作成し、アプリからバックグラウンドで添付ファイルとして送信しています。すべて正常に機能しています。メールの送信は正常に行われますが、ファイルの作成中にabc.csvという名前を付け、このファイルをdirに保存します。名前ですが、添付ファイルを取得すると、<< _mnt_sdcard_MyTest_abc.csv>>という名前になります。これが私が添付ファイルを取得するために使用しているコードです。

 private boolean SendMail() {
  boolean result=false;
  txtAdd=(EditText)findViewById(R.id.txtAdd);
  File folder;
        folder = new File(Environment.getExternalStorageDirectory() + File.separator
              + getString(R.string.app_name));
     boolean var = false;
        if (!folder.exists())
            var = folder.mkdir();
  Mail m = new Mail("abc@gmail.com", "*****"); 
  //String[] toArr = {EmailFetcher.getEmail(this)}; 
  String[] toArr = {txtAdd.getText().toString()};
  m.setTo(toArr); 
  m.setFrom("abc@gmail.com"); 
  m.setSubject("XXXXXXXXX"); 
  m.setBody("XXXXXXXXXXXXXX"); 
  try { 
    m.addAttachment(folder+"/abc.csv"); 
      if(m.send()) {
          result= true;
    } else { 
        result= false;
    } 
  } catch(Exception e) { 
   Log.e("MailApp", "Could not send email", e); 
  } 
  return result;

}

添付ファイル名の設定方法。

4

1 に答える 1

2

これを使うだけで私にとってはうまくいきます。

public void sendImageInEmail(String filePath) 
    {
        try 
        {
            String html = "<html><body><center>Created By ZalaJanakSinh<center></body></html>";

            String address = "";

            Intent email = new Intent(Intent.ACTION_SEND);
            email.putExtra(Intent.EXTRA_EMAIL, new String[]{ address });
            email.putExtra(Intent.EXTRA_SUBJECT, "Created By Zala JanakSinh");

            //need this to prompts email client only

            email.setType("text/html");
            email.putExtra(Intent.EXTRA_TEXT,  Html.fromHtml(html));

            email.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            email.setType("image/*");                   

            email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(filePath)));
            myContext.startActivity(Intent.createChooser(email, "Choose an Email client :"));
        }
        catch (Exception e) 
        {
            e.printStackTrace();
            System.out.println("Error in SendImageInEmail==>"+e.toString());
        }

最高の幸運親愛なる

于 2013-03-18T05:42:10.700 に答える