본문 바로가기

Coding, Testing, Challenge/토스 미니앱

안드로이드에서 안 보이는 것들: 국기 이모지와 마이너스 기호

안드로이드에서 안 보이는 것

세계 시차를 보여 주는 앱을 만들면서 도시마다 국기를 붙였습니다. 보기 좋았습니다.

스토어에 올릴 스크린샷을 뽑아 보니 이렇게 나왔습니다.

□□  뉴욕      미국 · □13시간      23:00
□□  런던      영국 · □8시간       04:00
□□  도쿄      일본 · 시차 없음     12:00

국기가 빈 네모입니다. 그리고 마이너스 기호도요.

국기 이모지를 두 글자 코드 배지로 바꿨습니다
국기 이모지를 두 글자 코드 배지로 바꿨습니다

국기 이모지는 안드로이드에서 안 보입니다

국기 이모지는 두 글자를 합쳐 만듭니다. 🇰🇷 는 실제로는 KR 을 나타내는 특수 문자 두 개고, 폰트가 그걸 하나의 그림으로 합쳐 줘야 국기가 됩니다.

아이폰은 합쳐 줍니다. 안드로이드는 대부분 안 합쳐 줍니다.

그래서 안드로이드에서는 빈 네모 두 개, 또는 KR 같은 두 글자로 보입니다. 폰마다 조금씩 다르게 보이는 정도가 아니라 아예 다른 것이 보입니다.

국내 사용자 상당수가 안드로이드입니다. 국기 이모지는 쓰지 않는 게 안전합니다.

대신 쓴 것

두 글자 국가 코드를 작은 배지로 그렸습니다.

US   뉴욕        미국 · -13시간
GB   런던        영국 · -8시간 · 서머타임
JP   도쿄        일본 · 시차 없음

화려하진 않지만 모든 기기에서 같게 보입니다.

마이너스 기호도 조심해야 합니다

시차를 표시하면서 진짜 마이너스 기호 (U+2212)를 썼습니다. 하이픈 - 보다 보기 좋으니까요.

이것도 빈 네모가 됐습니다. 글꼴에 그 글자가 없으면 그렇습니다.

그냥 하이픈으로 바꿨습니다. 보기 좋은 것보다 보이는 게 낫습니다.

같은 이유로 조심할 것들

쓰면 위험대신
국기 이모지 🇰🇷 🇺🇸두 글자 코드 배지
마이너스 −, 대시 —하이픈 -
최신 이모지오래된 이모지 또는 아이콘
이모지 조합 (가족·직업·피부색)단일 이모지

이모지는 글자라 기기의 글꼴에 없으면 안 보입니다. 그림 파일이 아닙니다.

어떻게 발견했나

기기에서 앱을 열어 본 게 아니라 스토어 스크린샷을 만들다가 봤습니다.

스크린샷을 코드로 생성하고 있었는데, 그 코드는 윈도우 글꼴(맑은 고딕)을 씁니다. 맑은 고딕에도 국기 이모지가 없어서 똑같이 빈 네모가 나왔습니다.

우연이었지만 결과적으로는 가장 싼 검증이었습니다. 실제 기기 여러 대로 확인하는 것보다 빨랐고, 스토어에 올라가기 전에 잡혔습니다.

가져갈 것

  • 국기 이모지를 쓰지 마세요. 안드로이드에서 안 보입니다.
  • 특수 기호도 기본 글꼴에 있는 것만 쓰세요.
  • 이모지는 그림이 아니라 글자입니다. 없으면 안 그려집니다.
  • 화면을 다른 환경에서 한 번 그려 보는 것만으로 이런 게 드러납니다.

만든 것들