forked from eatvio/eatvio_app
3.4 KiB
3.4 KiB
Настройка переменных окружения
Этот проект использует переменные окружения для хранения секретных данных и конфигурации.
Установка
- Скопируйте файл
env.exampleв.env:
cp env.example .env
- Отредактируйте файл
.envи замените значения на ваши собственные секреты.
Переменные окружения
API URLs
BASE_URL- основной URL API (по умолчанию: https://eatvio.ru)DEV_BASE_URL- URL API для разработки (по умолчанию: https://dev2.eatvio.com)
Sentry Configuration
SENTRY_DSN- DSN для Sentry мониторинга
Firebase Configuration
FIREBASE_PROJECT_ID- ID проекта FirebaseFIREBASE_DATABASE_URL- URL базы данных FirebaseFIREBASE_STORAGE_BUCKET- bucket для хранения файловFIREBASE_MESSAGING_SENDER_ID- ID отправителя сообщений
Firebase Android Configuration
FIREBASE_ANDROID_API_KEY- API ключ для AndroidFIREBASE_ANDROID_APP_ID- ID приложения для Android
Firebase iOS Configuration
FIREBASE_IOS_API_KEY- API ключ для iOSFIREBASE_IOS_APP_ID- ID приложения для iOSFIREBASE_IOS_BUNDLE_ID- Bundle ID для iOS
App Store URLs
APP_STORE_URL- URL App StoreRUSTORE_URL- URL RuStore
Support URLs
TELEGRAM_SUPPORT_URL- URL поддержки в TelegramSUPPORT_EMAIL- email для поддержки
Test Credentials (только для разработки)
TEST_EMAIL- тестовый emailTEST_PASSWORD- тестовый пароль
Email Validation API
EMAIL_VALIDATION_API_URL- URL API для валидации email
Connection Check URLs
GOOGLE_CHECK_URL- URL для проверки соединения (Google)YANDEX_CHECK_URL- URL для проверки соединения (Yandex)
Безопасность
⚠️ ВАЖНО: Файл .env добавлен в .gitignore и не должен попадать в репозиторий. Все секретные данные должны храниться только в этом файле.
Использование в коде
Для доступа к переменным окружения используйте класс EnvConfig:
import 'package:eatvio_app/core/env_config.dart';
String baseUrl = EnvConfig.baseUrl;
String sentryDsn = EnvConfig.sentryDsn;
Миграция
Все секреты были перенесены из кода в переменные окружения:
- Sentry DSN - из
main.dart - Firebase конфигурация - из
firebase_options.dart - API URLs - из
const.dart - URL для проверки соединения - из
internet_connection_checker_screen.dart - URL для обновления приложения - из
update_screen.dart - URL поддержки Telegram - из
support_screen.dart - API для валидации email - из
registration_repository.dart - Тестовые учетные данные - из
test_cases.dart - Email поддержки - из
support_screen.dart