Совместимость фреймворков iOS
В настоящее время я занимаюсь рефакторингом приложения для iOS, которое содержит огромное количество классов, и в соответствии с просьбой я сделал несколько каркасов CocoaTouch (и опять же, по запросу, не статических библиотек), чтобы содержать эти классы в зависимости от их назначения (модели, запросы и т. Д.)., Тем не менее, фреймворк A содержит класс, который мне нужно использовать в фреймворке B, и я хотел бы спросить, знает ли кто-нибудь, как "соединить" две фреймворки? Может быть, что-то вроде цепочки?
1 ответ
Я предполагаю, что при подключении фреймворков вы имеете в виду, что вы хотите использовать классы из фреймворка A в фреймворке B.
Шаг 1: Целевые зависимости
Я предполагаю, что ваши целевые объекты относятся к одному проекту. В этом случае вам нужно убедиться, что фреймворк A является целевой зависимостью фреймворка B. Таким образом, фреймворк A будет построен до фреймворка B.
Шаг 2: Связывание
Компоновщик должен знать, где он может найти символы для фреймворка A, если вы хотите использовать их в фреймворке B. Поэтому добавьте фреймворк A на этапе компоновки Binary with Libraries в фреймворке B.
Теперь вы должны иметь возможность использовать классы платформы A в платформе B. Вам также нужно добавить платформу B в качестве целевой зависимости к цели вашего приложения, связать обе платформы с приложением, а также добавить обе платформы как встроенные двоичные файлы к соответствующей фазе сборки.,