本项目以JavaMail类库为基础进行封装的框架,比JavaMail简单易用,在使用它开发电子邮件客户端时,还能避免对电子邮件协议不熟悉的烦恼。目前支持的电子邮件协议有SMTP和IMAP,它支持的功能有发送邮件,下载附件、获取文件夹列表、读取邮件、加载邮件、同步邮件,对邮件消息的移动,删除,保存到草稿箱等操作,同时支持邮箱的新邮件消息推送(需要邮件服务器支持相关命令),邮件搜索等功能。把它依赖到你的Android项目中,你只需简单配置邮件服务器的参数,再使用这些简易的接口,即可完成你所需的功能,所见即所得。
效果图
完成邮件服务器配置、发送邮件、加载邮件、同步邮件、查看邮件、下载附件。
安装引入
步骤一、将JitPack存储库添加到根目录的build.gradle中:
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
步骤二、在项目的app模块下的build.gradle里加:
dependencies { implementation 'com.github.mailhu:emailkit:4.2.1' }
注:因为该库内部使用了Java 8新特性,可能你的项目依赖该框架在构建时出现如下错误:
Invoke-customs are only supported starting with Android O (--min-api 26)
你可以在项目的app模块下的build.gradle里加添如下代码:
android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } }
简单示例
以下代码是展示如何发送一封简单的电子邮件。若想了解框架的更多功能,请查阅Wiki文档。
//初始化 EmailKit.initialize(this); //配置邮件服务器参数 EmailKit.Config config = new EmailKit.Config() .setMailType(EmailKit.MailType.FOXMAIL) //选择邮箱类型,快速配置服务器参数 .setAccount("[email protected]") //发件人邮箱 .setPassword("password"); //密码或授权码 //设置草稿邮件 Draft draft = new Draft() .setNickname("小学生") //发件人昵称 .setTo("[email protected]") //收件人邮箱 .setSubject("这是一封测试邮件") //邮件主题 .setText("Hello world !"); //邮件正文 //使用SMTP服务发送邮件 EmailKit.useSMTPService(config) .send(draft, new EmailKit.GetSendCallback() { @Override public void onSuccess() { Log.i(TAG, "发送成功!"); } @Override public void onFailure(String errMsg) { Log.i(TAG, "发送失败,错误:" + errMsg); } });
混淆
-dontwarn com.sun.**
-dontwarn javax.mail.**
-dontwarn javax.activation.**
-keep class com.sun.** { *;}
-keep class javax.mail.** { *;}
-keep class javax.activation.** { *;}
-keep class com.smailnet.emailkit.** { *;}
致谢
示例程序中所用到的开源库、框架和图像资源,在此致谢!
- LitePal
- MicroKV
- SmartRefreshLayout
- BaseRecyclerViewAdapterHelper
- Iconfont
本文隐藏内容 登陆 后才可以浏览