본문 바로가기

안드로이드

메모리 효율적인 코드

메모리 효율적인 코드 

1. 서비스를 아껴서 사용해라. 필요하지 않을때 서비스를 실행중으로 두지 말아라

 : intentservice를 이용해라(완료되면 종료)

2. 최적화된 데이터 컨테이너를 사용해라. 

    일반 해쉬맵보다 sparseArray가 더 효율적이다. 

3. 코드 추상화에 주의해라

   - 추상화에는 상당한 비용이 들어간다.(메모리맵핑에 더많은 시간과 메모리필요)

4. 직렬화된 데이터에 nano protobufs 사용해라

5. 메모리변동을 피해라. 

  -짧은 시간에 발생하는 많은 gc는 프레임시간을 잡아먹는다. 

   종종 메모리 변공으로 인해 많은 수의 gc가 일어날수있다. ex) for문안에 여러 임시 객체 생성 -> gc유도

6. 메모리 중심의 리소스 및 라이브러리 제거 

7. apk크기를 줄인다. 

8. 외부라이브러리를 주의한다.