Files
please-pay-me/context/2026-09-20_01-35-00_mobile-dotenv.md
T
2026-09-21 04:06:43 +03:00

1.2 KiB
Raw Blame History

2026-09-20 — API URL мобильного приложения из .env

Запрос

Задавать ApiBaseUrl через переменные .env, а не флагом run.ps1.

Решение

Конфиг читается из mobile/.env и уходит во Flutter как --dart-define-from-file — без flutter_dotenv в ассетах (иначе gitignored .env ломал бы CI: asset обязан существовать в момент сборки).

Порядок в AppConfig.fromEnvironment:

  1. --dart-define (в т.ч. из файла)
  2. явно переданная map (тесты)
  3. пустой URL → демо-режим

run.ps1: если .env нет — копирует .env.example. -ApiBaseUrl / -WebUrl остались как разовый override поверх файла. Скрипт сохранён в UTF-8 с BOM и без вложенных кавычек — иначе PowerShell 5.1 на Windows-1251 сыпется TerminatorExpectedAtEndOfString.

Ключи: PPM_API_BASE_URL, PPM_WEB_URL, PPM_DEMO. Локальный .env в gitignore (есть и в корневом).