有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从Android应用发送电子邮件

我正在尝试开发一款安卓应用程序,使用JavaMail发送电子邮件。我已经尝试了下面的代码作为控制台应用程序,它可以工作,但当我在模拟器中作为安卓应用程序使用时,它会抛出异常,没有消息。我已经修改了舱单。xml和put,但仍然不起作用。在消息中引发异常。setText(“欢迎使用JavaMail”);所以请帮帮我

我在用邮件。jar和激活。来自太阳的罐子

下面是ClickHandler上的完整代码

 public void btnSendClickHandler(View view)
    {
         try{
            String host = "smtp.gmail.com";
            String from = "username@gmail.com";
            String pass = "password";
            Properties props = System.getProperties();
            props.put("mail.smtp.starttls.enable", "true"); // added this line
            props.put("mail.smtp.host", host);
            props.put("mail.smtp.user", from);
            props.put("mail.smtp.password", pass);
            props.put("mail.smtp.port", "587");
            props.put("mail.smtp.auth", "true");

            String[] to = {"toEmailAddress@gmail.com"}; // added this line

            Session session = Session.getDefaultInstance(props, null);

            MimeMessage message = new MimeMessage(session);
            message.setFrom(new InternetAddress(from));

            InternetAddress[] toAddress = new InternetAddress[to.length];

            // To get the array of addresses
            for( int i=0; i < to.length; i++ ) { 
                toAddress[i] = new InternetAddress(to[i]);
            }


            for( int i=0; i < toAddress.length; i++) {
                message.addRecipient(Message.RecipientType.TO, toAddress[i]);
            }

            message.setSubject("sending in a group");
            message.setText("Welcome to JavaMail");//The exception is thrown here   

            Transport transport = session.getTransport("smtp");
            transport.connect(host, from, pass);
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();
    } catch(Exception e){Toast.makeText(this, e.toString(),
            Toast.LENGTH_LONG).show();}
}

共 (1) 个答案

  1. # 1 楼答案

    你不能用

    System.getProperties();

    在安卓系统中使用

    emailIntent.putExtra
    

    试试this example