iOS Widget의 컨셉에 대하여 (w/ Launcher App)
전화앱을 디자인하게되면 생각할 수 있는 아이디어 중 하나는 퀵다이얼이고, iOS8부터 도입된 위젯영역을 활용해보면 어떨까하고 확장되는 것이 자연스러운 기획자의 마인드맵이다. ‘이 기능을 하는 앱이 없을리가..’ 검색을 시작하였더니 몇 달전에 애플로부터 제거 영정당해서 되면서 유명해진 Launcher의 기사 가 보였다.
Launcher는 윈도우에서의 바로가기 아이콘들을 모아둔 것과 같은 기능을 하는 앱인데 misuse
라는 리젝사유가 정확히 어떤걸까하고 궁금해졌다. 이와 더불어 Launcher 이외에도 퀵다이얼위젯 기능이 있는 유사앱들이 전부 내려가 있던 상황이기 때문에, 푸시를 이용한 퀵다이얼은 되지만, 위젯을 이용한 퀵다이얼은 안되는 이유까지도.
우선, 도큐먼트를 보기 전에는 프라이버시이슈 때문이라고 추측했다. 푸시를 통해 앱을 실행시키는 것은 잠금화면을 풀어야만 하지만, 위젯은 잠금화면 상태에서도 어느정도 접근할 수 있으므로 마음대로 전화를 쓴다거나 보이스피싱에 남용된다거나 할 수 있기 때문이다. 프라이버시에 대한 문제도 있을 수 있겠지만, 단지 그것 뿐이었다면 misuse
라고 하지는 않았을 것 같은데!?
25. Extensions
25.1 Apps hosting extensions must comply with the App Extension Programming Guide.
용어가 다르다보니 App extension과 Widget은 독립적인 기능이라고 생각했지만, Today 영역 자체는 App extension의 한 종류일 뿐이다.
App extension Programming Guide에서 설명한 위의 표를 보고나서야 새삼스럽게 인지가 되었는데, Widget 영역의 이름이 오늘Today
라고 되어있더라는.
다음은 개발문서에 설명되어 있는 위젯의 개념이다.
Today view에서의 App extensions은 위젯(Widget)이라고 불린다. 위젯은 지금 중요한 정보에 대해 빨리 접근할 수 있도록 제공한다. 예를 들어, 사용자는 현재 주가를 확인하거나, 날씨를 확인하거나, 오늘의 일정을 보거나, 할일을 완료했다고 체크하기위해 Today view를 연다.
(개발을 시작하기전에) Today extension이 당신이 제공하려는 기능에 적절한지 확실히 해야한다. 최고의 위젯은 사용자에게 빠른 업데이트를 제공하거나 매우 간단한 작업을 하는 것이다. 만약 개발하고싶은 App extension이 복잡한 단계의 일을 해야하거나 컨텐츠 업로드/다운로드 같은 오래걸리는 작업을 하게된다면, Today extension은 옳은 선택이 아니다.
발췌부분 이외에서도 언급한 부분까지보면,
- 습관적으로 보고 닫을 수 있을 수준의 정보만 제공할 것.
- 간단히 확인하거나 체크할 수 있을 정도로 심플한 기능을 제공할 것
- 키보드는 허락되지 않으므로 입력/수정같은 기능은 꿈도 꾸지 말 것(앱에서 제공해야함)
- 메모리 관리를 잘 할 것. 그렇지 않으면 시스템이 앱을 종료시킬 수 있음.(==위젯이 갱신되지 않을 수 있는 상태)
- 스크롤하게 하지 말 것
정도가 Today App Extension의 (리뷰)가이드라인 정도가 될 것 같다. 전반적으로 사용자가 수시로 내려서 본다
는 UX를 기준으로 사용자를 생각하게 하지 않는 선에서 기능하는 앱들만 승인하고 있는 것 같다.
10. User interface
10.4 Apps that create alternate desktop/home screen environments or simulate multi-App widget experiences will be rejected
리젝과 직접적인 관련이 있을수도 없을수도 있는 조항이긴 하지만, 가이드라인에는 홈화면과 비슷해보이거나 멀티앱 위젯경험을 주는 앱은 리젝받을 수 있다고 되어있다. 뭐.. 이와 비슷한 조항들이 많긴한데… 이유는 한마디로 애플과 비슷하면 안된다 쯤?(…)
Summary
하지만 Launcher는 개발자가 말한 것처럼 Their only reason was that it is a ‘misuse’ of widgets 가 리젝사유로 타당해보이지는 않는다. 비록 실시간으로 업뎃을 확인할만큼 중요한 정보는 아니지만, 8개 아이콘 중 하나를 선택하는 행동은 생각없이 자주쓰는 앱을 실행시키는것과 별반 다르지 않다고 생각하기 때문이다. iOS8에서 신설된 25조보단 차라리 런처앱과 위젯의 UI 자체가 홈화면과 비슷하다는 10조의 잣대를 대는게 더 납득하기 쉬워보인다.
다만, 이 사례가 안타까운건 첫 리뷰는 통과시켜 릴리즈한 앱을 단 며칠만에 끌어내린 ‘리뷰어복불복’에 준하는 사례여서인 듯. 사용자가 매우 원하던 기능이었으니 정책이 완화되어서 사용자들이 원하는 앱을 사용할 수 있게 되길 기대해본다.
덧. 이슈가 되었을 땐 생각없이 봤다가 갑자기 뒷북인것은 인정!ㅋ_ㅋ 어찌됐건 Widget의 right use
를 이해하기 위해 도큐먼트를 조금 뒤져보다가 글을 쓴건데, 정확히 이해한건지는 모르겠다 😛