如何在eas.json中使用EAS Secret变量且不混淆本地.env变量
解决方案
步骤1:创建生产环境专用的EAS Secret变量
通过命令行在项目级创建独立的生产环境Secret变量(避免和本地.env变量重名):
eas secret:create --scope project --name PROD_API_URL --value "www.production.com" eas secret:create --scope project --name PROD_VEHICLE_IMAGE_URL --value "www.production2.com"
步骤2:修改eas.json的production配置
在env字段中用${变量名}的格式引用Secret变量,EAS构建时会自动替换为对应Secret的值,本地.env变量不受影响:
"production": { "channel": "production", "env": { "EXPO_PUBLIC_API_URL": "${PROD_API_URL}", "EXPO_PUBLIC_VEHICLE_IMAGE_URL": "${PROD_VEHICLE_IMAGE_URL}" } }
说明
- 本地开发时,继续使用
.env里的EXPO_PUBLIC_*变量,和EAS Secret完全隔离。 - 生产构建时,EAS会读取项目级Secret中的值,替换到配置的
EXPO_PUBLIC_*变量中注入应用。
内容的提问来源于stack exchange,提问作者n9p4
相关产品推荐
相关产品推荐

