Creative Freedom 기사 "LG전자 프라다 폰 Clock Widget의 Flash Lite 제작기"

Creative Freedom CS3 활용사례

LG전자 MC연구소 김기완

Flash Lite가 적용되기 전에도 일부 단말기에는 현재와 같이 Clock Widget를 bmp image module로 구현해 사용자에게 제공했다. 하지만, Flash Lite가 등장하면서 많은 변화가 생기기 시작했다. 개발자는 사용성이 매우 높고 동시에 다양한 모션 이팩트가 있는 애플리케이션을 기존보다 쉽게 제작할 수 있게 됐다. 이제, 휴대 단말기 제작사들은 이런 사용자 니즈에 대처하기 위해 Widget 이나 Menu, 계산기, 세계시계뿐만 아니라, Flash Video (for Internet), Flash Map 등 불과 몇 달 전 web에서만 사용할 수 있었던 콘텐츠를 Flash Lite로 제작하고 있거나 제작 준비 중이다. 이에, LG전자 프라다 폰 Clock Widget을 Flash Lite로 어떻게 제작했는지 알아본다.  

휴대 단말기의 widget

1980년만 해도 극소수 특권 계층의 전유물이었던 휴대 단말기(일명 카폰)가 학생들은 물론 직장인들의 필수품이 된 지 오래다. 이뿐인가? 매몰된 지역에서 위치추적을 통해 인명을 살리는 등 휴대폰은 이미 우리 일상과 뗄래야 뗄 수 없는 중요한 일부분이 됐다.

때문에, 이렇게 다양한 분야의 사람들이 휴대 단말기를 사용함에 있어서 기기 품질 또한 높아져 갔다. 80년대 크고 무겁던 휴대 단말기가 점점 슬림 해져 이제는 시디 케이스 두께 정도로 얇아졌으며, 이쑤시개의 길이 보다 짧아졌다.

또, 단순히 통화만 되던 휴대 단말기에 여러 가지 기능들이 탑재되기 시작했다. Camera, MP3 Player의 기능은 물론, 실시간 TV까지 즐길 수 있는 DMB(Digital Multimedia Broadcasting) 기능이 탑재돼 다양한 콘텐츠를 사용할 수도 있게 됐으며, 사용자 자신이 콘텐츠를 생산, 가공할 수도 있게 됐다.

하지만, 이제는 단순히 자신의 휴대 단말기 안에서 사용되고 생산되는 제한적인 콘텐츠 활용 범위를 벗어나 사용자 자신이 휴대 단말기를 이용해 촬영한 사진을 인터넷에 있는 자신의 미니홈피에 업로드 할 수 있는 기능은 물론, 구글 혹은 야후에서 어떠한 정보 검색도 가능해졌으며, 구글 맵(google map)을 이용해 위성 이미지와 교통정보 등도 이용할 수 있어 전세계 어떤 정보도 제한 없이 사용할 수 있는 시대가 됐다.

이렇게 다양한 기능을 지원하는 휴대 단말기의 콘텐츠를 제작하기 위해서 단말 제조사들은 자신들만의 플랫폼과 다양한 기능을 가지고 있는 엔진을 탑재해 사용자 요구에 끊임없이 대처해 나가고 있는데 그 엔진 중 하나가 바로 Flash Lite이다. 이런 엔진들은 단말기의 OS에 포함되기도 하고 그 위에 설치돼 OS와 공조하며 그래픽 처리 등을 담당하기도 하는데 Flash Lite는 후자에 해당된다.

Flash Lite가 휴대 단말기 User Interface(이하 UI) 에 적용 되면서 처음 휴대 단말기를 접하는 사용자는 다이내믹한 효과와 사용성 높은 UI에 흥미를 가지고 단말기를 접할 수 있게 되었고, 기존 사용자는 실증을 느끼지 않고 지속적으로 기능을 사용할 수 있게 됐다.

LG전자에서는 이와 같은 저작환경과 사용자 환경을 분석해 사용자들이 좀 더 쉽고 편리하게 단말기를 사용하고 활용할 수 있게 하기 위해 대기화면(이하 IDLE)에서 적용되는 widget을 제작하게 됐다.

작은 부품이라는 의미를 내포하고 있는 Widget에는 그 이름에 국한되지 않고 많은 것들을 할 수 있는 기능이 있다. 단순히 이미지를 보여주는 것에서부터 날씨 정보나 위치정보를 보여주는 다양한 기능을 가지고 있는 것들까지 수 많은 종류의 Widget이 다양한 단말기 안에서 동작을 하고 있다.

