요즘엔 프로젝트를 하나 받아서 안드로이드 앱을 하나 만들고 있습니다. 맨날 블로그에서 입으로 떠들다가 현업에 내던져지니 마음같이 안되는 부분이 참 많아요. 원래 아이폰을 좋아하기도 했지만, 안드로이드에 대해서는 궁금한게 많았구요.. 이 기회에 안드로이드폰을 마음껏 써보게 되니 좋은 부분도 많고 안좋은 부분도 많더군요. 오늘은 제가 민감하게 생각하는 안드로이드 폰의 UX, 그 중에서도 가장 맘에 걸리던 하드웨어키의 단점에 대해 이야기해보겠습니다.
안드로이드 앱은 기본적으로 백버튼, 홈버튼, 메뉴버튼이 하드웨어 상으로 존재해야하며, 옵션으로 검색 버튼이 있어야합니다. 이 하드웨어 버튼은 안드로이드 기기의 가장 큰 장점이자 단점이라 할 수 있습니다. 하드웨어 버튼에 대해서는 개인의 호불호가 강하게 나뉠 수 있는 부분입니다. 사실 저는 특정 제품에서 개인의 호불호가 크게 갈리는건 뭔가 제품을 잘못 만들었기 때문이라고 생각합니다. 100명중 한두명이 불만을 가지는건 그럴수도 있다 치지만, 분명히 뭔가 크게 잘못된 부분이 있기에 많은 사람이 싫어하는거거든요. 그럼 뭐가 그렇게 문제인지 이야기해볼까요?
백버튼의 용도 중복
백버튼이면 뒤로가기 기능만 수행하면 그만입니다. 하지만 실제로는 뒤로가기 기능을 하면서, 상위 메뉴로 이동하는 기능을 수행하기도 하고, 몇번 더 누르다보면 예상치 못하게 어플이 종료되기도 하지요. 컴투스의 위피 컨버팅 게임의 경우 백버튼 눌러버리면 게임하다가 그냥 종료되어버립니다. 치명적이죠. 그러다보니 "뒤로가기 버튼을 한번 더 누르면 어플을 종료합니다"라는 안내 문구를 보여주는 어플이 많이 나왔죠. 혹은 뒤로가기 버튼을 아예 막아버리고 홈버튼으로만 종료하게 만드는 어플도 있고, 아예 뒤로가기나 홈버튼을 안쓰고 아이폰처럼 스크린에 버튼을 보여주는 경우도 있습니다. 어플마다 제멋대로기 때문에 안드로이드 전체의 통일성이 떨어지고, 사용자들은 혼란을 느끼게 됩니다. 여기서 많은 분들이 이렇게 반응할 수 있습니다. "야, 그건 그 어플이 잘못 만들어졌기 때문에 그런거 아니냐?" 네 맞습니다. 잘못 만든거죠. 하지만 OS단에서 해결해줘야 할 문제를 어플 만들면서 개발하는 사람이 신경써야 하기 때문에 개발이 힘들어지는거죠. 여러가지 부분을 맘대로 만들 수 있는 자유가 있으면 그에 따른 부작용도 당연히 있는겁니다.
그럼 왜 백버튼의 용도가 중복되게 만들었을까?
안드로이드는 백버튼 말고 홈버튼도 있습니다. 누르면 어플을 닫고 홈으로 돌아오지요. 하지만 홈버튼을 눌렀을때 어플은 그냥 종료된게 아니라 멀티태스킹 모드로 들어갑니다. 다른 어플 잠시 쓰다가 홈버튼 길게 누르면 실행중인 이전 어플로 전환할 수 있지요. 그럼 어플 종료는 어떻게 하느냐? 백버튼을 여러번 누르면 종료됩니다. 아니면 Advanced Task Killer 같은 어플로 강제 종료를 할수도 있구요. 안드로이드 OS 자체에서 멀티태스킹과 종료를 구분해야 하기 때문에 백버튼으로 종료, 홈버튼으로 멀티태스킹이라는 악수를 둔거죠.
실례지만 잠시 애플 이야기를 해볼까요? 애플은 홈버튼을 한번 누르면 멀티태스킹으로 들어갑니다. 이 부분은 안드로이드와 같죠. 하지만 어플 종료에 대해 따로 키를 할당하지 않았습니다. 홈버튼을 두번 누르면 하단에서 멀티태스킹바가 나오고, 여기서 아이콘을 꾹 누르고 있어야 어플을 종료할 수 있습니다. 상당히 번거롭게 만들었지요. 사실 열어본지 오래되었거나 메모리가 부족할 경우, 오래된 어플부터 자동으로 종료시켜버리도록 OS 자체에서 관리하고 있습니다. 따라서 사용자가 굳이 일일히 닫아주고 할 필요가 없는겁니다.
그럼 안드로이드 버튼 문제의 해결법은?
홈버튼을 한번 누르면 멀티태스킹, 꾹 누르고 있으면 종료할건지 다른 어플로 전환할건지 선택할 수 있는 화면을 보여주면 됩니다. 마치 팜의 멀티태스킹이나 아이폰 탈옥 어플 ProSwitcher 처럼요. 종료나 멀티태스킹 등에 관련된 기능은 홈버튼으로 통일하고, 백버튼은 오로지 뒤로가기 기능만 수행하도록 칼같이 나눠야 합니다. 그래야 사용자들의 혼동과 예기치 못한 종료 등의 부작용을 없앨 수 있습니다. 어플 종료같은 치명적인 작업은 사용자의 의사를 최대한 명확하게 반영해야합니다. 처음에 설계 할 때부터 이런걸 고려했어야하는데, 구글은 그렇게 하지 못한것 같네요.
또다른 문제, 메뉴 버튼
백버튼, 홈버튼에 이어 남은 하드웨어 키가 더 있죠. 바로 메뉴 버튼입니다. 잘 사용하면 대단히 편리하지만, 이게 때로는 대단히 불편합니다. 안드로이드 앱들은 개별 기능들을 숨겨두었다가, 메뉴 버튼을 누르면 밑에서 튀어나오게 만들 수 있습니다. 이게 평소에는 공간 활용에 매우 유리합니다. 하지만 매번 화면에 들어갈 때 마다 이 화면에 숨겨진 메뉴가 있는지는 메뉴 버튼을 '눌러봐야'압니다. 이건 마치 지하철 화장실에 들어가서, 각 칸마다 사람이 들어있는지 없는지 알려면 손잡이를 돌려봐야 아는 격입니다. 보통은 손잡이에 '사용중' 이런 말이 나오기 마련이잖아요. 하지만 안드로이드에는 없기 때문에 문제가 됩니다.
아이폰이 직관적인 이유는 '눈에 보이는데로 동작하기 때문'입니다. 뒤로 가기 위해서는 화면에 보이는 뒤로가기 버튼을 누르면 되고, 기능을 동작하기 위해서는 각 기능별 전용 버튼을 누르면 됩니다. 모든게 숨어있지 않고 화면에 올라와 있습니다. 제가 안드로이드 마켓에서 앱을 여러개 받아서 비교해봤는데, 대부분의 어플들이 메뉴 버튼을 사용하지 않거나 소극적으로 사용하고 있습니다. 메뉴 버튼을 눌러봐야 나오는게, '어플 종료'나 '어플 정보' 이런식의 잘 쓰지 않는 메뉴인거죠. 왜냐하면 안드로이드 어플을 만든 개발자들도 메뉴 버튼의 문제를 인식하고 있기 때문입니다.
메뉴 버튼 때문에 욕먹은 좋은 사례로 미투데이 안드로이드 어플이 있습니다. 처음에 접속하면 '모아보는'화면만 보이고, '글쓰기', '친구들은' 등의 화면은 볼 수 없었습니다. 이 상태에서 메뉴 버튼을 눌러야 해당 기능을 이용할 수 있는거구요, 안드로이드를 처음 써서 익숙하지 않은 사람들은 대체 이게 어떻게 된건지 알수가 없는겁니다. 심지어 전 미투데이 만든 사람들이 극단적인 애플빠라 안드로이드 어플은 대충 만들어서 이런 줄 알았답니다. 그 결과 미투데이 어플은 초기 화면을 '모아보는'화면이 아니라 여러가지 기능을 바둑판식으로 다 보여주도록 만들었습니다. 많은 분들이 이렇게 반응할 수 있습니다. "안드로이드에 익숙하지 않아서 그런거 아냐!" 네 맞습니다. 익숙하지 않기 때문에 그런거죠. 하지만 그런 사람들에게 욕먹는건 개발자로서는 견딜 수 없는 일이기 때문에, 결국엔 이러저러하게 바꾸게 되는겁니다.
그렇다면 메뉴 버튼의 해결책은?
하드웨어 메뉴 버튼의 조명을 OS단에서 제어해주면 될것 같습니다. 메뉴버튼에 기능을 할당해놨을 경우 메뉴 버튼에 불이 들어오게 하고, 메뉴 버튼을 눌러도 아무 일도 일어나지 않을 경우엔 불이 들어오지 않게 하는거죠. 저는 개인적으로 이렇게 기능 버튼을 화면에서 빼서 하드웨어 버튼으로 돌리는건 반대하지만, 그건 아마 제가 아이폰을 먼저 써봤기 때문인것 같습니다. 실제로 안드로이드 OS에 많이 익숙해지자 아이폰 쓰다가도 아무것도 없는 홈 버튼 오른쪽을 두드리는 웃기는 행동을 하게 되는 저 자신을 발견할 수 있었지요. 결국엔 각 OS의 개성인데, 메뉴를 화면에 내놓는게 아이폰 스타일, 메뉴를 숨겨서 공간을 절약하는게 안드로이드의 스타일이라면 개성은 존중해줘야할겁니다. 하지만 명확하게 UX 문제라 할 수 있는 부분은 제가 제안한 방식 등으로 어떻게든 개선이 되어야 한다고 생각합니다.
여태까지 안드로이드 OS는 UX쪽이 많이 부족했던건 누구도 부정 못할 사실일겁니다. 하지만 다행히도 이쪽이 나아질 실마리가 보이는데요, Matias Duarte라는 사람이 구글에 합류했다고 합니다. 이 양반은 Sidekick과 Helio의 UI를 디자인하고, 팜의 WebOS UI를 설계한 사람이기도 한데, 이런 UX 구루가 구글에 합류했다니 상당히 기대가 되네요. 안드로이드 2.3 진저브레드 후반부 부터 합류했으니, 아마 다음 버전인 2.4 아이스크림 샌드위치와 타블렛용 안드로이드 3.0 허니컴 부터 이 사람의 작품을 볼 수 있을것 같습니다.



.png)



