加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

使用java将SMS从PC发送到移动设备

发布时间:2020-12-15 08:46:22 所属栏目:Java 来源:网络整理
导读:我已经构建了一个通过 Java发送SMS消息的应用程序,但是在应用程序执行期间我遇到了很多异常(见下文): package john;import java.io.*;import java.net.InetAddress;import java.util.Properties;import java.util.Date;import javax.mail.*;import javax.ma
我已经构建了一个通过 Java发送SMS消息的应用程序,但是在应用程序执行期间我遇到了很多异常(见下文):

package john;

import java.io.*;
import java.net.InetAddress;
import java.util.Properties;
import java.util.Date;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class SMTPSend {

    public SMTPSend() {
    }

    public void msgsend() {
      String username = "mygmailuserid@gmail.com";
      String password = "mygmailpassword";
      String smtphost = "smtp.gmail.com";
      String compression = "My SMS Compression Information";
      String from = "mygmailid@gmail.com";
      String to = "+91mymobilenumber@sms.gmail.com";
      String body = "Hello SMS World!";
      Transport myTransport = null;

try {
Properties props = System.getProperties();
props.put("mail.smtp.host","smtp.gmail.com");
    props.put("mail.smtp.socketFactory.port","465");
    props.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");
    props.put("mail.smtp.auth","true");
    props.put("mail.smtp.port","465");

Session mailSession = Session.getDefaultInstance(props,null);
Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(from));
InternetAddress[] address = {new InternetAddress(to)};
msg.setRecipients(Message.RecipientType.TO,address);
msg.setSubject(compression);
msg.setText(body);
msg.setSentDate(new Date());

 myTransport = mailSession.getTransport("smtp");
  myTransport.connect(smtphost,username,password);
  msg.saveChanges();
  myTransport.sendMessage(msg,msg.getAllRecipients());
  myTransport.close();
 } catch (Exception e) {
    e.printStackTrace();
  }
}

public static void main(String[] argv) {
 SMTPSend smtpSend = new SMTPSend();
 smtpSend.msgsend();
}
} //

应用程序正在运行,但在我的邮箱中,我收到了以下内容:

Delivery to the following recipient failed permanently:

+91mymobilenumber@sms.gmail.com

如何使用Java代码/库发送SMS?

解决方法

请对以下变量进行一些修改:

String smtphost = "gmail.com";

替换为:

String smtphost = "smtp.gmail.com";

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读