반응형
웹서비스의 캐시 문제로 goBack()이 호출되면 스크립트가 실행되지 않는 문제가 발생.
이에 웹뷰가 로드 되는 시점에 기존 캐시를 지우고 다시 로드 하는 방식으로 문제를 해결.
코드는 다음과 같다.
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
NSURL *url = navigationAction.request.URL;
[[NSURLCache sharedURLCache] removeAllCachedResponses];
NSSet *webstieSet = [NSSet setWithArray:@[WKWebsiteDataTypeDiskCache,
WKWebsiteDataTypeMemoryCache]];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:0];
[[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:webstieSet modifiedSince:date completionHandler:^{}];
}
반응형
'프로그래밍 > Xcode-iOS' 카테고리의 다른 글
UIView Animation 만들어보기 (0) | 2020.07.13 |
---|---|
Content and frame layout guides before iOS 11.0 error대처 (0) | 2020.07.02 |
WKWebView의 window.open과 alert처리 방법 (0) | 2020.06.26 |
UIWebView to WKWebView changed with Objective-C (0) | 2020.06.25 |
nonFilteredFileExtensions .ipa, .p12 추가해두기 (0) | 2020.06.19 |