所以,我意识到 SASL 没有在 android 中实现,因此 javamail oauth2 方法不会开箱即用。
但是,根据 gmail imap 的 google api 文档(https://developers.google.com/google-apps/gmail/xoauth2_protocol),获取身份验证令牌、对其进行编码并发送“AUTHENTICATE XOAUTH2”似乎相当简单' 手动发送到服务器。
我的问题:我想使用 javamail IMAP 功能(不想自己处理 IMAP 协议命令和响应),但我需要一种方法来简单地插入正确的身份验证命令 - 而不是传统的登录用户名密码。
这可以做到吗?最简单的方法是什么?我可以创建自己的身份验证方法并轻松实现吗?
或者,我可以创建连接,然后将其交给 IMAPStore(怀疑这会在它创建和管理连接池时起作用)。
- -编辑 - -
更具体地说,javax.security.sasl 方法未在 Imap.protocol.IMAPSaslAuthenticator 所依赖的 Android 中实现。