Postal 0.5.0

Postal 0.5.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最新发布2017年9月
SwiftSwift 版本4.0.0
SPM支持 SPM

Jérémie GiraultKevin Lefevre 维护。



Postal 0.5.0

  • Kevin Lefevre 和 Jeremie Girault

Postal 是一个 Swift 框架,提供了对常见电子邮件提供商的简单访问。

示例

连接

let postal = Postal(configuration: .icloud(login: "[email protected]", password: "mypassword"))
postal.connect { result in
    switch result {
    case .success:
        print("success")
    case .failure(let error):
        print("error: \(error)")
    }
}

搜索

let filter = .subject(value: "Foobar") && .from(value: "[email protected]")
postal.search("INBOX", filter: filter) { result in
    switch result {
    case .success(let indexes):
        print("success: \(indexes)")
    case .failure(let error):
        print("error: \(error)")
    }
}

获取

let indexset = NSIndexSet(index: 42)
postal.fetchMessages("INBOX", uids: indexset, flags: [ .headers ], onMessage: { email in
    print("new email received: \(email)")
}, onComplete: error in
    if error = error {
        print("an error occured: \(error)")
    }
}

想要调试您的 IMAP 会话?

postal.logger = { log in
    print(log)
}

关于 Mailcore 的看法?

Postal 并不旨在解决与 MailCore 相同的目标。您可以在我们的 TechnicalNotes 文档中查看我们的观点。

供应商 quirks

E-mail 协议是标准化的。然而,供应商的实现在这些标准中提供了扩展或变体。我们尝试创建一个文档来概括这些问题的工作方式:ProviderQuirks

贡献

Postal 已经是一件伟大的工作,我们可以在许多领域真正用到您的帮助。

  • 找到和报告错误。
  • 新功能建议。
  • 回答问题。
  • 改进文档。
  • 审查拉取请求。
  • 修复错误/新功能。
  • 改善测试。
  • Roadmap 贡献。

如果您觉得这些听起来很有趣,请发送拉取请求!

请注意,该项目使用贡献者代码行为准则发布。通过参与此项目,您同意遵守其条款,您可以在以下位置找到: CodeOfConduct

要求

  • Xcode 8
  • OS X 10.10 或更高版本
  • iOS 8.0 或更高版本

安装

手册

  1. 将 Postal 存储库作为您的应用程序存储库的 子模块 添加。

    git submodule add https://github.com/snipsco/Postal.git
    git submodule update --init --recursive
  2. Postal.xcodeprojCarthage/Checkouts/Result/Result.xcodeproj 拖放到您的应用 Xcode 项目或工作区中。

  3. 在您的应用目标设置中的“通用”标签页上,将 Postal.frameworkResult.framework 添加到“已嵌入的二进制文件”部分。

  4. 如果您的应用目标完全不包含 Swift 代码,您还应将 EMBEDDED_CONTENT_CONTAINS_SWIFT 构建设置设置为“是”。

授权协议

Postal 以 MIT 协议 发布。