###現在の状況
WKWebViewでwebサイトを表示しています。
頻繁にHTMLの変更を行うため、アプリ起動時に毎回最新の更新後のページを表示させたいのですが
HTMLでは下記の記述でキャッシュクリアしchrome、safari上では常に更新されている状態でもアプリで確認すると更新されていない状態です。
<meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="cache-control" content="no-cache" /> <meta http-equiv="expires" content="0" />
###ご質問
アプリでも常に最新の状態にするにはどうすればいいのでしょうか?
Swiftでは下記の記述をしています。
(かなりの初心者なので、誠に勝手で申し訳ございませんが色んなサイトをご参考にさせていただいておりますが、
まだまだ記述内容の意味が分かっていない箇所もございます。)
こちらをご参考にさせていただきました。
https://rc-code.info/ios/post-241/
import UIKit import WebKit class ViewController: UIViewController { @IBOutlet weak var WV: WKWebView! var webView: WKWebView! override func loadView() { URLSession.shared.reset {} UserDefaults.standard.synchronize() let dataStore = WKWebsiteDataStore.default() dataStore.fetchDataRecords(ofTypes: WKWebsiteDataStore.allWebsiteDataTypes()) { records in dataStore.removeData(ofTypes: WKWebsiteDataStore.allWebsiteDataTypes(), for: records, completionHandler: {}) } let webConfiguration = WKWebViewConfiguration() webView = WKWebView(frame: .zero, configuration: webConfiguration) view = webView webView.allowsBackForwardNavigationGestures = true let statusBar = UIView(frame:CGRect(x: 0.0, y: 0.0, width: UIScreen.main.bounds.size.width, height: 20.0)) statusBar.backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 1.0) view.addSubview(statusBar) } override func viewDidLoad() { super.viewDidLoad() let myURL = URL(string:"http://sample/") let myRequest = URLRequest(url: myURL!) webView.load(myRequest) } } extension ViewController: WKUIDelegate { } extension ViewController: WKNavigationDelegate { }
何卒ご教授いただけましたら幸いでございます。
あなたの回答
tips
プレビュー