Android Studio 3.0: Android Profiler

WOJTEK KALICINSKI : Android Studio 30 메모리, CPU, 및 앱의 네트워크 요청 특성

이전에 발견 된 도구를 완전히 수정 한 것입니다 안드로이드 모니터 탭에서 Android Profiler로 이름이 변경되었습니다 API 26 (Android O 이상)로 프로파일 링하는 경우, 장치 또는 에뮬레이터를 사용하면 모든 설정이 완료됩니다 빌드와 관계없이 모든 APK를 프로파일 링 할 수 있습니다 그것으로 창조 된 체계

프로필러를 API 레벨이 낮은 장치에 연결하는 경우, 이 경고가 표시 될 수 있습니다 코드를 계측해야하기 때문에 구형 장치에서 프로파일 러를 최대한 활용하려면, Android Studio를 사용하여 앱을 제작하고 배포해야합니다 프로파일 러의 기본보기는 통합 된 타임 라인을 제공합니다 당신에게 CPU, 메모리, 및 네트워크를 실시간으로 모니터링 할 수 있습니다 상단에서 중요한 앱 이벤트를 볼 수도 있습니다

사용자 입력, 활동 상태 전이 및 장치 회전을 통해 아래 데이터에 대한 더 많은 컨텍스트를 제공합니다 세 차트 중 하나를 클릭하십시오 상세보기 중 하나로 이동합니다 먼저 CPU 프로파일 러를 확인해 봅시다 UI는 라이브 CPU 사용률 그래프를 표시하고 목록 앱의 모든 스레드와 해당 상태, 그들이 활동 중이거나 기다리고있을 때와 같은 I / O 용

실행 된 메소드의 자세한 추적을 얻을 수 있습니다 기록 버튼을 눌러 일정 기간 동안 추적 유형이 있습니다 샘플링 된 오버 헤드는 작지만 정확하지는 않지만, 아주 사형 집행을 놓칠 수도 있다는 의미입니다 단명 방법 Instrumented는 프로파일 러가 모든 방법을 기록하고 입력하고 종료합니다

Android O 이전 버전의 기기에는 얼마만큼의 제한이 있습니다 데이터를 기록 할 수 있습니다 따라서 인스트루먼트 된 트레이스 캡처 그 한계에 빨리 도달 할 것입니다 한도를 높이려면 또는 샘플링 속도를 변경하면 여기에있는 Edit Configuration 창에서하십시오 캡처가 끝나면 관심있는 스레드를 선택하십시오

Top Down 뷰는 메서드 트리와 해당 호출 수신자를 보여줍니다 동일한 메소드에 대한 추적 정보 집계 같은 콜 스택을 공유하며 화염 차트와 유사합니다 Bottom Up 탭에는 메소드 목록이 표시됩니다 메서드의 노드를 확장하면 호출자가 표시되는 호출 그래픽 표현을 볼 수 있습니다

콜 차트에서 시간을 보여줍니다 가로 축의 각 호출에서 보냈다 메모리 프로파일 러는 실시간 차트를 보여줍니다 귀하의 앱에서 사용 된 메모리 용량 자바, 네이티브, 그래픽 등과 같은 다양한 버킷에 적용 할 수 있습니다 가비지 수집 이벤트를 볼 수 있습니다

타임 라인에서 왼쪽 상단의 버튼을 사용하여 언제든지 힙을 덤프 할 수 있습니다 객체의 인스턴스 속성을 검사 할 수 있습니다 참조 탭을 사용하여 메모리 누수를 파악할 수 있습니다 모든 참조를 나열하여 검사 대상으로 추적에 매우 유용한 또 다른 기능이 있습니다 시간이 지남에 따른 메모리 사용 – 할당 추적

실행중인 장치에 대해 프로파일 링하는 경우 API 26 이상을 사용하면 타임 라인의 어느 부분이나 할당 및 할당 해제 된 모든 객체의 목록을 가져옵니다 그 기간 내에 전화를 포함하여 할당 스택 API 25 이하에서는 명시 적으로 다음을 사용하여 기록 할당 시작 및 중지 기록 버튼, CPU 방법과 비슷한 방법 추적 작업 또 다른 차이점은 API 버전이 낮을수록, 호출 스택은 기본적으로 16 프레임 깊이까지 제한됩니다 당신이 할 수있는 시스템 속성이 있습니다

일시적으로 사용하도록 앱을 실행하기 전에 설정 더 깊은 스택 추적 마지막으로 네트워크 프로필러를 살펴 보겠습니다 라디오 레이블이 붙은 선은 높은 수준의 개요를 보여줍니다 장치의 네트워킹 상태를 표시합니다 그것을보고 얼마나 자주 말할 수 있습니까? 장치가 라디오를 깨우고 있습니다

강력한 상태로 전환 할 수 있습니다 네트워크 요청을 올바르게 일괄 처리하고 배터리를 낭비합니다 생명 아래 차트는 실제 네트워크 연결 활동, 보내고받는 바이트를 포함하여 고급 프로파일 링이 켜질 때마다 또는 호환되는 API 26 장치에서 실행중인 경우, 어떤 시간 슬라이스라도 강조 할 수 있습니다

실제 HTTP를 포함하여 모든 네트워크 호출을 검사합니다 요청 및 응답 데이터와 통화 통화가 발생한 곳의 스택 이미지의 미리보기를 표시하고 구문을 활성화합니다 XML 및 JSON을 강조 표시합니다 Chrome의 DevTools 네트워크 이보기는 매우 익숙해 져야합니다

앱의 HTTP 서버 상호 작용을 디버깅하는 데 적합합니다 및 데이터 소비 현재 HTTP 호출 검사가 있습니다 표준 HttpURLConnection에 대해 활성화 됨 클래스와 OkHttp 클라이언트가 필요하지만 또한 이 API들 위에 구축 된 다른 라이브러리들과 함께 작업하십시오 이것이 새로운 세 가지 프로파일 러를위한 것입니다

Android Studio 30에서 첫 번째 버전을 출시합니다 새로운 기능을 계속 추가 할 예정입니다 성능을 디버깅하는 데 유용하게 사용되기를 바랍니다 문제가 있습니다

그리고보고 싶은 기능이 있다면, 이슈 트래커에 대해 알려주십시오 지켜봐 줘서 고마워 [음악 재생]