2017-06-29 13 views
0

私のアプリでは、WK WebViewを使用してURLを開きます。 URLは正しく読み込まれますが、ロードされたURLのいくつかの外部リンクをクリックすると、他のウェブサイトにリダイレクトされません。次の例UI WebViewとWK WebViewナビゲーション

については

は、上記のリンクで私のURL https://www.urlaubstracker.de

で、異なる休日のお得な情報は、外部のウェブサイトにリンクされています。ユーザーを別のウェブサイトにリダイレクトするボタンをクリックすると、アプリは動作しないか、URLを読み込みます。

UI WebViewを使用しようとしましたが、問題なく動作しています。 WK WebViewでここで欠けているものが何であるかを指摘してください。

+0

のHttpに切り替える WKNavigationDelegate

を使用してみてくださいをアプリ交通セキュリティ設定私はすでに、」やってきたのInfo.plistで私のアプリのように、ここでの問題ではありません - 任意のロードを許可します "。 –

+0

NSExceptionAllowsInsecureHTTPLoadsを追加すると、あなたのお手伝いをすることができます。私の答えを確認してください。https://stackoverflow.com/a/44795602/3937664 –

答えて

0
  1. まず、アプリでATSを有効にします。

  2. ここでこのコードを試してください。

    var webView:WKWebView? )(@escaping(WKNavigationActionPolicy - :WKWebView、decidePolicyFor navigationAction:WKNavigationAction、decisionHandler

    オーバーライドのviewDidLoad(){ super.viewDidLoad()

    let webViewConfiguration = WKWebViewConfiguration() 
    webView = WKWebView(frame: view.bounds, configuration: webViewConfiguration) 
    let url = URL(string: "https://www.urlaubstracker.de") 
    let req = NSURLRequest(url: url!) 
    self.webView!.load(req as URLRequest) 
    self.webView?.navigationDelegate = self 
    webView?.navigationDelegate = self 
    webView?.allowsBackForwardNavigationGestures = true 
    webView?.autoresizingMask = [.flexibleWidth, .flexibleHeight] 
    view.addSubview(webView!) 
    

    }

    FUNCのWebViewの(_ WebViewのFUNC >ボイド)){ プリント( "のWebView:(WebViewの)decidePolicyForNavigationAction:(navigationAction)decisionHandler:(decisionHandler)")

    switch navigationAction.navigationType { 
    case .linkActivated: 
        if navigationAction.targetFrame == nil { 
         webView.load(navigationAction.request) 
        } 
    default: 
        break 
    } 
    
    decisionHandler(.allow) 
    

    }

+0

@Waleed Asif、このように試してみましたが、うまくいきました。 –

+0

私はあなたのコードを正確に使用しましたが、動作しません。それはURLを正しく読み込みますが、別のウェブサイトを開くべきリンクをクリックすると、何も起こりませんし、私の問題です。 UI Webviewを使用すると、WKのWebビューではうまく動作しません.Appleが推奨しているので、使いたいです。ここで助けてください –

+0

同じものを複製するのを助けてくれますか?あなたのWebサイトにWebkitをロードしました。今、どこをクリックすればいいですか? –