Android

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

안드로이드 앱에 동영상을 넣고 싶을 때, 보통 유투브를 가장 먼저 떠올린다.  유투브를 내 어플리케이션에 연결하는 대표적인 방법은 아래와 같다. 바로가기 유투브  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

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

Fragment의 onActivityResult로 결과 받기

안드로이드 어플리케이션은 컴포넌트로 구성된다. ActivityManager는 이름과 달리 (액티비티 사이가 아닌) 컴포넌트들 사이에 Intent 형태의 데이터를 주고 받을 수 있게 해준다. 특히, 액티비티 간 데이터를 주고 받을 때 용이하도록 액티비티는 startActivity(), startActivityForResult(), onActivityResult() 메소드를 제공한다. 이 메소드들은 프레그먼트에도 있는데, 여기서는 프레그먼트의 onActivityResult()에 대해 살펴보자. 결론부터 말하면, 프레그먼트의 onActivityResult()도 다른 액티비티에서 데이터를 받을 수 있다. 다른 특별한

Fragment의 onActivityResult로 결과 받기 더 읽기"

안드로이드 메모리 릭 분석

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

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