Notice
Recent Posts
Recent Comments
Link
투케이2K
7. (TWOK/LOGIC) [모바일] 웹뷰 (webview) 사용 시 로딩 (loading) 속도 향상 및 디스크 캐시 사용 실시 본문
투케이2K 로직정리
7. (TWOK/LOGIC) [모바일] 웹뷰 (webview) 사용 시 로딩 (loading) 속도 향상 및 디스크 캐시 사용 실시
투케이2K 2022. 8. 26. 16:51[로직 정리]
정리 로직 : MOBILE (ANDROID / IOS)
상태 : [모바일] 웹뷰 (webview) 사용 시 로딩 (loading) 속도 향상 및 디스크 캐시 사용 실시
[설 명]
[사전 설정]
1. 웹에서는 해시 값을 사용해 css 파일 명칭 지정
2. 웹에서는 해시 값을 사용해 js 파일 명칭 지정
[안드로이드]
1. 웹뷰 초기 설정에서 앱 캐시 사용 설정 지정
main_webview.getSettings().setAppCacheEnabled(true); // 앱 내부 캐시 사용 여부 설정
main_webview.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); // 웹뷰 캐시 모드 설정
2. 필요에 따라 모든 데이터를 디스크 캐시를 통해 사용하고 싶은 경우 추가 설정 실시
// [주석 처리]
// main_webview.clearCache(true);
[IOS]
1. WKWebsiteDataStore.default().removeData 웹뷰 데이터 삭제 부분에서 디스크, 메모리 캐시는 제외 실시
// [원하는 캐시 데이터만 골라서 삭제]
let websiteDataTypes = NSSet(array:
[
//WKWebsiteDataTypeDiskCache, // [주석] 디스크 캐시
//WKWebsiteDataTypeMemoryCache, // [주석] 메모리 캐시
WKWebsiteDataTypeCookies, // 웹 쿠키,
WKWebsiteDataTypeOfflineWebApplicationCache, // 앱 캐시
WKWebsiteDataTypeWebSQLDatabases, // 웹 SQL 데이터 베이스
WKWebsiteDataTypeIndexedDBDatabases // 데이터 베이스 정보
//WKWebsiteDataTypeLocalStorage // [주석] 로컬 스토리지
//WKWebsiteDataTypeSessionStorage // [주석] 세션 스토리지
])
let date = NSDate(timeIntervalSince1970: 0)
WKWebsiteDataStore.default().removeData(ofTypes: websiteDataTypes as! Set, modifiedSince: date as Date, completionHandler:{
print("")
print("===============================")
print("[A_Main >> init_WebView() :: 웹뷰 초기 설정 값 정의 실시 및 웹뷰 로드 수행]")
print("-------------------------------")
print("type :: removeData")
print("-------------------------------")
print("로 직 :: 사전 캐시 및 세션 데이터 삭제 수행됨")
print("===============================")
print("")
})
[결과 화면]
반응형
'투케이2K 로직정리' 카테고리의 다른 글
Comments