Использование swift framework в objc - PullRequest
0 голосов
/ 10 декабря 2018

Я только что создал фреймворк в swift, и он отлично работает в проекте swift, но в цели c я получаю ошибки типа Undefined symbols for architecture armv7:.Я только что проверил доступные архитектуры, используя lipo -info, на котором показаны архитектуры симуляторов и устройств. Также я ссылался на эту ссылку, но бесполезно . Прикрепленное изображение также. Буду признателен за любую помощь, спасибо.

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Ниже приведен список дел в вашей платформе.

Использование классов Swift в классах Objective C

  • Использование Open Keyword перед именем класса в Swift
  • Использование@objc Ключевое слово перед открытым Ключевое слово класса Swift
  • Импортировать все заголовки классов объектов c в файле Umbrella YourProject.h, которые используют Swift Classes.
  • Использовать #import в Objective c

Я следовал подходу Apple Mix and Match.Надеюсь, это поможет.Спасибо

0 голосов
/ 10 декабря 2018

Чтобы получить доступ к Swift-классу в objc, который не унаследован от NSObject, вам необходимо:

@ objc public class yourUtils

Класс или протокол Swift должны быть помечены какатрибут @objc должен быть доступен и использоваться в Objective-C.Этот атрибут сообщает компилятору, что этот фрагмент кода Swift доступен из Objective-C.Если ваш класс Swift является потомком класса Objective-C, компилятор автоматически добавляет для вас атрибут @objc.

https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html

...