Зависимое от конфигурации значение в файле Info.plist

У меня есть три конфигурации в моем проекте iOS:

  • Debug
  • Adhoc
  • Release

Теперь я хочу изменить имя приложения следующим образом:

  • MyAppDebug
  • MyAppAdhoc
  • MyApp (обратите внимание, что в этом нет суффикса)

Есть ли способ, которым я могу легко достичь этого в Xcode с помощью какого-то типа "компилятор-if-else-macro-thing"?

Ответы

Ответ 1

  • Изменение отображаемого имени приложения для соответствующих конфигураций * Один из способов добиться этого - использовать тот же файл информации о файле, который у вас есть.

    • Создайте пользовательскую переменную. Нажмите на файл целевого проекта.
    • Затем в правом нижнем углу найдите кнопку "+" Добавить настройку сборки.
    • Нажмите эту кнопку "Добавить настройку сборки" и выберите "Добавить пользовательские настройки Установка "введите имя для новой настройки, как для ex:" BUNDLE_DISPLAY_NAME ".
    • Разверните эту новую настройку, чтобы увидеть ее конфигурации. Дайте нужное имя для каждой конфигурации. Например: Debug → MyAppDebug

Часть 2:

  • Выберите файл appname-info.plist.
  • Найдите ключ "Отображаемое имя пакета" и значением для него должна быть эта новая пользовательская переменная ${BUNDLE_DISPLAY_NAME}

Затем для соответствующей конфигурации он выберет имя из переменной BUNDLE_DISPLAY_NAME в настройках сборки.

Ответ 2

Конечно. Сначала вам нужно создать отдельный файл Info.plist для каждой конфигурации. Затем в настройках сборки проекта найдите строку, где находится Info.plist, разверните эту строку и выберите отдельный файл Info.plist для каждой вашей конфигурации. Затем вы можете ввести желаемое имя в соответствующее поле в каждом файле Info.plist. Что это:)

Ответ 3

Также у вас может быть два разных информационных листа для разных конфигураций, которые являются разными файлами, а затем в Build Settings > Info.plist File " вы можете изменить его. XCode 10.1