Environment variables in Expo using Release Channels
July 13, 2020
Hinweis: Release Channels sind legacy
Expo Classic Release Channels wurden durch EAS Update Branches ersetzt.
Wenn du neu startest, nutze EAS + app.config.js.
Empfohlenes Setup (EAS)
app.config.js:
code
export default ({ config }) => {
const env = process.env.APP_ENV || "dev";
const urls = {
dev: "https://api-dev.example.com",
staging: "https://api-stg.example.com",
prod: "https://api.example.com",
};
return {
...config,
extra: {
apiUrl: urls[env],
appEnv: env,
},
};
};
Dann im Code:
code
import Constants from "expo-constants";
const { apiUrl, appEnv } = Constants.expoConfig?.extra ?? {};
EAS Build:
code
APP_ENV=staging npx eas build -p android
EAS Update Branches
Branches kannst du nutzen, um Env-spezifische Updates zu pushen:
code
npx eas update --branch staging
Legacy (nur fuer alte Expo Classic Apps)
Frueher konntest du Constants.manifest.releaseChannel nutzen.
Das ist heute nur noch fuer alte expo publish Flows relevant.