Подтвердить что ты не робот

Обмен кодом между оригинальным приложением iOS и расширением приложения

Общий класс между приложением iOS и добавлением приложения

Я хочу использовать пользовательский класс как в моем приложении, так и в приложении расширения. Если у меня просто есть класс в основной папке приложения, расширение не забирает его. Я попытался сделать его копию и поместить в папку расширения, но я, конечно, получаю ошибку invalid redeclaration of [my class]. Какое лучшее решение для этого? Это всего лишь один класс, а не несколько ресурсов.

4b9b3361

Ответ 1

Ничего не нужно копировать. Просто добавьте необходимые файлы для компиляции источников для вашего расширения:

enter image description here

Ответ 2

Просто убедитесь, что файлы, которые вы хотите разделить, получают галочку в членстве целевого раздела.

Выберите файл, откройте правую панель Утилиты, расположенную с правой стороны, и отметьте.

enter image description here

Ответ 3

Встроенные фреймворки - отличный способ повторного использования кода между вашим приложением и вашим расширением. Перемещение некоторых из кода во встроенные фреймворки предоставит нам отличную возможность написать некоторые модульные тесты вокруг него.

См. раздел Использование встроенной структуры для совместного использования кода https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21-SW1