Module to expose config variables to your javascript code in React Native, supporting both iOS and Android.
Bring some 12 factor love to your mobile apps!
Declare config variables in .env
:
API_URL=https://myapi.com
LOG_ERRORS=true
Then access those from javascript:
var Config = require('react-native-android-config');
Config.API_URL // 'https://myapi.com'
Config.SHOW_ERRORS // 'true'
- Include this module in
android/settings.gradle
:
include ':react-native-android-config'
include ':app'
project(':react-native-android-config').projectDir = new File(rootProject.projectDir,
'../node_modules/react-native-android-config/android')
- Apply a plugin and add dependency to your app build in
android/app/build.gradle
:
// first line
apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"
// down below
dependencies {
...
compile project(':react-native-android-config')
}
- Change your main activity to add a new package, in
android/app/src/main/.../MainActivity.java
:
import com.lugg.ReactConfig.ReactConfigPackage; // add import
public class MainActivity extends ReactActivity {
// ...
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new ReactNativeConfigPackage() // add package
);
}