WKWebView
を使用して、リモートURLからのpdf
ファイルを表示しています。 iOS 12
がiOS 13
空白の画面が表示されるだけです。画像のURLで同じドメインにアクセスしましたが、正常に機能しましたが、pdf
ファイルのみにいくつかの問題があります。
let myURL = URL(string:"somefileurl.pdf") // If I hit this url in safari, It will download a pdf file.
let myRequest = URLRequest(url: myURL!)
webViewPdf.load(myRequest)
以下に示すように、WKNavigationDelegateで利用可能なDecisionPolicyForメソッドを実装するだけです。
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
decisionHandler(.allow)
}
以下のようにデリゲートをWebビューに設定します。
yourWebView.navigationDelegate = self
UIWebViewにも同じ問題があります。次のように修正されました(objective-c):
[self.webView loadData:data MIMEType:@"application/pdf" textEncodingName:@"" baseURL:[NSURL URLWithString:@"FilePathOrUrlString"];