본문 바로가기
스마트폰

아이폰 백그라운드 작업이 실행 중에 웹뷰 문제가 발생하는 경우 해결방법 마크다운 형식으로 알려드립니다.

by dkanfk 2023. 5. 30.
            

아이폰 백그라운드 작업이 실행 중에 웹뷰 문제가 발생하는 경우 해결방법 마크다운 형식으로 알려드립니다.

문제 현상

  • 아이폰 백그라운드 작업이 실행 중인 상태에서 앱 내 웹뷰의 컨텐츠를 로딩하면, 로딩이 중지되거나 정상적으로 동작하지 않는 문제가 발생한다.

원인

  • 아이폰 백그라운드 작업이 실행 중이면, 시스템 자원을 최대한 확보하기 위해 백그라운드 작업의 우선순위가 높아진다.
  • 이로 인해 앱 내 웹뷰의 동작이 불안정해질 수 있다.

해결방법

  1. iOS 13 이상에서는 앱 내 백그라운드 작업을 위한 BGTaskScheduler를 사용한다.

  2. BGTaskScheduler를 사용하여 백그라운드 작업이 실행 중인지 확인한 후, 웹뷰 로딩을 실행한다.

  3. iOS 12 이하에서는 앱 내 백그라운드 작업을 위해 BGTask를 사용한다.

  4. BGTask를 사용하여 백그라운드 작업이 실행 중인지 확인한 후, 웹뷰 로딩을 실행한다.

  5. 웹뷰 로딩 중 발생하는 문제를 해결하기 위해 WebView Content Mode를 설정할 수 있다.

  6. WebView Content Mode를 설정하면, 웹뷰가 화면을 채우는 방식을 변경할 수 있다.

  7. 그 외에도 앱 내에서 웹뷰를 사용하는 경우에는, WKWebView를 사용하는 것이 권장된다.

  8. WKWebView는 iOS 8 이상에서 사용 가능하며, iOS 에서 제공하는 공식 웹뷰로서 더욱 안정적인 동작을 보장한다.

참고자료

댓글