본문 바로가기

원포인트 레슨

23. 시스템 이벤트를 활용하자


  매일 새롭게 쏟아져 나오는 앱들의 신선한 아이디어를 보면 스마트폰으로 할 수 있는 일이 정말 많다는 사실에 놀라게 된다. 하지만 대부분의 사람들에게 새롭고 차별화된 아이디어를 발견하는 것은 쉽지 않은 일이다. 

필자는 아이디어에 대해 스트레스를 받는 사람들에게 기존에 출시된 다양한 앱들을 써보면서 다양한 아이디어들에 대한 지식을 하나씩 쌓아가는 방법을 추천하고 있다. 많은 사람들의 아이디어를 보고 배우고 나면 '맨땅에 헤딩하는' 대신 기존의 앱들을 참고해 새로운 것을 만들 수 있는 능력이 생기기 때문이다. 

그런 의미에서 오늘은 모바일 기술 중에서 시스템 이벤트에 대해 알아보고자 한다. 시스템 이벤트란 쉽게 말해 배터리 전원이나 이어폰 플러그를 연결하는 것과 같은, 휴대폰에 발생하는 특정 이벤트를 말한다. 단말기의 OS는 이런 이벤트가 발생할 때마다 특정 프로그램에 발생한 이벤트에 대한 정보를 전달해주는 기능이 있는데 이를 잘 활용하면 재미있는 서비스를 만들 수 있다. 그럼 대표적인 몇 가지 시스템 이벤트에 대해 그 특징과 관련 있는 아이디어의 들을 살펴보도록 하자. 



1. 배터리(Battery) 이벤트 
   



배터리 이벤트를 활용한 예
   
우리가 전원을 연결하거나 제거할 때 발생하는 이벤트를 말한다. 이 이벤트를 통해서 현재 배터리가 충전된 수준을 알 수 있으며 특정 수준에서 별도의 이벤트를 받는 것도 가능하다. 이런 이벤트를 활용해서 만들 수 있는 아이디어에는 어떤 것들이 있을까? 

가장 쉽게 생각해 볼 수 있는 예로 충전 거치대용 시계를 들 수 있다. 보통 실내에서 충전을 할 때는 거치대에 휴대폰을 끼운 상태에서 충전을 한다. 이 경우 일단 거치대에 휴대폰을 끼워 놓으면 충전이 완료되기 전까지 휴대폰을 사용할 일이 거의 없게 되는데 이 시간동안 휴대폰을 나만의 탁상용 시계로 만드는 것이다. 원리는 간단하다. 전원이 연결되는 순간 거치대용 시계 앱을 실행하게 만들고 충전이 완료돼 전원이 분리되면 프로그램을 종료하면 된다. 충전이 100% 완료 됐거나 시계가 정시를 가리킬 때마다 특정 이벤트를 추가해보는 것도 좋을 것이다. 





2. 헤드셋(Headset) 이벤트 


휴대에 이어폰이 연결되거나 분리되는 순간 발생하는 이벤트를 말한다. 간단한 이벤트지만 여러 가지 활용할 수 있는 방법이 많은 이벤트 중 하나라고 생각되며 필자는 이를 활용해 헤드셋 매너모드란 서비스를 만들어 보았다. 내용은 매우 간단하다. 진동모드가 벨소리 모드인 상태에서 헤드셋을 끼워 노래를 들으면 자신에게 문자가 전화가 왔다는 사실을 놓치기 쉽다. 또한 공공장소라면 주변의 사람들에게 벨소리가 방해가 되고 있다는 사실을 놓치는 경우도 발생할 수 있을 것이다. 이런 문제를 해결하기 위해 만든 것이 헤드셋 매너모드인데, 벨소리 모드에서 이어폰을 연결하면 자동으로 무음모드로 변경되고 문자나 전화가 오면 이를 특정 효과음으로 이어폰으로 알려주는 기능이다. 사실 과거 우리가 쓰던 피처폰은 이런 기능을 기본으로 제공하기도 했다. 하지만 대부분의 스마트폰은 이런 기능을 제공하고 있지 않기 때문에 필요한 프로그램이라고 생각해서 만들어 보았다. 







3. 콜(Call) 이벤트 
   
벨소리모드에서 전화수신 시 흔들어 매너모드로 변경해 주는 앱 콜 이벤트는 말 그대로 전화를 수신하거나 발신할 때 발생하는 이벤트이다. 대부분의 폰들은 기본적으로 콜 수신, 발신에 대해 똑같은 동작을 하게 만들어져 있다. 하지만 콜 이벤트를 잘 이용한다면 차별화된 서비스를 제공할 수 있다. 

먼저 수신이벤트에 대해 생각해보자. 영화관이나 회의 중에 전화가 왔는데 깜빡 잊고 진동모드를 벨소리 모드로 설정해 놓았다고 가정해보자. 이럴 경우 전화가 온다면 허둥지둥 진동모드로 변경하느라 정신이 없을 것이다. 하지만 수신이벤트를 활용하면 수동적으로 벨소리 변경을 하는 것 대신 다양한 방법으로 벨소리를 변경할 수 있다. 예를 들어 핸드폰을 흔들거나 뒤집거나 톡톡 쳐서 벨소리모드를 진동으로 순식간에 바꿀 수 있는 것이다. 

이번에는 반대로 발신 콜에 대해서 생각해보자. 내가 전화를 걸었을 때 특별한 서비스를 추가할 수 있을까? 별거 없는 것 같지만 생각해보면 의외로 참신한 아이디어들이 나올 수 있다. 예를 들어 전화연결 알리미란 서비스를 들 수 있다. 보통 전화를 걸면 상대방이 전화를 받을 때까지 귀에서 전화기를 붙이고 있어야 한다. 하지만 발신 콜 이벤트를 통해 전화가 연결된 순간을 확인할 수 있다면 전화가 연결된 순간에 진동이나 효과음을 줘서 계속 전화가 연결될 때 울리는 벨소리를 더 이상 듣지 않아도 된다.





 차별화된 앱을 만들기 위해서는 창의성도 중요하지만 스마트폰으로 무엇을 할 수 있는지 그 각각의 기능에 대해서도 잘 알고 있어야 한다. 그리고 이런 다양한 기능들을 알기 위해서는 책을 통해서 배우는 방법도 있지만 그보다 실제 마켓에 올라온 다양한 프로그램들을 사용해보고 그 구현원리에 대한 지식을 내 것으로 흡수하는 것이 더 효과적이다. 


아이디어가 떠오르지 않는가? 그럼 마켓으로 가서 이것저것 다양한 앱들을 사용해보자. 누가 알겠는가, 남의 앱들을 사용하는 동안 대박 앱을 위한 새로운 아이디어가 탄생할지.