Управление параметрами, зависящими от окружения в iOS, опирается на Xcode build configurations в сочетании с .xcconfig файлами для чистого разделения значений между окружениями.
Debug, Staging и Release.xcconfig файлах для каждой конфигурацииОпредели ключи в твоём .xcconfig файле:
API_BASE_URL = https://staging.example.com
Пробрось их через Info.plist:
APIBaseURL → $(API_BASE_URL)
Затем читай их в Swift:
let url = Bundle.main.infoDictionary?["APIBaseURL"] as? String
Используй флаги компилятора для изоляции логики, зависящей от окружения, на этапе компиляции:
#if DEBUG
print("Debug mode active")
#endif
STAGING в Other Swift Flags в настройках сборки.xcconfig файлов, содержащих чувствительные значения, в систему контроля версий.xcconfig файлы для каждого окружения для чистого разделенияInfo.plist для доступа в рантайме#if флаги для условной логики на этапе компиляцииФлаги компилятора, определённые в настройках сборки, можно использовать с директивами #if для исключения кода, зависимого от окружения, на этапе компиляции, что предотвращает попадание отладочного или staging кода в production бинарники.
Новый — ещё не проверен сообществом
Вы