76 lines
No EOL
3 KiB
Markdown
76 lines
No EOL
3 KiB
Markdown
# Configuration Files Requirements
|
|
|
|
This document outlines the configuration files required for the Alerte Secours mobile app and how to set them up.
|
|
|
|
## Environment Variables
|
|
|
|
The app uses environment variables for configuration and sensitive information. There are several environment files:
|
|
|
|
### Development Environment
|
|
|
|
Copy `.env.default` to `.env.local` (which is git-ignored) and fill in the required values:
|
|
|
|
- `BACKGROUND_GEOLOCATION_LICENSE`: License key for react-native-background-geolocation
|
|
- `BACKGROUND_GEOLOCATION_HMS_LICENSE`: HMS license key for react-native-background-geolocation
|
|
|
|
### Production Environment
|
|
|
|
Copy `.env.prod.example` to `.env.prod` (which is git-ignored) and fill in the required values:
|
|
|
|
- `SENTRY_DSN`: Your Sentry DSN for error tracking
|
|
- `SENTRY_ORG`: Your Sentry organization
|
|
- `SENTRY_PROJECT`: Your Sentry project name
|
|
- `ASC_API_KEY_ID`: Your App Store Connect API Key ID
|
|
- `ASC_API_ISSUER_ID`: Your App Store Connect API Issuer ID
|
|
- `ASC_API_KEY_PATH`: Path to your App Store Connect API Key file
|
|
- `PROVIDER_ID`: Your App Store Connect Provider ID
|
|
|
|
### Staging Environment
|
|
|
|
Copy `.env.staging.example` to `.env.staging` (which is git-ignored) and fill in the required values with the same information as the production environment, but with staging-specific values where applicable.
|
|
|
|
## Google Services Configuration
|
|
|
|
### iOS
|
|
|
|
1. Copy `ios/GoogleService-Info.example.plist` to `ios/GoogleService-Info.plist`
|
|
2. Copy `ios/AlerteSecours/GoogleService-Info.example.plist` to `ios/AlerteSecours/GoogleService-Info.plist`
|
|
3. Fill in the following values:
|
|
- `API_KEY`: Your Google API key
|
|
- `GCM_SENDER_ID`: Your GCM sender ID
|
|
- `PROJECT_ID`: Your Firebase project ID
|
|
- `STORAGE_BUCKET`: Your Firebase storage bucket
|
|
- `GOOGLE_APP_ID`: Your Google app ID
|
|
|
|
### Android
|
|
|
|
1. Copy `android/app/google-services.example.json` to `android/app/google-services.json`
|
|
2. Fill in the following values:
|
|
- `project_number`: Your Firebase project number
|
|
- `project_id`: Your Firebase project ID
|
|
- `storage_bucket`: Your Firebase storage bucket
|
|
- `mobilesdk_app_id`: Your Firebase mobile SDK app ID
|
|
- `client_id`: Your OAuth client ID
|
|
- `current_key`: Your Google API key
|
|
|
|
## Expo Updates Configuration
|
|
|
|
1. Copy `ios/AlerteSecours/Supporting/Expo.example.plist` to `ios/AlerteSecours/Supporting/Expo.plist`
|
|
2. Fill in the `EXUpdatesCodeSigningCertificate` with your Expo code signing certificate
|
|
|
|
## How to Obtain These Values
|
|
|
|
### Firebase Configuration
|
|
|
|
1. Go to the [Firebase Console](https://console.firebase.google.com/)
|
|
2. Select your project or create a new one
|
|
3. Add iOS and Android apps to your project
|
|
4. Download the configuration files for each platform
|
|
|
|
### Background Geolocation License
|
|
|
|
Purchase a license from [Transistor Software](https://www.transistorsoft.com/shop/products/react-native-background-geolocation)
|
|
|
|
### Expo Code Signing Certificate
|
|
|
|
Generate a code signing certificate for Expo updates by following the [Expo documentation](https://docs.expo.dev/eas-update/code-signing/) |