안드로이드의 다크 모드

다크 모드를 쉽게 설명하면, 어두운 배경에 밝은 글씨로 화면을 구성하는 것을 가리킨다. 오랫동안 다양한 서비스(이클립스, 인텔리제이 등)나 운영체제(윈도우 10, Mac OS 등)가 단순하게는 월페이퍼 변경 수준에서 복잡하게는 색상 구성(theme 혹은 appearance로 주로 표현)변경까지 다양한 방법으로 지원해 왔다. 스마트폰에서는 안드로이드의 리소스 관리에 한정자 값(qualifier value)으로 ‘night/nonight’가 API8에 포함되면서 기능을 사용할 방법이 열렸다. 본격적으로 삼성 갤럭시 One UI의 주요 기능으로써 P OS(API28)부터 지원을 시작한 후, 안드로이드(Android 10, Q OS 혹은 API29)아이폰(iOS 13)도 공식 지원하고 있다.

다크 모드에 설명이나 구현 방법에 대한 자료는 이미 인터넷에 충분하므로 여기서는, 다크 모드 자체에 대한 설명보다 ‘내 앱에도 적용해야 할까?’, 적용한다면 ‘내 앱에는 적용을 어떻게 할까?’라는 질문에 함께 고민해 보자.

해야 할까?

내 앱에 적용을 할지 고민하기 위해, 다크 모드의 장점을 먼저 살펴 보자. 보통 아래처럼 3가지를 꼽는다. 자세한 설명이 궁금하다면 이 글을 참고하자.

  1. 눈의 피로 개선
  2. 화면의 수면 연장
  3. 배터리 절약

세 꼭지 모두 좋은 말이지만, 앱 본연의 기능과 직접적 연관이 없다. 다크 모드가 적용된 기능이 불완전한 앱을 사용자가 좋아할까? 그럴리 없을 것이다. 그러니, 다크모드 보다는 기능을 우선하자. 다크 모드를 적용하기로 결정했다면 일반 모드(다크 모드를 사용하지 않을 때) 만큼 자연스럽게 제대로 만들자.

어떻게 할까?

다크 모드를 적용 하기로 결심했는가? 그럼, 다크 모드 적용 방법과 적용 범위에 따라 아래 같이 5가지로 분류해보자.

  • 강제 설정 기능 사용하기
    안드로이드 10은 어두운 테마 강제 설정 기능을 제공한다. 그러므로, 사용자의 핸드폰에 안드로이드 10이 설치되어 있다면 쉽게 다크 모드를 적용할 수 있다. 다만, 무엇이든 그렇듯이 알아서 되는 것이 내 입맛에 꼭 맞을리 없다. 안드로이드의 기능이니 꾸준히 나아지겠지만, 완벽을 기대하긴 어려울 것이다. 더 나은 다크 모드를 원한다면 테마와 스타일을 곁들이거나, 강제 설정 기능을 아예 활성화 하지 않고 다크 모드를 적용하길 권장한다.
    방법은 공식 가이드를 참고하자.
  • 적용하지 않기
    색상 구성이 서비스의 아이덴티티와 직결되는 경우라면, 전략적으로 적용하지 않을 수 있다.
    페이스북 앱이 검은색 바탕에 파란색 따봉을 띄울 때, 사용자가 어떻게 느낄지 상상이 잘 안된다. 또 백신처럼 기능에 치중하는 것이 미덕인 서비스라면, 사용자 요구가 커질 때 적용하는 것도 좋겠다.
  • 느낌만 살리기
    핸드폰이 다크 모드인 상태에서 실행 시, ‘로딩 중’ 같은 초기 화면에만 적용할 수 있다.
    슬랙(Slack)과 같은 앱이 한동안 이 형태로 다크 모드를 지원했다.
  • 중요 페이지만 적용하기
    메인 화면이나, 사용자가 주로 머무는 화면에 다크 모드를 적용하고 나머지는 그대로 둘 수 있다.
    구글 뉴스는 언론사와 같은 뉴스 제공자로부터 컨텐츠를 받아 큐레이션만 하고, 뉴스 선택 시 컨텐츠를 연결하는 방식으로 동작했다. 서비스 구조 상 컨텐츠 제어가 어렵다면 뉴스 목록 페이지만 다크 모드를 적용할 수 있다.
  • 완벽하게 적용하기
    장기적으로 대부분의 앱이 이렇게 할 것이다. 앞서 예로 든 슬랙이나 구글 뉴스도 과도기를 거쳐 현재는 완벽한 다크 모드를 지원한다. 다만, 이상적인 만큼 생각보다 품이 많이 든다.
    제조사 앱은 완벽하게 적용되어 있으며, 메이저 앱들 중 다수도 이미 완벽하게 지원하고 있다.
    적용 방법은 공식 문서를 참고하자.

그 밖에

  • 다크 모드를 지원하지 않는 낮은 OS가 설치된 휴대폰이라면, 다크 모드는 쓸 수 없다. 혹시, 삼성 휴대폰 사용자라면 갤럭시테마의 고대비테마를 통해 비슷한 경험과 장점을 누릴 수 있다.
  • 현재 Q OS의 안드로이드 OS 점유율은 2019년 5월 기준, 통계에 표시하지 않을 정도로 낮다. 강제 설정 기능만으로 다크 모드를 지원하면, 대부분의 사용자는 다크 모드를 경험할 수 없다.

참조