2013-04-11 144 views
1

我正在使用this article来帮助我发送自动发送的电子邮件,但我遇到了一个问题,似乎没有任何事情发生,也没有生成错误。自动发送电子邮件失败

我使用AsyncTask,但它根本没有发送邮件。

公共类发件人扩展的AsyncTask <虚空,虚空,虚空> {

private Exception exception; 

    protected Void doInBackground(String... arg0) { 

     Log.v("aws", "OPEN asa"); 

     Mail m = new Mail("[email protected]", "password"); 
     String[] toArr = {"[email protected]"}; 
     m.setTo(toArr); 
     m.setFrom("[email protected]"); 
     m.setSubject("This is an email sent using my Mail JavaMail wrapper from an >Android device."); 
     m.setBody("Email body."); 

     try { 
      //m.addAttachment("/sdcard/filelocation"); 

      if(m.send()) { 
       Log.v("aws", "OK SENT"); 
      } else { 
       Log.v("aws", "NOT SENT"); 
      } 
     } catch(Exception e) { 
      Log.v("aws", "EXCEPTION . NOT SENT"); 
     } 
     return null; 
    } 

    @Override 
    protected Void doInBackground(Void... arg0) { 
     // TODO Auto-generated method stub 
     return null; 
    } 

    protected void onPostExecute(Void... arg0) { 
     // TODO: check this.exception 
     // TODO: do something with the feed 
    } 

}

我已经使用new Sender().execute();执行任务,但什么也没发生,并没有错误被抛出。

我在做什么错?

编辑

代码有两个doInBackground,使得第二重写我的工作doInBackground

+0

愚蠢的错误! – 2015-02-28 18:18:34

回答

1

要小心,你有你的两个代码doInBackground()方法和@Override版本是什么得到由AsyncTask执行。只需将代码从错误的doInBackground()版本移动到正确的版本并删除错误的版本。

+0

**太棒了!**完成! – 2013-04-12 04:55:03