안드로이드

안드로이드 잡스케줄러 분석

지난 글에서 안드로이드 잡스케줄러를 이용해 백그라운드 작업을 처리하는 잡서비스 생성 시 주의할 점을 살펴보았다. 잡스케줄러 기능은 L(API21)부터 추가되었지만, M(API23)까지는 거의 사용되지 않았다. 안드로이드에서 백그라운드 작업에 애용되던 CONNECTIVITY_ACTION 수신 브로드캐스트를 targetSdk 24(N)부터 사용할 수 없도록 제한하고, 대안으로 잡스케줄을 제안하면서 많이 사용되고 있다. 이번 글에서는 잡스케줄러가 단말에서 어떻게 동작하는지 O OS 기반 테스트를 통해 살펴보자. O OS를 […]

안드로이드 잡스케줄러 분석 더 읽기"

안드로이드 앱과 유투브 연결하기

안드로이드 앱에 동영상을 넣고 싶을 때, 보통 유투브를 가장 먼저 떠올린다.  유투브를 내 어플리케이션에 연결하는 대표적인 방법은 아래와 같다. 바로가기 유투브  IFrame Player 유투브 Android Player 구현 방법에 대한 좋은 글들이 인터넷에 많이 있으므로, 여기서는 3가지 방법의 차이점에 대해 살펴본다. 바로가기 영상을 내 앱에서 재생하지 않고, 유투브 공식 앱이나 사이트로 뛰는 방법이다.  대부분의 안드로이드 단말에는

안드로이드 앱과 유투브 연결하기 더 읽기"

안드로이드 서비스 상태별 바인딩 결과 테스트

안드로이드에서 작업 시간이 오래 걸리는 작업은 서비스를 사용하도록 권장한다. 그리고, 다른 컴포넌트는 이 서비스와 데이터를 지속적으로 주고받기 위해 바인딩 할 수 있다. 서비스 바인딩에 대해서는 이미 많은 글이 있으므로 생략하고, 여기서는 서비스의 상태(서비스의 위치, 이름, 반환 값 등)에 따라 메소드들이 호출되는지 여부와 어떤 값을 반환하거나 전달 받는지 정리한다. 참고로, 테스트는 N O/S에서 진행했다. 각 항목을

안드로이드 서비스 상태별 바인딩 결과 테스트 더 읽기"

액티비티의 윈도우 생성/삭제 시점 확인하기

어플리케이션 개발 수준에서 윈도우(Window)에 신경 쓰는 경우는 별로 없다. 특별한 처리 없이도 액티비티가 기본적으로 윈도우를 생성한 후, setContentView() 메소드 등을 통해 전달된 레이아웃을 그 위에 그려주기 때문이다. 하지만, 간혹 윈도우가 잘 생성/삭제 되는지 궁금하다면 아래와 같은 로그로 참조할 수 있다. 12-14 19:09:29.844 system_process V/WindowManager: Relayout Window{2492035d0 u0 me.sunphiz.android.test.window/me.sunphiz.android.test.window.activity.MainActivity}: viewVisibility=0 req=1080×2004 WM.LayoutParams{(0,0)(fillxfill) sim=#120 ty=1 fl=#81810100 pfl=0x20000

액티비티의 윈도우 생성/삭제 시점 확인하기 더 읽기"

안드로이드 메모리 릭 분석

안드로이드의 메모리 릭(Memory leak)에 대해 정리합니다. 자세히 설명하고자 하였으나, 주제에 집중하는 과정에서 부가적인 부분의 설명은 모자랄 수 있습니다. 제가 도움을 받았던 좋은 글들을 문서의 하단에 연결해두었으니, 함께 읽으신다면 도움이 될 것 같습니다. 개인적으로 메모리 릭보다 메모리 누수가 적당한 단어라고 생각하지만, 더 많이 사용하는 릭으로 표현합니다. 메모리 릭(Memory leak)이란? 어플리케이션은 동작을 위해 메모리가 필요합니다. 어플리케이션이 사용이

안드로이드 메모리 릭 분석 더 읽기"