Skipped 60 frames! The application may be doing too much work on its main thread
1189 단어 Android
Skipped 60 frames! The application may be doing too much work on its main thread
간단하면서도 직설적인 힌트입니다. 60 프레임을 건너뛰면 메인 라인에서 비교적 시간이 걸리는 조작을 할 수 있지만 이런 조작은 프로그램이 ANR에 도달할 정도에 이르지 않습니다.원인을 찾았으니 우리가 손을 댔다. 그래서 액티비티의 소모된 조작을 찾아 관련 최적화를 하기 시작했다. 큰 성과를 거두면 한 몫 챙길 수 있을 거라고 생각했지만 문제는 여전했다.이것은 난처하다. 분명히 최적화해야 할 최적화가 되었는데, 정말 백 번 생각해도 이해할 수 없다.그래서 Google에서 그 비밀을 발견했습니다. 원래 많은 사람들이 똑같이 최적화된 후에 큰 효과가 없었습니다. 그 이유는 activity의 코드 초기화 작업이 아니라 레이아웃 인터페이스의layout이 만들었기 때문입니다. 의심할 여지없이 모두가 인터페이스에서 많은 그림이나 큰 그림을 사용했기 때문입니다.더 나아가 인터페이스의 그리는 데 많은 시간이 걸렸다.
//imagview
기왕 문제를 찾은 이상 해결 방법은 간단하다. 다음과 같은 방법을 제시한다.
playDistImageView= (ImageView) findViewById(R.id.iv_play_dist);
Glide.with(this).load(R.drawable.play_disc).into(playDistImageView);
사고방식은 매우 간단하다. 바로layout 파일에 이 그림을 직접 설정하지 않고 코드에 넣고 설정하는 동시에 이미지 로드 프레임워크를 사용하여 더욱 최적화할 수 있다.네가 이것들을 다 하고 다시 앱을 켜면 인터페이스가 움직일 때 실처럼 매끄럽다는 것을 발견할 수 있을 것이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.