LG전자의 프라다 폰에서 widget은 사용자 환경에 가장 기본이 되는 시간정보를 출력하는 것에 포커스를 맞춰 제작했다. 수출향 프라다 폰은 국내에서 출시되는 것과는 다르게 Analog Clock, Digital Clock 그리고 Dual Clock 3종이 widget이 탑재됐다.

사용자가 Analog Type의 widget 설정 시, 시침과 분침을 가지고 있는 벽시계와 같은 모양의 Widget이 단말기 IDLE 에서 Drag & Drop에 반응해 사용자가 지정하는 위치에 놓여 시간정보를 출력해 주고 Digital Type은 전자시계와 같은 모양의 Widget이 시간 정보를 보여주면서 Analog 와 같은 사용자 입력에 반응하게 된다.

앞으로 설명하게 될 Dual Type은 IDLE에 놓여 두 가지 Digital 시간 정보를 보여주게 되는데 상단에 있는 시계는 전세계 주요 도시 중 사용자가 희망하는 곳의 시간정보를 보여주게 된다. 하단에 있는 시계는 사용자가 World Clock(Flash Lite 제작)을 이용해 지정한 시간 정보를 보여주게 된다. 이것 역시 다른 Widget과 같이 사용자의 Drag & Drop에 따라 IDLE 화면 전체에 놓인다.

Dual Clock Widget 이란?

사용자가 단말기의 power on을 지시하면 OS 위에 설치된 Flash Lite 엔진은 우선 Menu.swf 파일을 구동시키게 된다. 구동된 메뉴파일은 GUI 구성 전에 단말기로부터 현재 Background theme, Language setting, Sim card setting, Widget setting 등 UI 구성에 필요한 많은 정보를 요청하게 된다. 이 중 widget setting에 요청한 설정 정보가 3번이면 Menu.swf는 Dual Clock Widget을 IDLE에 LoadMovie 하게 된다. 다른 Widget이나 Background theme, Language setting도 동일한 요청 방법과 setting 방법으로 구동된다. 즉, Menu.swf가 구동되면서 요청하는 번호에 따라 해당 Language XML 파일이나 Background theme 파일을 LoadMovie 해서 GUI를 구성하게 된다.

앞서 설명했던 것처럼 Dual Clock widget은 알람 기능과 시간정보 출력을 담당하는 다른 widget에 비해 출력되는 정보와 단말 연동 방법이 상이하다.

사용자 설정으로 IDLE 에 Dual Clock Widget 런칭하게 되면 전세계 주요도시의 GMT(Greenwich mean time)로 부터 오차 시간(표준 시) 정보가 담겨 있는 XML 파일을 파싱(약속된 패턴으로 구조화된 xml 을 Flash 가 쓸 수 있도록 객체화 하는 과정)하게 된다.

또, widget은 상단 시계에 출력될 second time(사용자 지정시간) 설정 정보를 단말기에게 요청하게 된다. 설정 정보가 있을 경우 그것에 따라 표준 시를 계산하여 상단 시계에 출력하여 주며, 설정 정보가 없을 경우 임시로 하단 시계에서 출력되는 current time (기준 시)를 보여준다.

이후, 사용자에 의해서 상단 시계에서 출력되는 second time이 바뀌게 되면 XML에서 파싱된 오차 시간 정보를 이용하여 current time에서 표준 시를 계산하여 상단 시계에 정보를 출력하게 된다.

Dual Clock Widget 의 제작

<표준시간 정보가 있는 xml 파일>

앞서 설명한 것처럼, Menu.swf에 loadMoive 된 Dual Clock Widget은 가장 먼저 표준 시 정보가 담겨 있는 widget_timeList.xml를 파싱한다. 이 xml에는 출시되는 국가에 따라 약 120~130개의 표준시 정보가 각각의 Node에 저장돼 있다.

사용자

2 Comments

  1. 하양양 · January 15th, 2008

    기완아 이렇게 오픈해도 되는거냐..
    물론 너의 노하우의 0.01%도 안되는 부분이겠다만…
    너의 밥줄이잖냐..앙앙? ㅋㅋ

  2. rixK · January 15th, 2008

    덕담이지? 그치?
    고마워~ -_ㅠ 흑흑…

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.