본문 바로가기
안드로이드

[WindowManager] 윈도우 매니저 개선하기 5 실험 결과

by keel_im 2021. 1. 7.
반응형

2021/01/04 - [안드로이드] - [WindowManger] 윈도우 매니저 개선하기 4 빌드와 포팅

 

[WindowManger] 윈도우 매니저 개선하기 4 빌드와 포팅

2021/01/02 - [안드로이드] - [WindowManager] 윈도우 매니저 개선하기 3 (실험 앱 만들기) Firebase Storage [WindowManager] 윈도우 매니저 개선하기 3 (실험 앱 만들기) Firebase Storage 이전글 2020/12/29 -..

keelim.tistory.com

블로그 활동 중인데 벌써 170명을 방문해주신 것에 감사드립니다. 정말 모자란 글인데 읽어주시는 것이 정말 힘이 되는 것 같습니다.

 

HashMap testing 결과

Android Application 을 통하여 WindowMangerHashMap 성능 측정 결과 확인

overview

  1. WindowManagerService addWindow -> HashMap version 으로 변경한 이미지와 pure AOSP 이미지 비교
  2. 같은 어플리케이션을 종합을 하고 이 데이터 값을 Serverlesss 서비스인 Google firebase storage csv 파일을 업로드
  3. 데이터 결과 값 확인

어플리케이션 로직

 애플리케이션 1
애플리케이션 2

애플리케이션 로직을 작성할 때 WindowManager 를 사용하는 ViewComponenet 가 뭐가 있나 확인을 해보았던 것 같습니다.  제가 사용한 비즈니스 로직을 기준으로 아래와 같은 그림으로 나타내었습니다. 

AlertDialog

위 그림은 저희가 진행한 비즈니스 로직을 진행한 그림으로 다소 생략이 많이 되어 있습니다. 

테스트는 AlertDialog 를 show, dismiss 를 10000 회 반복 4세트를 진행한다.10000회 반복 이상으로 넘어갈 경우 MemoryExceptio n 이 발생함으로 세트의 수를 늘린다.

샘플 다이알로그 
애플리케이션 결과 화면

데이터 값은 Android Widget 중 하나인 Recycler View를 사용을 하였습니다. Adapter 를 정의를 하여 만들어지느 test 값이 올바르게 적용될 수 있도록 한다.

FireStorage 를 통한 데이터 관리

위 결과는 Firebase Storage 를 통해서 앞장에서 언급한 애플리케이션을 만들고 실험 결과 데이터를 저장하고 관리하였습니다. 

2021/01/02 - [안드로이드] - [WindowManager] 윈도우 매니저 개선하기 3 (실험 앱 만들기) Firebase Storage

 

[WindowManager] 윈도우 매니저 개선하기 3 (실험 앱 만들기) Firebase Storage

이전글 2020/12/29 - [안드로이드] - [WindowManger] 윈도우 매니저 개선하기 2 (환경 구성하기) 포팅) 싸이클을 반복하여 프로젝트를 진행하였습니" data-og-host="keelim.tistory.com" data-og-source-url="http..

keelim.tistory.com

실험 결과 (WindowManager AlertDialog 성능 측정)

실험 결과가 엄청 재미있다. 유효한 결과이지만 유효한 결과인가를 의심하게 하는(?) 왜 내가 짠 코드가 효율성이 있는가.?   

사실 위 실험 결과는 엄청 정직하다고 생각을 한다. HashMap 을 사용했기 때문에 초기 오버헤드를 제외하고는 주황색 OS image 가 훨씬 결과가 좋은 것을 확인 할 수 있다. 

또한, 위 프로젝트 결과는 각각의 로그를 뱉는 함수 들을 if-else 중첩이 아닌 HashMap 을 사용을 하였기 때문에 위와 같은 재밌는 결과가 나온 것 같다. 

오늘까지 윈도우 매니저 개선에 대한 프로젝트를 설명하는 포스팅을 작성을 하였습니다. 했던 프로젝트를 정리한거라 개인적으로 재미있었던 시간이였습니다. 

 

문제 발생

🧶 모든 문서는 수정될 수 있습니다.

 

반응형

댓글