На мою думку, найкращим варіантом є використання react-native-config . Він підтримує 12 фактор .
Я вважав цей пакет надзвичайно корисним. Ви можете встановити кілька середовищ, наприклад розробку, постановку, виробництво.
У випадку Android, змінні доступні також у класах Java, gradle, AndroidManifest.xml тощо. У разі iOS, змінні доступні також у класах Obj-C, Info.plist.
Ви просто створюєте такі файли, як
.env.development
.env.staging
.env.production
Ви заповнюєте ці файли ключовими, такими як значення
API_URL=https://myapi.com
GOOGLE_MAPS_API_KEY=abcdefgh
а потім просто скористайтеся ним:
import Config from 'react-native-config'
Config.API_URL // 'https://myapi.com'
Config.GOOGLE_MAPS_API_KEY // 'abcdefgh'
Якщо ви хочете використовувати різні середовища, ви в основному встановлюєте змінну ENVFILE так:
ENVFILE=.env.staging react-native run-android
або для складання програми для виробництва (андроїд в моєму випадку):
cd android && ENVFILE=.env.production ./gradlew assembleRelease
import {Platform} from 'react-native';
console.log(Platform);