Я очень запутался, когда читал о статических библиотеках и динамических библиотеках, а затем, наконец, о фреймворках, Cocoa Touch Frameworks и Cocoa Touch Static Libraries.
Единственное, что я понял, это то, что статические библиотеки (фреймворки?)добавляется в время компиляции , а динамические библиотеки нет;они загружаются динамически во время выполнения.
Q:
Я хотел бы добавить несколько статических библиотек (они заканчиваются на ".a", универсальные толстые двоичные файлы, скомпилированные для множества iOSтакие архитектуры, как armv7 и arm64) для моего приложения iOS.Желательно, если возможно, чтобы это было сделано путем объединения всех этих библиотек вместе (... в платформу?).Я также хочу написать оболочку Swift вокруг этих библиотек C.Эта обертка наконец будет использоваться в моем приложении.Тем не менее, оболочка не должна быть частью моего приложения, я хочу отдельный проект (опять же, фреймворк?) Для этого (можно ли объединить библиотеки и оболочку?).
Чем я сейчас занимаюсьпытаясь сделать, это написать оболочку Swift.Итак, я начал с Cocoa Touch Framework (потому что я думал, что это будет лучшей идеей), добавил библиотеки C и заголовки (на самом деле через podspec, хотя я не думаю, что это имеет значение, поскольку я мог бы также добавить их вручную), добавил заголовок моста (хотя некоторые другие пользователи сообщали, что фреймворки не работают с мостовыми заголовками, моя сборка прошла успешно).Это правильный путь?
Первая статья, которую я прочитал , была этой (называемой «Статические и динамические библиотеки и фреймворки в iOS») .
Затем я прочитал множество статей о переполнении стекакак компилировать статические библиотеки, как структурированы библиотеки и фреймворки, что фреймворки - это на самом деле просто набор библиотек и их заголовков (или около того).
Мне также кажется, что с годами в Apple все изменилось, как будто они изменили названия и возможности (Cocoa Touch Framework (это динамическая среда?), Похоже, была представлена в выпуске iOS 8 и т. Д.)что еще больше усложнило мне понимание того, как все это работает.
Не поймите меня неправильно, я просто говорю это, потому что хочу прояснить, что я действительно провел какое-то исследование (я думаю, довольно много)), но мне действительно нужна помощь, чтобы все было правильно.По сути, я просто ищу следующий шаг, который я должен сделать, чтобы импортировать все эти библиотеки в мое приложение.