Я не могу вызвать этот файл swift из другого приложения / фреймворка, так как получаю приведенную ниже ошибку.
"Неизвестное имя класса 'WKScriptMessageHandler'"
Это mySwift.swift, который я объявил в рамках.
@objcMembers public class HSIWKJavascriptBridge : NSObject, WKScriptMessageHandler{
public func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
if message.name == "test", let messageBody = message.body as? String {
print(messageBody)
}
}
}
swiftкомпилятор сгенерировал этот код автоматически при компиляции.
@class WKUserContentController;
@class WKScriptMessage;
SWIFT_CLASS("_TtC5MyFwk21HSIWKJavascriptBridge")
@interface HSIWKJavascriptBridge : NSObject <WKScriptMessageHandler>
- (void)userContentController:(WKUserContentController * _Nonnull)userContentController didReceiveScriptMessage:(WKScriptMessage * _Nonnull)message;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
Теперь ошибка в том, что WKScriptMessageHandler не объявляется автоматически, как
@class WKUserContentController;
@class WKScriptMessage;
, из-за чего я не могу использовать фреймворк.