小编tro*_*yen的帖子

如何通过两步验证访问Gmail?

最近我在我的Gmail帐户中设置了两步验证,我尝试使用Java Mail API连接到我的gmail帐户,但它没有连接.

我的代码:

Properties props = System.getProperties();
    props.setProperty("mail.store.protocol", "imaps");
    try {
        Session session = Session.getDefaultInstance(props, null);
        Store store = session.getStore("imaps");
        store.connect("imap.gmail.com", "my_account@gmail.com", "password");
        System.out.println(store);

        Folder inbox = store.getFolder("Inbox");
        inbox.open(Folder.READ_ONLY);
        Message messages[] = inbox.getMessages();
        for (Message message : messages) {
            System.out.println(message);
        }
    } catch (NoSuchProviderException e) {
        e.printStackTrace();
        System.exit(1);
    } catch (MessagingException e) {
        e.printStackTrace();
        System.exit(2);
    }
Run Code Online (Sandbox Code Playgroud)

我从logcat获得了什么:

javax.mail.AuthenticationFailedException: [ALERT] Application-specific password required: http://support.google.com/accounts/bin/answer.py?answer=185833 (Failure)
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:660)
at javax.mail.Service.connect(Service.java:295)
at javax.mail.Service.connect(Service.java:176)
Run Code Online (Sandbox Code Playgroud)

请问有什么方法可以解决这个问题.

提前致谢.

java email imap

6
推荐指数
1
解决办法
4168
查看次数

标签 统计

email ×1

imap ×1

java ×1