본문 바로가기
반응형

개발/안드로이드, 자바12

ANR 로그 분석 방법 - /data/anr/traces.txt ANR 로그 분석 방법 - /data/anr/traces.txt 1. ANR이란?Application Not Responding (ANR)의 줄임말로 어플리케이션이 일정시간 동안 응답이 없을 경우 발생하는 현상을 말합니다.무한루프가 돌거나 UI 쓰레드에서 오래 걸리는 작업을 할 경우 발생하는 다이얼로그가 바로 ANR dialog입니다.ANR이 발생하면 안드로이드 파일 시스템에 data/anr/ 위치에 traces.txt라는 ANR발생 시점의 프로세스 상태에 관한 로그가 기록됩니다.이건 모든 안드로이드 폰 공통이지만 안타깝게도 루트권한에서만 접근이 가능합니다.보통은 synchronized가 걸려서 독점하고 있거나 혹은 생각없이 sleep을 처리해서 발생할 가능성이 큽니다.traces.txt에 held by.. 2018. 10. 15.
윈도우에서 Battery Historian 사용 윈도우에서 Battery Historian 사용해보기.롤리팝 이상부터 지원하는 앱 전력소모 분석툴인 Battery Historian 설치법에 대해 간략히 정리합니다. 뭐 다운 사이트에 설명이 잘 되어 있긴 한데 리눅스 기반으로 설명되어 있어서 경로가 조금 틀려서 (Ctrl+C,V가 그냥 안되서) 제 컴에 맞게 여기에 정리해봅니다. 이전버전은 그냥 파이썬으로 만들었는데 2.0부터는 Golang+Python으로 만들어져있더군요. 1. Golang을 설치한다 (https://golang.org/doc/install) 속편하게 설치파일(MSI) 방식으로 받으셔서 설치하세요. 2. Golang 설정을 한다. 그냥 설치파일로 설치하면 GOROOT랑 PATH만 설정됩니다.환경변수란에 GOPATH를 지정해줘야 합니다... 2018. 10. 12.
Android app의 memory 사용량 확인 Java에서는 명시적으로 Heap을 할당하고 해제하는 과정이 없지만, 그렇다고 해서 Memory를 아무런 제한 없이 사용할 수 있는 것은 아니다. 특히 제한된 RAM에서 동작하는 Android app을 작성할 때는 이 부분을 신경 써야 한다. 할당된 Heap 이상으로 Memory 할당을 하게 되면, Garbage collection이 일어나는데, App이 잠시 멈추는 현상이 발생한다. adb tool을 사용해서 다음과 같이, 전체 Package의 Memory 사용량을 확인할 수 있다.adb shell dumpsys meminfoApplications Memory Usage (kB): Uptime: 16492740 Realtime: 29717020 Total PSS by process: 108110 kB:.. 2016. 4. 5.
[안드로이드] This Android SDK requires Android Developer Toolkit version 23.0.0 This Android SDK requires Android Developer Toolkit version 23.0.0 이클립스를 실행하니.. 아래 에러가 떴다. This Android SDK requires Android Developer Toolkit version 23.0.0 or above Current version is 22.6.3.v201404151837-1123206 Please update ADT to the latest version. 생각해보면 안드로이드 4.4 SDK 를 업데이트 받았던게 문제의 요인인듯싶다. 그 이후엔 아래 에러 후 모든 APK Run 불가. The connection to adb is down, and a severe error has occured. You mu.. 2015. 2. 4.
[안드로이드-Linux] crash 덤프 분석 앱이 실행 중 크래쉬됐을 때는 크래쉬 덤프(crash dump)를 확인하면 대강의 원인을 파악할 수 있다. 이를 위해 ‘Addr2line’ 라는 툴을 사용한다. Addr2line 툴은 명령어 주소와 실행 이미지를 파일 이름, 함수 이름, 소스 라인 번호로 변환하는 유틸리티이다. NDK는 ‘arm-linux-androideabi-addr2line’ 라는 이름으로 해당 툴을 제공한다. 먼저 아래 그림과 같이 사용자 계정의 루트 디렉토리로 이동한 뒤 편집기로 .bash_profile 파일을 연다. 그리고 PATH 에 ‘arm-linux-androideabi-addr2line’ 툴이 있는 디렉토리를 다음과 같이 추가한다. export PATH=${PATH}:$NDK_ROOT/toolchains/arm-linux.. 2015. 1. 13.
안드로이드 app 실행시에 notification과 실행중 리스트에 보여주기 안드로이드 app을 실행할때 notification에서 실행 icon을 보여주고 실행중 리스트에 해당app의 상태와 text를 보여주는 코드Service에 아래처럼 코드를 추가하고, onStartCommand()에서 showNotification()를 호출해주면 된다. /** * Shows the notification message and icon in the notification bar. */private void showNotification() {int myID = 1234; //The intent to launch when the user clicks the expanded notificationIntent intent = new Intent(this, TravelLogger_MainActiv.. 2014. 6. 24.
반응형