최근 수정 시각 : 2024-12-17 23:46:02

Android/최적화

안드로이드 최적화에서 넘어옴
파일:상위 문서 아이콘.svg   상위 문서: Android
1. 개요2. 상세
2.1. ADB 혹은 루팅이 필요한 방식2.2. 가벼운 앱으로 교체하기
3. 공통 최적화4. 비권장 최적화 방식

1. 개요

Android 기기의 최적화에 대하여 서술한 문서.

구형 스마트폰, 저가 스마트폰을 쓰다 보면 지속적인 업데이트로 앱들이 무거워져서 점점 느려진다. 특히 RAM 용량이 한정된 경우가 많기 때문에 교체를 고려하게 된다. 하지만 구형 스마트폰이라도 공기계 상태로 서브폰으로 사용할 수 있다. 최적화를 시간 들여 진행해주고 꼭 사용할 앱만 남긴다면 구형 스마트폰이라도 생각보다 쓸만하다는 것을 느낄 수 있다.

최신 스마트폰도 RAM이 무제한이 아니므로, 서브폰만큼 고도의 최적화를 하기는 어렵겠으나 최적화를 해주면 도움이 된다. 특히 RAM Plus가 필요할 정도로 램이 모자란다면 최적화를 하는 편이 좋다. 램플러스는 결국 램을 따라가지는 못하기 때문이다.

2. 상세

  • 인터넷 등 데이터를 사용하는 서비스가 느리다면 연결 - 데이터 사용에서 데이터 제한, 데이터 세이버 등을 통해 특정 앱이 불필요하게 백그라운드에서 데이터를 사용하지 못하게 막을 수 있다.
  • 출시된지 오래 지나 업데이트가 더이상 되지 않는다면 업데이트 관련 옵션을 끄고 업데이트 관련 앱을 삭제하자. 일반적인 방법으로 지워지지 않는 앱은 99% ADB를 통해 지울 수 있다.
  • 개발자 모드 등에서 불필요한 애니메이션 효과를 끄자. 특히 애니메이션 효과의 품질이 떨어지는 삼성 갤럭시에서 큰 효과를 볼 수 있다.
  • 백그라운드 제한 옵션을 최대한 활용하자. 애플리케이션 정보에서 '배터리' > '제한', '모바일 데이터' > '백그라운드 데이터 사용 허용 끄기', 등의 방법이 있는데 안드로이드 버전마다 방식이 조금씩 다르므로 알아보자.

2.1. ADB 혹은 루팅이 필요한 방식

  • ADB로 루팅 없이 사용하지 않는 기본 앱, 통신사 앱 등의 블로트웨어를 지울 수 있으며 명령어를 다시 입력하거나 공장 초기화를 할 경우 되살릴 수 있다. 지워지지 않는 기본 사용자 앱은 ADB로 마음껏 지우고, 그래도 램이 모자란다면 선발대 글을 참고해 시스템 앱도 지우자.[1]
  • 루팅을 하면 ADB로 오버클럭도 가능한데, 진정한 의미의 오버클럭은 안드로이드 AP 설계상 불가능하나 전력 효율성 및 발열 측면을 고려한 성능 제한을 완전히 해제할 수 있다. 최대 클럭을 내내 돌리면 배터리가 녹기 때문에 최저 클럭을 올려주면 빨라진 것을 체감할 수 있다. ADB를 통한 오버클럭을 대신 해주는 앱도 존재한다.
  • 루팅을 해서 가벼운 커스텀 펌웨어를 설치하면 스마트폰을 좀 더 쾌적하게 사용할 수 있다.

2.2. 가벼운 앱으로 교체하기

