본문 바로가기
반응형

wkwebview5

iOS WKWebView PDF Download Viewer 어쩐지 쉽게 해결이 되었다고 생각이 들긴했지만 구석구석 문제점이 하나씩 나오기도 한다. 이번에는 멀쩡하게 잘 사용하던 pdf링크에 대한 문제다. 일반적으로 서버의 특정 URL을 호출하면 서버에서 파라미터에 맞게 PDF 파일을 읽어 파일을 내려주는 방식인데 WKWebView에서는 pdf자체의 바이너리를 읽어들이는 현상이 나타났다. 따라서 서버에서 내려주는 pdf파일을 단말의 캐시폴더에 저장하고 저장된 파일을 읽어와서 보여주는 방식으로 변경이 필요해서 검색을 하고 WKWebView Interface를 살펴보니 답이 나왔다. WKWebView의 loadData:MIMEType:charaterEncodingName:baseUrl을 이용하고 서버에서 내려주는 파일은 NSURLSession을 이용해서 다운로드 후 .. 2020. 9. 2.
WKWebView WebSiteDataTypeDiskCache 삭제 웹서비스의 캐시 문제로 goBack()이 호출되면 스크립트가 실행되지 않는 문제가 발생. 이에 웹뷰가 로드 되는 시점에 기존 캐시를 지우고 다시 로드 하는 방식으로 문제를 해결. 코드는 다음과 같다. - (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler { NSURL *url = navigationAction.request.URL; [[NSURLCache sharedURLCache] removeAllCachedResponses]; NSSet *we.. 2020. 7. 1.
WKWebView의 window.open과 alert처리 방법 - (void)initWKWebView { CGFloat bottomPadding = 0.0f; CGFloat topPadding = 0.0f; UIWindow *window = UIApplication.sharedApplication.keyWindow; if (@available(iOS 11.0, *)) { topPadding = window.safeAreaInsets.top; bottomPadding = window.safeAreaInsets.bottom; } _createdWKWebViews = [NSMutableArray new]; /** *웹뷰 바운스를 사용하지 않는 서비스는 웹뷰 높이를 탭바높이 만큼 빼고 잡는다. */ CGFloat tabbarHeight = (!_hasWebViewBounc.. 2020. 6. 26.
UIWebView to WKWebView changed with Objective-C 최근 애플 앱스토어에 심사를 제출할때마다 날라오는 안내 메일. 이제 곧 UIWebView를 사용하는 앱은 심사에서 거절될수있다는 안내다. 2020/04/28 - [Programming/iOS] - ITMS-90809: Deprecated API Usage, new apps that use UIWebView as of April 30, 2020 and app updates that use UIWebView as of December 2020. ITMS-90809: Deprecated API Usage, new apps that use UIWebView as of April 30, 2020 and app updates that use UIWebView as of Dece 조만간 앱을 업데이트 해야할 일이 있.. 2020. 6. 25.
ITMS-90809: Deprecated API Usage, new apps that use UIWebView as of April 30, 2020 and app updates that use UIWebView as of December 2020. 조만간 앱을 업데이트 해야할 일이 있어 사전에 바이너리 업로드 테스트를 진행했다. 요즘은 Xcode도 최신을 유지해야 아카이빙해서 바로 업로드할 수 있다고 하길래... 뭐 앱이야 잘 올라갔는데 개발자 메일로 메일이 한 통 왔다. 우리 앱 기능의 반은 웹뷰(UIWebView)에서 돌아가고 있어서 아주 중요한데 이미 이 녀석은 Deprecated된 녀석이라 더이상 사용하면 안되는 녀석이긴 하다. 바꿔야지 바꿔야지 하는데 그게 내맘같지 않다. 사실 내맘 먹는대로 하면 될 것 같긴 한데 또 그건 왠지 억울한(?) 느낌이랄까? 여튼, 조만간 브랜치 하나 따서 작업을 진행하기 해야할 판이다. 새로운 앱에서 UIWebView는 이제 사용할 수 없고 기존 앱 업데이트도 올해(2020년) 12월 까지만 지원된다고 한다... 2020. 4. 28.
반응형