[Android] ANR

김상우·2021년 9월 28일
0

출처 : https://developer.android.com/training/articles/perf-anr#anr

ANR 이란?

  • Application Not Responding : 애플리케이션이 응답하지 않습니다.

  • ANR 발생 원인
  1. 메인 스레드에 어떠한 I/O 명령으로 5초 이상 앱이 멈출 때
  2. BroadcastReceiver가 10초 이내로 리턴하지 않을 때

  • 예방법
    네트워크, DB등의 길게 실행될 가능성이 있는 작업은 Thread를 생성
    또는 유저에게 Loading Bar를 보여주어 작업 진행 과정을 안내한다.

  • 실제 Android Studio에서 Firebase의 Realtime Database를 불러오는 과정중에 데이터 반환값이 null이 나오는 현상이 발생했다.
    데이터를 받아오지 않은 채 데이터를 사용하는 코드를 작성했기 때문

    -> Handler를 이용해서 postdelayed를 준 뒤에 실행하도록 해서 해결

profile
안녕하세요, iOS 와 알고리즘에 대한 글을 씁니다.

0개의 댓글