У нас есть пять практически идентичных приложений, с несколькими разными иконками / именами / настройками.Это разные «бренды» одного и того же приложения, различающиеся только несколькими иконками, отдельными группами приложений и несколькими настройками по умолчанию в коде.Они созданы как их собственные цели в XCode.Это одна кодовая база, но на нее указывают 5 целей.
Вначале все выглядело очень красиво, с пятью разными целями.Однако теперь мы добавили два расширения в приложение.Один пользовательский «NotificationContentExtension» и один «TodayExtension» (виджет).Поскольку у нас есть 5 разных целей с 5 разными правами / группами, мы не нашли другого способа достичь этого, кроме как добавить эти расширения в КАЖДУЮ цель.Поскольку расширение является еще одной целью, это означает, что у нас теперь есть 15 различных целей.
Мы сейчас испытываем чрезвычайно медленное время компиляции, потому что каждый раз, когда мы открываем раскадровку, Xcode компилирует всю вещь один раз.для КАЖДОЙ (основной) цели.Мне не нужно строить свою раскадровку 5 раз.Или любой из моих других файлов.У меня есть ОДНО приложение, но несколько разных файлов и несколько настроек времени выполнения.
Это заставило меня задуматься - каждая из этих 15 целей по умолчанию имеет две конфигурации сборки: RELEASE и DEBUG.Я заметил, что это можно настроить и добавить еще.Почему бы не добавить конфигурации вместо целей?
Например, вместо «RELEASE» и «DEBUG», сделать их «MYAPP1», «MYAPP2», «MYAPP3» и т. Д. Каждая конфигурация может иметь свое имя продукта, значкии что, не так ли?
Есть ли веские причины не сделать это?Возможно ли это при работе с разными группами приложений / правами и т. Д.?У нас есть CoreData-базы данных, хранящиеся в AppGroups.Важно, чтобы все эти приложения могли быть установлены на одном устройстве без повреждения друг другом.Насколько я могу судить, это не должно быть проблемой, если есть несколько разных FLAG для каждой конфигурации и настройка кода как такового.А как насчет подписи?
Я прочитал эту статью / учебное пособие по этой теме, в которой объясняются основы и начинаются мои действия, но это будет огромная работа, чтобы на самом деле протестировать ее с базами данных.и права и все.