Не удается получить доступ к Swift Framework в Objective-C - PullRequest
0 голосов
/ 07 июня 2018

Создать Swift Framework,

Geolens.swift

enter image description here

Когда я пытаюсь получить доступ в проекте Objective-C, не могувызовите 2 метода

createuser & startSessionForUser

enter image description here

Получение ошибки, как это

Метод не может быть помечен как @objc, поскольку тип параметра не может быть представлен в Objective-C

Getting error adding @objc

Ответы [ 3 ]

0 голосов
/ 07 июня 2018

Если вы хотите, чтобы методы были доступны в Obj-C, также убедитесь, что вы добавили @objc public в определение всех методов.Точно так же, как вы делали это в методах didRegister... и didFailedToRegisrer... в вашем классе.

Happy Coding ... ?

0 голосов
/ 07 июня 2018

Ваша проблема в errorCode: Int? в UserCompletionBlock.

Int - это value type, а Objective C не может представлять Optional из value type, только reference types, например class will.

Таким образом, вам необходимо:

  1. избавиться от необязательности
  2. использовать ссылочный тип, такой как NSNumber или вашу собственную оболочку
  3. полностью сбросить этот параметр
0 голосов
/ 07 июня 2018

Добавить @objc:

@objc public func createUser(...) { ... }
@objc public func startSessionForUser(...) { ... }
...