투케이2K

71. (TWOK/LOGIC) [Mobile] 모바일 os 및 app 앱 업데이트 및 특정 기간 (배치) 체크 웹뷰 쿠키 및 캐시 초기화 로직 - cache clear 본문

투케이2K 로직정리

71. (TWOK/LOGIC) [Mobile] 모바일 os 및 app 앱 업데이트 및 특정 기간 (배치) 체크 웹뷰 쿠키 및 캐시 초기화 로직 - cache clear

투케이2K 2024. 9. 23. 20:59
반응형

[로직 정리]

정리 로직 : Mobile

상태 : [Mobile] 모바일 os 및 app 앱 업데이트 및 특정 기간 (배치) 체크 웹뷰 쿠키 및 캐시 초기화 로직 - cache clear

 

[설 명]

 

// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------

- 언어 : Java , Swift

- 개발 툴 : Android Studio , Xcode

- 구현 기술 : Webview Cache Clear

- 앱 초기 실행 시 클래스 구분 : Ios 의 경우 AppDelegate / Android 의 경우 Application 클래스

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[로직 정리]
// --------------------------------------------------------------------------------------

1. 앱 초기 실행 시 프리퍼런스에 저장 된 OS 버전과 현재 앱 실행 OS 버전 비교 (OS 업데이트 체크)

  >> OS 버전 비교 후 데이터가 다를 경우 프리퍼런스 데이터 업데이트 수행 및 캐시 초기화 플래그 값 True 설정


2. 앱 초기 실행 시 프리퍼런스에 저장 된 App 빌드 버전과 현재 앱 실행 App 빌드 버전 비교 (앱 업데이트 여부 체크)

  >> App 빌드 버전 비교 후 데이터가 다를 경우 프리퍼런스 데이터 업데이트 수행 및 캐시 초기화 플래그 값 True 설정


3. 앱 초기 실행 시 주기적 앱 캐시 초기화 배치 로직을 위해 최근 앱 실행 시간 확인 및 특정 일 (ex : 하루 , 일주일 등) 이 지난 경우 확인 (앱 캐시 초기화 배치 로직)

  >> 특정 일 (ex : 하루, 일주일 등) 이 지난 경우 캐시 초기화 플래그 값 True 설정


4. 특정 액티비티 화면에서 웹뷰 로딩 수행 전 캐시 초기화 플래그 값 True , Flase 여부 체크 수행


5. 캐시 초기화 플래그 값이 True 인 경우 >> 기존에 저장된 쿠키 및 Http 캐시 , 웹뷰 캐시 등 초기화 수행 실시

  >> Flase 인 경우는 로딩 속도 딜레이 현상을 방지하기 위해 기존 쿠키 및 캐시 사용 웹뷰 로드 수행 실시


6. [추가] : 해당 쿠키 및 캐시 초기화 로직 적용 시 더 나아가 프리퍼런스 데이터 및 파일 데이터 초기화 로직도 포함 될 수 있음


7. [추가] : 웹 프론트 및 서버 배포 후 특정 js , css 파일에 적용 된 타임 스탬프 값을 읽어서 캐시 초기화가 필요한 경우 판단 및 추가로 캐시 초기화 로직을 적용할 수 있음

// --------------------------------------------------------------------------------------







// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------

[안드로이드 캐시 초기화]

https://blog.naver.com/kkh0977/222618482491?trackingCode=blog_bloghome_searchlist

https://blog.naver.com/kkh0977/223246359228?trackingCode=blog_bloghome_searchlist


[Ios 캐시 초기화]

https://blog.naver.com/kkh0977/222618485165?trackingCode=blog_bloghome_searchlist

https://blog.naver.com/kkh0977/222638140758?trackingCode=blog_bloghome_searchlist


[웹뷰 캐시 관련 이슈 참고]

https://blog.naver.com/kkh0977/223589022272?trackingCode=blog_bloghome_searchlist

// --------------------------------------------------------------------------------------

 

반응형
Comments