在 iOS 中使用 Microsoft App Center 环境变量

Using Microsoft App Center environment variables in iOS

我想开源我的 iOS 应用程序,但仍然能够使用 CI 系统(如 Microsoft App Center)构建它。我的应用程序使用私有 API 密钥,我想从我的开源存储库中隐藏这些密钥。

幸运的是,App Center 提供了环境变量功能,旨在在构建时使用。他们的 documentation 说他们可以在 bash:

中这样使用

$ENVIRONMENT_VARIABLE

所以,假设我在 App Center 中配置了一个名为 GoogleAPIKey 的环境变量,我可以在我的应用程序中像这样 ProcessInfo.processInfo.environment["GoogleAPIKey"] ?? "" 检索它吗?如果是,如果只有 App Center 有密钥,我该如何在我的设备上测试应用程序(我不想把它放在我的代码中,因为那意味着它将是 public(我需要使用 gitignore)?

我认为您无法读取应用内的环境变量。您只能在自定义 bash 脚本中访问环境变量。但是我认为您可以在构建脚本中修改应用程序项目文件。所以你可以尝试这样的事情:

  1. 将一个特殊的文本文件添加到 xcode 项目并将其提交到您的存储库。
  2. 添加具有 GoogleAPIKey 值的环境变量
  3. 将 GoogleAPIKey 值写入构建脚本中的文本文件。
  4. 使用您的 Swift 代码从文本文件中读取 GoogleAPIKey 值

编辑当前方案(产品 -> 方案 -> 编辑方案)

这里添加环境变量: