react-native - 使用 .env 变量在 react-native 应用程序上设置 appcenter

标签 react-native environment-variables visual-studio-app-center react-native-config

我开始使用 MS appcenter在我的 native 应用程序中,在设置过程中,他们要求我向项目添加两个新文件:

  • 对于 IOS:AppCenter-Config.plist 与
  •     <dict>
        <key>AppSecret</key>
        <string><MY_SECRET_KEY></string>
        </dict>
    
  • 对于 Android,我需要添加一个带有 key 的 JSON 文件:
  •  {
        "app_secret": "<MY_SECRET_KEY>"
     }
    

    我已经在我的应用程序中使用了一个包来处理 .env 文件:https://github.com/luggit/react-native-config

    有什么方法可以使用这个包或其他包,以获得APP_SECRET对于来自 ENV 变量的 appcenter 配置文件?

    我只是不想让这些 key 处于版本控制之下。

    最佳答案

    Appcenter 允许我们使用构建脚本,您可以在此处查看更多详细信息:
    https://docs.microsoft.com/en-us/appcenter/build/custom/scripts
    我发现解决此问题的解决方法是使用克隆后脚本。您需要在应用程序的根文件夹上创建一个 bash 脚本,该脚本将写入 .env使用环境变量的文件。
    首先,创建一个名为 appcenter-post-clone.sh 的新文件.
    在你可以用这样的东西编写你的 .env 文件之后:

    #!/usr/bin/env bash
    
    echo "Creating .env file"
    cat > ./.env <<EOL
    API_URL=${API_URL}
    API_KEY=${API_KEY}
    EOL
    

    关于react-native - 使用 .env 变量在 react-native 应用程序上设置 appcenter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59620022/

    相关文章:

    reactjs - 使用 react 和 typescript 从 docker 容器获取环境变量

    go - 如何将 'default' 结构体标签与 Go 的 envconfig 库一起使用?

    android - 错误 : bundling failed: ReferenceError: SHA-1 for file index. js

    javascript - 检查 React Native 中是否始终启用位置服务(iOS 和 Android 均如此)

    linux - Linux环境住在哪里?

    ios - AppCenter react 原生 ios 构建失败 :"The following build commands failed: CopyPlistFile"

    c# - Xamarin AppCenter Crashes.TrackError 没有显示我在 AppCenter 中期望的详细信息

    react-native - React Native 构建错误 : Text must not be null or empty

    css - 通过示例了解flex 1

    c# - Appcenter UWP 分析未经授权