사용 중이던 앱을 더 가벼운 앱으로 교체해도 도움이 된다. 옵션 > 개발자 모드 > 실행 중인 서비스를 보면 앱들이 얼마나 램을 차지하는지 확인할 수 있다. 특히 램에 항상 상주하는 앱, 램을 많이 차지하는 앱, 없으면 곤란한 앱일수록 교체할 필요성이 커진다. 기본 앱의 경우 실행하지 않아도 램에 상주하는 경우가 많은데, 완전히 지우려면 ADB를 활용해야 한다.
  • 삼성 키보드, Gboard, 네이버 스마트보드 등의 흔히 쓰이는 가상 키보드 앱은 램을 200mb 이상 차지하는 은근히 무거운 앱이다. 또한 가상 키보드 앱은 램에 항상 상주하기 때문에 더더욱 부하가 크다. 김민겸키보드, 시메지 키보드, 피팅키보드, 가나다 키보드 등 한국어를 지원하면서 램을 50mb 이하로 차지하는 가벼운 키보드 앱을 사용하자.
  • 갤럭시 기본 홈 런처 OneUI는 버전이 올라갈수록 무거워져가며 홈 런처는 특성상 램에 항상 상주하고 있다. Lawnchair, Lightning Launcher 등의 가벼운 홈 런처 앱으로 대체해보자.
  • 구글 어시스턴트, Google Lens 등의 안드로이드 기본 구글 검색 앱을 구글 고로 교체하거나, 브라우저에서 구글 웹사이트에 접속해 검색하는 방식 외에는 구글 검색 기능을 사용하지 않는다면 아예 미설치하자.
  • 구글 크롬, 삼성 인터넷 등의 웹 브라우저를 Via Browser 등 가벼우며 종료하면 백그라운드에서 램을 차지하지 않는 브라우저로 대체하자.
  • 유튜브가 램을 많이 점유한다면 NewPipe처럼 가벼운 유튜브 대체 애플리케이션을 활용하자.
  • 뮤직 플레이어뮤직콜렛처럼 램 점유율이 낮고, 지원하는 확장자가 많으며, 무료인 앱을 사용하자.
  • Google Play 스토어는 애플리케이션 업데이트에 필수적인 앱이지만, 램에 상주하며 램을 많이 차지하여 구형 스마트폰에서는 이조차 짐일 수도 있다. 사용 중지가 가능한 기종에서는 평소에는 사용 중지를 해놓고 필요할 때만 켤 수 있으며, 혹은 별도의 APK 스토어를 활용해 APK를 설치하거나 내려받을 수 있다.
  • Google Play 서비스는 일반적으로 필수적인 앱이지만, 램에 상주하며 램을 많이 차지하여 구형 스마트폰에서는 이조차 짐일 수도 있다. MicroG 프로젝트의 GmsCore는 구글 플레이 서비스가 설치되지 않은 스마트 기기에서 구글 플레이 서비스의 핵심 기능을 제공하는 앱이지만, 구글 플레이 서비스는 보통 ADB 삭제가 막혀있으므로 GmsCore를 설치할 수 없다.

3. 공통 최적화

안드로이드뿐만 아니라 iOS 등 스마트기기에 전반적으로 적용할 수 있는 최적화 방법.
  • 꼭 필요하지 않은 설정과 앱은 최대한 꺼버리거나 삭제하자.
  • 최적화 하기 전에 공장 초기화를 하면 좋다. 없으면 안 되는 파일은 SD카드 등에 백업하자.
  • 배경화면 및 테마를 OLED 화면은 검은색, LCD 화면은 흰색으로 하고,[2] 실내에서는 밝기를 줄이자.
  • 와이파이, 블루투스, NFC는 안 쓸 땐 꺼두고, 서브폰구형폰위치도 꺼두고 비행기 모드를 켜면[3] 배터리의 소모율이 줄어든다.
  • 자주 쓰지 않는 앱은 서브폰에 몰아줘도 도움이 된다.

4. 비권장 최적화 방식

  • 안드로이드 4.0 이하가 아닌 이상 GPU 렌더링은 건드리지 말자.
  • CPU의 성능이 지극히 떨어지지 않는 이상 HW 오버레이 사용안함을 켜지 않는 게 좋다.
  • 4x MSAA는 계단 현상을 완화하는 옵션인데 이걸 켜면 더 많은 연산자원을 소모하므로 켜지 말자.
  • 로거 버퍼는 휴대폰에 오류가 생겼을 때 참고하기 위해, 휴대폰이 어떻게 작동했는지 기록하는 로그 크기의 상한선을 결정한다. 큰 영향은 없으나 최적화를 위해선 최소화하거나 꺼야 한다.
  • 갤럭시 앱 부스터볼트(Volt) - 앱 최적화 등 내부 데이터를 압축한 상태로 사용하는 JIT를 압축을 풀어둔 채로 사용하는 AOT로 전환하는 방식의 앱은 꼭 사용할 필요는 없다. JIT는 저장용량을 절약하는 대신 CPU, 배터리를 좀 더 소모하고, AOT는 저장용량을 절약하지 못하는 대신 CPU, 배터리를 적게 소모하므로 무엇을 고를지는 본인의 선택이다. 그리고 자주 사용하는 앱은 별도의 최적화 앱을 사용하지 않아도 자동으로 JIT에서 AOT로 전환된다.
  • 개발자 모드에서 '백그라운드 프로세스 수 제한', '활동 유지 안함'을 켜서 백그라운드 앱을 제한할 수 있지만 할 수 있는 걸 다 했는데도 여전히 불편할 때 최후의 수단으로 사용할 것을 권한다.


[1] 아무 시스템 앱이나 막 지우면 벽돌폰이 될 가능성이 높다. 물론 벽돌폰이 되더라도 커널, 하드웨어가 손상되지 않는 한 리커버리 모드로 공장초기화가 가능하지만 내장 메모리의 자료가 증발한다.[2] OLED는 화소마다 각각 빛을 뿜기 때문에 어두울수록 전력 소모가 적고, LCD는 편광 원리로 흰색 백라이트의 일부 파장을 가려서 색을 만드는 원리이기 때문에 전력을 추가로 공급해야 검은색 화면을 만들 수 있다. 큰 차이는 아니나, LCD는 흰색이 전력 소모가 제일 적다.[3] 와이파이는 비행기 모드를 켠 상태에서도 연결 가능하다.

파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 문서의 r29에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
문서의 r29 (이전 역사)
문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

문서의 r (이전 역사)

분류