OpenSSL-Universal

适用于 iOS、macOS、Catalyst、tvOS、visionOS、watchOS 的 OpenSSL CocoaPodsCarthageSwift Package Manager 包。 一个完整的 OpenSSL 解决方案。 该软件包带有预编译的库,并包含一个在必要时构建更新版本的脚本。

支持与赞助

感谢来自我们的 GitHub Sponsors 的持续贡献,该项目才得以在财务上保持可持续性。

高级赞助商

Emerge Tools 是一套革命性的产品,旨在增强移动应用程序和构建它们的团队。

emerge-tools-black

架构

输出格式

为什么?

Apple 说:“尽管 OpenSSL 在开源社区中很常用,但 OpenSSL 没有提供版本之间稳定的 API。因此,虽然 OS X 提供了 OpenSSL 库,但 OS X 中的 OpenSSL 库已被弃用,OpenSSL 从未作为 iOS 的一部分提供。”

安装

构建

您不必使用我提供的预构建二进制文件。 您可以在您信任的机器上本地构建它。

$ git clone https://github.com/krzyzanowskim/OpenSSL.git
$ cd OpenSSL
$ make SIGNING_IDENTITY="Apple Distribution"

构建过程的结果位于 Frameworks 目录中。

Swift Package Manager

我建议您使用 OpenSSL-Package,这是一个纯二进制发行版,它分发相同的二进制文件,但避免获取这个大小很大的 git 存储库。

dependencies: [
    .package(url: "https://github.com/krzyzanowskim/OpenSSL-Package.git", from: "3.3.2000")
]

然后作为使用 OpenSSL 的 Package 目标的依赖项

.target(
    name: "MyApp",
    dependencies: [
        .product(name: "OpenSSL", package: "OpenSSL-Package")
    ]
),

CocoaPods

pod 'OpenSSL-Universal'

Carthage

binary "https://raw.githubusercontent.com/krzyzanowskim/OpenSSL/main/OpenSSL.json"

作者

Marcin Krzyżanowski

常见问题等。

我在哪里可以使用 OpenSSL-Universal?

这些库适用于 iOS、macOS、appleTV、visionOS、watchOS。 检查是您的特权。 问问自己,您是否尝试为旧设备编写应用程序? 仅限新设备? 所有 iOS 设备? 仅限 macOS? 等等:

什么是 XCFramework?

OpenSSL.xcframework 作为多平台 XCFramework 捆绑包分发,有关更多信息,请查看文档 将二进制框架作为 Swift 包分发