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

  1. 对于IOS:AppCenter配置.与…厮混
    <dict>
    <key>AppSecret</key>
    <string><MY_SECRET_KEY></string>
    </dict>
  1. 对于Android,我需要添加一个带有密钥的JSON文件:
 {
    "app_secret": "<MY_SECRET_KEY>"
 }

我已经在使用我的应用程序中的一个包来处理.环境档案:https://github.com/luggit/react-native-config

为了从ENV变量获取appcenter配置文件的APP_SECRET,有没有办法使用这个或另一个包?

我只是不想让这些密钥处于版本控制之下.

推荐答案

Appcenter允许我们使用构建脚本,您可以在此处查看更多详细信息:

我找到的解决方法是使用克隆后脚本.您需要在应用程序的根文件夹上创建一个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相关问答推荐

Redux toolkit通过按钮操作进行查询

嵌套的FlatList内的Incorrect Padding

为什么我的expoav视频不会自动播放?

有人可以帮我实现 Font.loadAsync

如何在 react-navigation v6 中更改标题高度

react-native 自定义视图,原生 prop 没有 propType

如何将谷歌反向地理编码与 React Native Expo 结合使用?

如何为我的 React Native Android 应用程序使用 Crashlytics?

React中类似于 React Native 中的 FlatList

检索元素的父项时出错:找不到与给定名称android:TextAppearance.Material.Widget.Button.Colored匹配的资源

React-native 在浏览器中打开链接并返回应用程序

通过带有对象子对象的数组react native 映射 - 与react网络中的工作方式不同?

React-native Xcode 构建失败 -> 'RCTAssert.h file not found'

未计算文件的 React-Native Bundle Error 错误 SHA-1

在 react-native 中设置动态 'initialRouteName'

如何在 react-native 中为在后台杀死的 android 应用程序保持状态

React-Native 最低 Android API 级别

如何在 React Native 上隐藏 createStackNavigator 的标题?

如何为 TouchableOpacity 组件创建禁用样式?

将现有的 React Native 项目转换为 Expo