전체 글 34

안드로이드 앱 프레임워크 학습(WindowManager) 1

안드로이드 그래픽스 프레임워크 학습 2 (tistory.com) 안드로이드 그래픽스 프레임워크 학습 2 안드로이드 그래픽스 프레임워크 학습 1 (tistory.com) 안드로이드 그래픽스 프레임워크 학습 1 이번에 이 글을 작성하게 되는 이유는 위의 Android 공식 홈페이지의 기술되어 있는 부분들에 대해 코 nyaang.tistory.com 위의 분석에서 SurfaceFlinger의 createLayer를 통해 SurfaceFlinger에 layer가 추가 되는 과정을 알아 봤었습니다 이번에는 그럼, createLayer를 해주는 부분이 어디인지를 한 번 알아보는 것이 핵심입니다 먼저, createLayer 시작점을 보기 전에 WindowManager라는 개념을 먼저 알아야 합니다 native 단의(..

안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 3

안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 2 (tistory.com) 안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 2 안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 1 (tistory.com) 안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 1 이번에 이 글을 작성하게 되는 이유는 위의 Android 공식 홈페이지의 기술되어 있는 nyaang.tistory.com 지난 번의 분석은 SurfaceFlinger의 createLayer와 역할에 대해서 봤는데 이번에 분석을 해볼 사항은, SurfaceFlinger의 sequence에 대해서 다시 한 번 알아보려고 합니다 이번에 알아볼 전체적인 sequence diagram입니다 사실 중요한 ..

안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 2

안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 1 (tistory.com) 안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 1 이번에 이 글을 작성하게 되는 이유는 위의 Android 공식 홈페이지의 기술되어 있는 부분들에 대해 코드 레벨에서 어떻게 동작이 되는지 확인 해보고 싶은 순수한 학구적인 욕구 때문입니다 Surface nyaang.tistory.com 지난 번의 분석은 queueBuffer를 해주는 여러 가지 중 하나를 확인을 해봤었습니다 이번에 분석을 해볼 사항은, SurfaceFlinger에 관해서 알아보려고 합니다 SurfaceFlinger는 layer단위로 관리를 하고 있습니다 사용되는 layer의 class diagram은 아래와 같습니다 그렇다면 이 la..

안드로이드 미디어 프레임워크(SurfaceFlinger) 학습 1

이번에 이 글을 작성하게 되는 이유는 위의 Android 공식 홈페이지의 기술되어 있는 부분들에 대해 코드 레벨에서 어떻게 동작이 되는지 확인 해보고 싶은 순수한 학구적인 욕구 때문입니다 SurfaceFlinger 및 WindowManager | Android 오픈소스 프로젝트 | Android Open Source Project SurfaceFlinger 및 WindowManager | Android 오픈소스 프로젝트 | Android Open Source Project SurfaceFlinger 및 WindowManager 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. SurfaceFlinger는 버퍼를 받아들이고 버퍼를 구성하며 버퍼를 디스플레이로 보냅니다. W so..

종만북 3단원 코딩과 디버깅 내용 정리

안녕하세요 개발자 도도 입니다 종만북 1회독 해보기 세 번째 시간입니다 ㅎㅎ 이번 시간에는 3단원 내용을 정리해볼까 합니다 시작해보겠습니다! 3단원의 내용도 마찬가지로 실질적인 알고리즘 해결이라기 보단 원론적에 가까운 내용이었습니다 좋은 코드를 짜기 위한 원칙 일반적으로 알고리즘 시험 혹은 대회들에서 사용 되는 코드들은 기존에 쓰던 여러 알고리즘 들의 복붙 형태 혹은 스파게티 코드라고 생각 할 수 있으나, 오히려 간결하고 숙련된 코드가 많다고 합니다 그런 스파게티 코드들이 결정적인 실수를 하게 만드는 요인이니 어쩌면 당연하다고도 할 수 있겠네요 현업에서도 마찬가지겠지만, 코딩 대회 혹은 시험을 대비한 상황에서도 좋은 코드를 짜는 건 필수 일 것입니다 1) 간결한 코드를 짜기 코드가 간결하면 할 수록 휴먼..