Admob을 포함한 광고 플랫폼은 개발자에게 용돈을 주는 고마운(?) 존재이다. 


물론 앱에 광고를 너무 많이 넣진 않고 미관을 해치지 않는 선에서만 추가한다.


처음부터 Admob을 추가해 앱을 개발하는 것을 고려했기 때문에 개발 초기에는 앱 실행 시 속도 차이를 크게 못느꼈다.


그러나 업데이트를 하면서 이런저런 기능을 추가하게 되면서 Admob이 실행 속도에 영향을 주기 시작했다.


참고로 앱의 실행 방식은 3가지가 존재한다.

Cold start, Hot start, Warm start


자세한 정보는 아래 링크에 자세히 서술되어 있다.

https://developer.android.com/topic/performance/vitals/launch-time


여기서 실행 속도가 느리다는 것은 Cold start이다.


Cold start 속도가 3초 후반대에서 4초 대로 늘면서 원인을 찾아본 결과 Admob이었다.


이러한 문제를 해결하기 위해서 검색한 결과


1. https://stackoverflow.com/a/31636336


위 링크에서 제공하는 다양한 방법이 있다.


2. https://stackoverflow.com/a/19446364


위 링크는 1번 링크의 첫번째 링크의 내용이다.


Handler를 사용하여 광고를 불러오는 소스 코드를 1초 딜레이를 주고 실행한다.


정말 단순히 Handler를 추가했을 뿐인데 2초에서 3초 사이로 실행 시간을 줄일 수 있었다.


by JamesY 2018. 7. 27. 23:52