簡體   English   中英

WKWebViewJavascriptBridge的Xcode鏈接器錯誤

[英]Xcode Linker error for WKWebViewJavascriptBridge

我正在使用WebViewJavascriptBridge在JS和本機代碼之間進行交互。 我發現UIWebView有時會變慢,因此我嘗試切換到WKWebView。

使用UIWebView時該項目很好。

var bridge:WebViewJavascriptBridge!

override func viewDidAppear(animated: Bool) {

    super.viewDidAppear(animated)

    self.webView = UIWebView(frame: self.viewport.frame)

    self.view.addSubview(webView!)

    let url = NSBundle.mainBundle().URLForResource("index", withExtension: "html", subdirectory: "www")
    webView!.loadRequest(NSURLRequest(URL: url!))

    webView!.scrollView.bounces = false

    self.bridge = WebViewJavascriptBridge(forWebView: webView, handler: { (data, callback) -> Void in
        callback("msg from bridge")
    })

}

工作編譯器列表:

工作編譯器列表

但是,當我更改為WKWebViewJavascriptBridge時,它在鏈接時會崩潰:

var bridge:WKWebViewJavascriptBridge!

override func viewDidAppear(animated: Bool) {

    super.viewDidAppear(animated)

    self.webView = WKWebView(frame: self.viewport.frame)

    self.view.addSubview(webView!)

    let url = NSBundle.mainBundle().URLForResource("index", withExtension: "html", subdirectory: "www")
    webView!.loadRequest(NSURLRequest(URL: url!))

    webView!.scrollView.bounces = false

    self.bridge = WKWebViewJavascriptBridge(forWebView: webView, handler: { (data, callback) -> Void in
        callback("msg from bridge")
    })

}

錯誤信息:

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_WKWebViewJavascriptBridge", referenced from:
      type metadata accessor for __ObjC.WKWebViewJavascriptBridge in ViewController.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

似乎這些.m文件在鏈接之前沒有被編譯。

[在此處輸入圖片說明]

請告知。

ew,最后通過編輯橋頭使它工作了。

在文件WKWebViewJavascriptBridge.h ,找到以下行:

#if (__MAC_OS_X_VERSION_MAX_ALLOWED > __MAC_10_9 || __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_7_1)
#define supportsWKWebKit
#endif

然后刪除#if #endif對,只保留#define supportsWKWebKit位。 但是請確保您使用的是iphone 7.1或更高版本,否則它將不支持WKWebkit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM