문자 권한 1개 → 0개, 하루 만에.
권한이 빠진 뒤 남은 문제는 읽어 온 글에서 무엇을 버리나. 쿠폰 문자는 이름보다 안내가 훨씬 김.
개발 과정
- 문제
- 쿠폰은 문자로 옴. 문자를 읽어 자동으로 잡고 받은 편지함도 훑음
- 한 것
- 은행 앱이 문자 권한을 문제 삼아 권한과 코드를 통째로 삭제
- 결과
- 공유 · 복사 · 그림 셋만. 손이 한 번 더 가지만 권한 없음
- 다음이라면
- 권한이 필요한 기능은 「그게 없으면 어떻게 되나」 를 먼저 그려 볼 것
- 문제
- 가게 반경에 들어오면 알리게 했더니 지하철 · 버스로 지나가기만 해도 울림
- 한 것
- 머무름(DWELL)으로 바꿔 3분 넘게 있을 때만, 집 · 회사 둘레 제외
- 결과
- 출퇴근길 무알림. 카카오 로컬 업종 이름으로 가짜 매장도 거름 — 「트레이더스」 검색에 「트레이더스FX PC카페」 가 딸려 옴
- 문제
- 카드가 글자 넉 줄이라 어느 쿠폰인지 훑어서 안 보임
- 한 것
- 실제 크기(360dp)로 다섯 안을 그려 놓고 선택
- 결과
- 남은 날을 「모레까지」 처럼 말로. 뜻 없던 「번호 있음」 제거
- 문제
- 브랜드를 색 동그라미로 세웠더니 색만으로는 어느 가게인지 안 붙음
- 한 것
- 기프티콘 브랜드 수가 한정적이라 로고를 미리 넣어 두기로, 왼쪽 색 띠 제거
- 결과
- 48dp 자리에 로고만. 없는 곳은 업종 아이콘
- 문제
- 카드 이름 자리에 「기프티쇼 선물이 도착했어요!」 · 「※ 쿠폰 재발송은 평일 10시~18시에만 가능하며」
- 한 것
- 안내로 보이는 줄을 이름 후보에서 빼고, 쓸 만한 줄이 없으면 이름을 비움
- 결과
- 빈 자리에 가게. 금액은 이름 자리에 올려 「5,000원 할인」 이 먼저 읽힘
- 문제
- 「원본 보기」 로 다른 화면에 넘어가야 그림이 보임
- 한 것
- 계산대 화면 바코드 아래에 그림이면 그림, 문자면 문자 그대로
- 결과
- 「이거 그 쿠폰 맞나」 를 한 화면에서 확인. 문자는 글자를 짚어 복사 가능
의사결정 방식
말이 아니라 실제 크기로 그려 놓고 선택. 카드는 360dp 폭이 진짜 크기 — 그 폭에 안을 나란히 세우면 무엇이 먼저 읽히는지 보임. 아래 셋이 그 페이지.
브랜드 로고 모으는 법
로고 34개는 손이 아니라 스크립트로 수집. 순서가 있음.
공식 사이트
`apple-touch-icon` · `og:image` → 구글 파비콘(256px) → 덕덕고. 마흔셋을 돌려 서른 확보.
크기 검사를 통과했는데 내용이 틀릴 때
그중 다섯. 이마트 · 노브랜드는 SSG 앱 아이콘(`e WEB`) — `emart.ssg.com` 을 SSG.COM 이 운영해 파비콘이 SSG 것, `emart.com` 은 아이콘 선언 없음. 무신사는 빈 그림, 메가박스는 검은 띠. 크기로는 못 거름, 눈으로 확인.
공식 사이트에서 못 받을 때
위키미디어 공용 SVG. `Special:FilePath/<파일>?width=512` 로 받으면 투명 배경 PNG — 이마트 · 세븐일레븐 · CGV · 맥도날드 · 버거킹 · 도미노피자 · 코스트코 등 열둘을 이렇게.
로고가 가로로 길 때
48dp 네모에선 실오라기. 심벌만 잘라 냄 — 신세계는 꽃 심벌 + SHINSEGAE 글자라 5:1, 꽃만 떼면 정사각. 그래도 안 되는 것(롯데마트 8.4:1)은 업종 아이콘.
흰 바탕이 딸려 올 때
테두리에서 흘려 채워 이어진 흰색만 삭제. CU 말풍선 안쪽처럼 갇힌 흰색은 유지, 교촌 주황 판은 그대로. 밤엔 어두운 로고가 카드에 묻혀 그때만 흰 판.
배운 점
뽑는 것보다 버리는 게 일. 이름 · 기한 · 번호를 찾는 규칙은 반나절, 안내 · 인사 · 약관을 이름 자리에서 걷어내는 데 그보다 오래. 「무엇이 이름인가」 보다 「무엇이 이름이 아닌가」 를 적는 쪽이 효과적.
원본을 안 들고 있으면 규칙을 고쳐도 옛것은 그대로. 처음엔 뽑은 값만 저장 → 규칙 수정 뒤 이미 넣은 쿠폰은 옛 규칙 그대로, 되돌릴 방법 없음. 지금은 받은 글과 그림을 같이 두고 「다시 읽기」 로 재추출.
지오펜스 PendingIntent 는 MUTABLE 필수. addGeofences 가 DEVELOPER_ERROR(10) 로 실패 — 코드만 보면 권한 ·
설정 문제로 오인. 구글 위치 서비스가 「어느 울타리가 어떻게 걸렸는지」 를 그 인텐트에 얹어 보내므로
FLAG_IMMUTABLE 이면 얹을 자리가 없음.
