안드로이드

블루라이트 앱 예제

시력에 나쁜 영향을 주는 블루라이트를 감소시키는 앱이 구글 플레이 스토어에 많이 올라와 있다. 블루라이트를 감소시키는 원리는 간단한데, 파란색 표현량을 줄여서 눈에 부정적인 영향을 줄이는 것이다.물론, 색표현이 왜곡되지만 사진이나 영상을 보는 경우를 제외하면 사용에 문제가 없기 때문에 사람들이 많이 사용한다. 만드는 방법은 화면에 필터를 씌워 파란색 광원을 줄인다. WindowsManager를 이용해 이에 대한 샘플을 만들어 보았다. 자세한 […]

블루라이트 앱 예제 Read More »

안드로이드에서 adb shell로 apk 추출하기

adb shell을 이용한 apk 추출 가이드는 그림과 함께 친절히 작성된 글이 인터넷에 이미 많이 있습니다. 개인적 기록 차원에서 적어둡니다. 설치된 패키지를 찾습니다. >adb shell pm list packages | find “<패키지 이름이나 키워드>” apk의 정확한 패키지 이름 확인 후, apk 설치 위치를 확인합니다. >adb shell dumpsys package <패키지 이름> | find “path” apk 설치 위치를 찾은

안드로이드에서 adb shell로 apk 추출하기 Read More »

Cleartext HTTP traffic to not permitted

P OS부터 targetSdk를 28로 올리면 네트워크 통신 시 아래와 같은 에러를 만날 수 있다. 08-21 18:15:53.165 16809-16917/me.sunphiz.android.test W/System.err: java.io.IOException: Cleartext HTTP traffic to <your-domain> not permitted at com.android.okhttp.HttpHandler$CleartextURLFilter.checkURLPermitted(HttpHandler.java:115) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:458) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127) … IOException가 발생한 원인은 P OS부터 앱이 서버와 통신 시 TLS 기반하도록 기본값이 변경되었기 때문이다. 이해를 돕기 위해 여기서는 가장 많이 쓰이는 HTTP에

Cleartext HTTP traffic to not permitted Read More »

상황 별 호출되는 액티비티의 생명주기 메소드들

안드로이드의 앱을 구성하는 일명 4대 컴포넌트는 모두 생명주기가 있다. 이 중, 가장 복잡한 생명주기를 가진 컴포넌트가 액티비티다. 액티비티의 생명주기에 대한 글은 수없이 많다. 하지만, 그런 글들을 읽고 액티비티의 생명주기를 이해하더라도, 문제 분석 시 ‘그래서 지금 사용자가 뭘 했길래 이렇게 호출된거야?’라는 생각이 드는 경우가 있다. 그러므로, 여기서는 액티비티 생명주기 소개 대신에 상황 별로 호출되는 액티비티의 생명주기

상황 별 호출되는 액티비티의 생명주기 메소드들 Read More »