2010년 2월 22일 월요일

안드로이드 응용제품들이 하나씩 나오는군요.

한 중소기업에서 안드로이드를 이용한 IPTV용 셋톱박스 개발에 성공했다는 기사가 실렸습니다. 기존에는 리눅스기반에 미들웨어를 따로 개발해야 했을텐데 안드로이드가 들어가면 맨땅에 해당할일이 없으니 개발기간과 비용을 대폭줄일 수 있을겁니다.

이제 안드로이드를 이용한 기기들이 전분야에서 모습을 드러내기 시작하겠군요. 응용분야는 그야말로 무궁무진할겁니다. 신나는 일이죠 ^^

참고 : http://www.etnews.co.kr/news/detail.html?portal=001_00001&id=201002190191

2010년 2월 21일 일요일

전체화면(FullScreen) 사용하기

[code java]
<application ... android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
</application>
[/code]AndroidManifest.xml 파일에서 theme를 위와 같은 style로 설정하면 전체화면을 사용할 수 있습니다.

[code java]
<application ... android:theme="@android:style/Theme.NoTitleBar">
</application>
[/code]style에서 Fullscreen을 빼고 위와 같이 설정하면 TitleBar만 없는 상태가 됩니다.

[code java]
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature(Window.FEATURE_NO_TITLE);
[/code] 코드상에서는 위와 같이 설정하면 전체화면을 사용할 수 있습니다.

2010년 2월 20일 토요일

한글 안드로이드 개발자 가이드가 공개됐습니다.

안드로이드가 공개된지는 한참됐지만 국내에는 한글로 제공되는 도서 정보가 많지 않았죠. 아이폰은 인기가 많아서 인지 서가에 책들이 안드로이드보다는 많이 보이더군요.

이번에 구글의 안드로이드 개발 영문가이드를 한글로 번역해서 제공해 주신분들이 계십니다. 칸드로이드라고 Korea Android의 약자로 사용하고 있는 사이트이고 각종 안드로이드 관련 정보를 제공해 주고 있습니다. 노고에 감사드려요^^

사이트 : http://www.kandroid.org/board/kandroid_dev.php

2010년 2월 16일 화요일

윈도우 모바일 7


이크로소프트가 그냥 죽지는 않을 모양입니다. 이번 Mobile World Congress 2010에서 드디어 윈도우 모바일 7을 발표했는데 UI를 보니 그동안 내공을 많이 쌓은듯 합니다.

동영상만 봐서는 사용자들에게 어필할 수 있는 UI임에는 틀림없을것 같고, 실제폰에서 저렇게 부드럽게 움직여준다면 아이폰과 안드로이드는 긴장해야 되겠네요.

특히 아이폰은 지금 떨고 있을것 같은데 앞으로 어떻게 될지 정말 숨이 막힐지경입니다.

참고 : http://www.windowsphone7series.com
http://www.microsoft.com/presspass/press/2010/feb10/02-15MWC10PR.mspx

2010년 2월 15일 월요일

전세계 통신사가 연합한 슈퍼 앱스토어를 설립한다고 합니다.

동통신의 국제적인 연합체인 Groupe Speciale Mobile (GSM)이 모여 어플리케이션과 플랫폼을 통합한다고 발표했습니다.

이게 무슨 소린가 하면...애플의 아이폰과 구글의 안드로이드 진영이 주축이 되어 형성되고 있는 모바일 앱스토어 시장 주도권을 차지해 보려는 이제는 제3세력이 되어버린 통신사들의 연합마켓팅 전략입니다.

재밌는 것은 국내 KT, SK텔레콤도 이 연합전선에 합류해 있습니다. 이 연합 마켓팅 전략의 이름은 Wholesale App Community(WAC)로 24개의 세계적인 통신사들이 참여하고, 이 통신사들의 가입자들만 30억 명이 넘는다고 합니다.

그러나 그러나 그러나...정말 답답하다 못해 치를 떨게 만드는 저 탁상공론의 정공법은 도데체 정체가 무엇이란 말인가? (갑자기 태도가 바뀌는 탓에 어리둥절 하시겠지만...)

24개나 되는 전세계에 어디에 박혀있는지도 모르는 이통사들이 서로 머리를 싸매고 통합 플랫폼을 만들겠다는 말은 다시 말하면 지금까지 개발자들과 소비자들을 봉으로 알고 피같은 돈을 다시 쭉쭉 빨아먹겠다는 소리로 들린다. 아이폰이나 안드로이드 출현으로 구시대적인 모바일 생태계는 이미 생을 다했는데...지금에 와서 이것은 도데체 무슨 시츄에이션인가? 차라리 하던대로 하지...같이 공멸하자는 얘기로 들리는데...

솔직히 까봅시다. 자국민을 대상으로 통신시장을 자의적으로 폐쇄하고 통제해서 얻은 결과물이 세계로 뻣어나가고 있다는 거짓 성공신화를 포장한 결과는? 그 결과물이 지금 세계적인 경쟁력이 있습니까? 단 한방에 무너지는 꼴을 보고 있는 마당에...뒤늦게 플렛폼을 표준화하고 개방한다는데, 그것도 1년뒤에... 그럼 기존 아이폰이나 안드로이드는 놀고 있을까?

무려 24개나 되는 이통사들이 모여 연합한다는게 말이 쉽지 이윤을 최우선으로 하는 조직이 통제가 되기는 할런지?

참고 : http://gsmworld.com/newsroom/press-releases/2010/4633.htm

삼성 바다 공개


정 연휴가 아니라 그냥 휴일이 되어버린 구정같지 않은 구정을 보내고 삼성에서 바다폰을 공개했다는 소식들이 인터넷을 달구고 있네요...좌간 소문만 무성하던 바다폰이 공개되었습니다.

  • 3.3”amoled screen
  • 5mpix autofocus, flash
  • 720p video
  • 2gb internal memory
  • Microsd slot
  • HSDPA
  • WIFI b/g/n
  • 1Ghz processor
  • Bada OS
  • Touchwiz 3.0
  • 3.5 mm jack
  • 1500mAh baterry
  • Aluminum body
  • Tempered glass
  • Divx player
  • 10.9mm thick

스펙은 대충 위와 같고 화면 해상도는 800X480으로 요즘의 스마트폰들이 지원하는 크기입니다.

하드웨어는 삼성이 워낙에 투자를 많이하고 관록을 가지고 있으니 물건은 잘빠졌는데, 자체 OS인 바다를 싣고 나왔다는게 신선합니다.

http://www.bada.com이 바다의 공식사이트이고 여기에 개발자를 위한 섹션이 따로 있어서 잠시 들여다 봤습니다. 개발언어는 C++이고 이클립스를 지원할 모양입니다.

이제 중요한 얘기를 해보죠~. 삼성이 바다를 내놓고 첫번째 폰인 S8500을 선보였는데, 일반 사용자 입장에서는 기존의 아이폰, 안드로이드폰 그리고 바다폰을 두고 선택할 수 있어서 선택의 폭이 넓어졌습니다. 분명 사용자 입장에서는 좋은 일이고 세계화를 위한 변화의 시작입니다. 분명 하드웨어만으로는 시장선점의 수명이 길지 않다는 점도 세계화를 하려고 하는 이유겠죠.

개인적인 생각은 이렇습니다. 삼성은 지난 과거를 돌아보면 소프트웨어에 대한 투자가 하드웨어에 비하면 거의 존재감이 없었습니다. 바다를 내세워 소프트웨어까지 시장선점을 유지하겠다는 전략이라면 시간선택을 잘못한것 같다는 느낌을 지울수가 없는데, 지금은 안드로이드가 깔아놓은 판도 때문에 삼성의 바다OS전략은 웬지 초라해 보인다는 것이죠. 꼭 심비안을 보는듯 합니다.

아직은 초기니까 가리워진 부분이 많겠지만 그 이상의 획기적인 무언가는 더 없을 걸로 생각됩니다. 아이폰이나 안드로이드를 뛰어넘을 수 있는 전략은 어떤것일까요? 바다폰에서는 찾아 볼수가 없었습니다.

하지만 이제 시작이니 앞으로 어찌 전개될지는 소비자들의 선택과 바다가 펼칠 수많은 이야기에 달려있습니다. 아무래도 팔은 안으로 굽는다고 우리나라의 스마트폰이 세계화가 되기를 바라는 마음은 모두 같을 겁니다.

2010년 2월 11일 목요일

구글 버즈


글이 Gmail에 소셜네트워크 기능을 하는 Buzz라는 서비스를 시작했습니다. 트위터, 미투데이와 같은 영역의 서비스인데 기존 Gmail사용자를 안고 시작하니까 이용자는 엄청나겠네요.

구글이 소셜네트워크까지 영역을 넓히게 된건 아마도 트위터의 영향력이 컸을걸로 예상되는데, 트위터를 계속 주시해 왔을 겁니다. 꼭 트위터가 아니었더라도 구글은 이런류의 서비스를 나름 준비했을 것인데, 트위터의 위력과 역할을 모델로 방향을 잡았지 않나 생각이 듭니다.

그나저나 구글은 어디까지 서비스 영역을 확장할까요? 정말 놀라울 따름입니다.

참고 : http://www.google.com/buzz

Android Developer Labs World Tour

...Android Developer Labs 월드 투어를 한다고 하는데 아쉽게도 우리나라는 안보이는군요.
개최지 선정 기준이 무얼까 궁굼하기도 합니다만 그네들 기준으로는 우리나라가 아직 안보이는건지, 아니면 일정이 벅차 생략한건지 이유는 모르겠지만 아쉽네요.

구글 입장에서 우리나라의 존재감은 그렇게 크지 않았나 봅니다. 안드로이드 개발자분들이 많이 분발 하셔야 겠습니다. ^^

North America
  • Austin, Texas – Feb 4
  • Seattle, Washington – Feb 8
  • Waterloo, Ontario, Canada – Feb 8
  • Washington, D.C. – Feb 9
  • Mountain View, California – Feb 10
  • Cambridge, Massachusetts – Feb 11
  • New York, New York – Feb 12
Europe
  • London, UK – Feb 2
  • Paris, France – Feb 8
  • Berlin, Germany – Feb 10
  • Zurich, Switzerland – Feb 12
  • Madrid, Spain – Feb 13
Asia
  • Singapore – Feb 28
  • Taipei, Taiwan – March 3
  • Hong Kong – March 5

참고 : http://android-developers.blogspot.com/2010/01/android-developer-labs-world-tour.html

2010년 2월 9일 화요일

구글 모바일 안내 사이트 오픈


글코리아에서 스마트폰 사용자들을 위해 모바일 안내 사이트를 하나 열었습니다.
기존에 구글을 자주 이용하는 분들에게는 새로울게 없지만 그래도 구글에서 스마트폰 사용자들을 위해 발빠른 움직임을 보여주고 있네요.

안드로이드 뿐만 아니라 아이폰, 블랙베리 등도 편리하게 쓸수있도록 안내하고 있습니다. (재밌는건 해당 기기를 이미지로 볼수있습니다.)

저는 사실 핸드폰 통화 그리고 SMS메시지 주고받는 기능만으로도 만족해하는  디지탈원시인이라 무덤덤하게 사는 편이었는데, 요즘의 스마트폰 전개속도를 보면 왠지 무섭습니다. ^^

참고 : http://googlekoreablog.blogspot.com/2010/02/blog-post_09.html

2010년 2월 8일 월요일

Installing the GNU Toolchain for ARM Processors

■ 리눅스에서 ARM 컴파일러 설치

Step 1) download : http://www.codesourcery.com/sgpp/lite/arm/portal/subscription?@template=lite
. 작성당시의 버전 : arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar

Step 2) 설치
$ tar xvf arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar
$ mv arm-2009q3 ~/bin/


Step 3) Path 설정
. $HOME/.bashrc 파일을 수정
ARM_HOME=$HOME/bin/arm-2009q3
exoprt PATH=$PATH:$ARM_HOME/bin

$ source .bashrc

Step 4) 설치 확인
$ arm-none-linux-gnueabi-gcc --version
arm-none-linux-gnueabi-gcc (Sourcery G++ Lite 2009q3-67) 4.4.1
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

시간동기화

# /usr/bin/rdate -s time.bora.net && /sbin/clock -w

2010년 2월 6일 토요일

안드로이드 vs 아이폰


미있는 결과가 나왔습니다. 안드로이드와 아이폰이 격돌한다면 최후의 승자는 누가 될거라 생각하십니까?
최근 마이미츠에서는 아이폰과 안드로이폰, 최후의 승자는 누가 될까?라는 제목으로 설문조사를 했는데, 결과는 안드로이드에 조금 더 많은 무게가 실렸습니다. 대충보면 개방성 때문에 최후에는 안드로이드가 시장을 장악한다라는 의미인것 같습니다.

결과 : 안드로이드폰은 421명(56.89%), 아이폰은 319명(43.11%)

실제 스마트폰을 사용하고 계시거나 관심이 많은 분들의 의견을 반영한거니까 어느정도 가늠은 될거라 생각되는데요. 설문의 결과를 멀리놓고 보면 충분히 예측가능한 모습이 보이는듯 한데, 아이폰과 스마트폰 나름의 시장 규모를 성형하겠지만 안드로이드가 좀더 커질 공산이 많은걸로 판단을 하고 계시네요.

저도 안드로이드폰과 아이폰이 스마트폰 시장에서 점유율은 안드로이드가 점점 커질거라 예상은 되지만, 각자 고유한 영역을 개척할거라 생각됩니다. 비슷한 예를 든다면 현재의 Mac과 일반PC정도의 구도라고 생각하면 쉽게 접근이 가능할것 같습니다. 애플은 자신의 브랜드에 집중하고 상품성에 주력하는 반면, 구글은 글로벌 참여를 바탕으로 클라우드 컴퓨팅 환경을 완성해 가는 모습입니다.

스마트폰은 클라우드 컴퓨팅 시대를 열어가는 선봉장 역할을 자연스레 하게 되리라 예상합니다. 물론 스마트폰뿐만 아니라 타블렛PC도 그 역할을 충분히 할 수 있지만, 아직 사용자들에게는 불편한 점이 많아 조금 더 기다려야 할것으로 생각이 되구요. 또 구글은 크롬OS를 준비하면서 타블렛PC를 완성시켜 갈거라 봅니다. 그러면 명실상부한 클라우드 컴퓨팅 시대를 열어갈 수 있을 겁니다.

노파심이긴 하지만 한가지 염려스러운 것은 이렇게 통합되고 유기적인 시스템이 만들어지면서 정보가 집중되면 빅브라더 시스템이 될 공산도 크고, 알게 모르게 개인정보가 특정 목적에 쉽게 이용될 수 있는 요지는 커지게 됩니다.

개방 시스템도 정보는 개방하지 않기 때문에 항상 눈 크게 뜨고 봐야겠습니다. ^^

심비안도 개방하네요.

키아가 심비안OS도 오픈소스로 전환했다는 소식이 있네요. 스마트폰 전세계판매량 1위는 다름아닌 노키아입니다. 하지만 애플의 아이폰, 구글의 안드로이드가 약진하고 있기 때문에 현재 입지가 흔들리고 있고, 시장점유율은 지속적으로 하락하고 있습니다.

이런 위기 의식을 느끼고 노키아가 선택한 돌파구는 구글처럼 개방형 시스템을 선택하고, 변화를 모색하고 있습니다. 구체적인 대안으로 심비안 버전3를 연내에 선보이면서 대폭적인 성능개선와 다양한 서비스를 선보일 예정이라고 하네요.

노키아도 결국은 시장에서 밀려나지 않기 위해 개방이라는 극처방을 내리고 시장전략을 바꿨지만, 이미 안드로이드가 그 자리는 굳건히 지키고 있기 때문에 쉽지많은 않을 겁니다. 구글의 스마트폰이 단순하게 OS 영역만 개방한것도 아니고 좀더 내려가보면 리눅스라는 무시못할 존재가 있다는 겁니다.

또한 2013년에는 안드로이드가 스마트폰 시장을 뒤흔들어 심비안에 이어 2위 자리를 차지할거란 예상이 되고 있습니다. 개인적인 생각은 2013년은 너무길고 2012년만 되도 시장상황은 역전되리라 보는데 어떠신지?

좌간 노키아의 자구책이 앞으로도 시장에서 통할지는 소비자들의 선택이지만, 스마트폰 춘추전국 시대에 노키아의 개방은 딱히 매리트가 없어보입니다.

참고 :http://www.etnews.co.kr/news/detail.html?&id=201002040065
http://www.bloter.net/wp-content/bloter_html/2010/02/25085.html
http://www.idckorea.com/product/Getdoc.asp?idx=429&field=PressRelease

2010년 2월 5일 금요일

스마트폰에서 WOW경매장을 이용한답니다.


월드오브워크래프트(World Of Warcraft)를 아시는분들은 와우(WOW)가 뭔지 아실겁니다. 재미있는건 아이폰을 통해서 앞으로 와우 경매장을 이용할 수 있다는군요. 아무래도 스마트폰에서 와우 풀게임을 돌릴 수는 없겠죠~

저도 한때는 와우에서 드루이드와 전사를 열심히 키웠는데 지금은 시간도 없지만, 예전같은 열정이 식은탓인지 이제는 흥미가 덜하더군요. 한창할때 사귄친구들도 많았는데 지금은 다들 뭐하는지 모르겠네요 ㅎㅎ

좌간 아이폰을 통해 경매장에서 할 수 있는 기능은 모두 구현을 한다고 하는데, 게임이용료와는 별도의 요금을 받는다고 하네요. 쩝...

이런 생각도 한번 해봅니다. 스마트폰으로 와우 풀게임을 즐길 수 있는 날도 오지않을까요?

참고 : http://gamespot.zdnet.co.kr/ArticleView.asp?artice_id=20100204075606

1인 기업가를 키우는 앱스토어


마트폰의 인기가 하늘을 찌르고 있습니다. 그에 따라 모바일 시장의 급속한 변화가 일어나고 있고, 기기자체의 소비뿐만 아니라 스마트폰을 앞세운 앱스토어가 사용자들에게 다양한 컨텐츠를 제공하기 때문에 흐름은 더욱 가속화되고 있습니다.

앱스토어(App Store-처음엔 애플만의 영역이었지만 지금은 일반명사처럼 되었습니다.)는 Application Store의 준 말로 각종 Application을 자유롭게 사고 팔수 있는 온라인 장터(Marketplace)를 의미 합니다.  앱(App)이라는 말도 모바일 기기의 소형화에 맞춰 탄생한 모바일 신조어지만 충분한 의미전달이 딱 모바일트랜드에 어울리는 단어네요^^

기존의 애플리케이션 시장에서는 개인이 프로그램을 개발하고 판매하고 수익을 올리는것은 상상하기 힘든 난관들이 많이 있었습니다. 가장 큰 문제는 마켓팅부재로 아무리 잘 만들어진 프로그램이라도 사람들이 손쉽게 찾을 수 있는 일관된 창구가 없었고, 개인이 마켓팅까지 할 수 있는 역량이 안되기 때문에 열심히 구글링해서 아는 사람만 잘 찾아쓰는 구조였습니다.

앱스토어는 모바일 기기를 가지고 있으면 누구나 손쉽게 접속해서 수많은 프로그램을 다운받아 사용해 볼수있는 단일 창구가 마련되어 있어 소비자의 요구는 물론 개발자들도 서로 상생할 수 있는 이상적인 온라인 시장구조입니다. 우선 부담없는 가격이 매리트죠. 보통은 앱하나에 1$가 안되는 가격이 주를 이루고 있기 때문에 쉽게 구매을 하게 됩니다. 그러나 가랑비에 옷젖는 줄 모른다고 하나 둘 많아지고 습관되면 그 비용도 만만치 않습니다.

그리고 개발자 또한 소비자들이 앱스토어에 집중되기 때문에 별도의 마켓팅을 할 필요가 없습니다. 소비자에게 품질로만 어필하면 되고, 아이디어만 좋으면 1인 개발자도 충분히 소비자의 선택을 받을 수 있기 때문에 기업이든 개인이든 품질로 승부하는 이상적인 모델로 선보이고 있습니다.

제목 처럼 이제는 1인 기업가가 될수있는 환경이 예전보다는 좋아졌습니다. 하지만 개인보다 조직력/자금/생산성을 무기로 기업들도 앱스토어 시장에 뛰어들고 있으며, 생존 경쟁은 더욱 치열해 지고 있습니다.

더욱이 앱스토어는 국내에만 국한되지 않고 세계를 무대로 판을 벌이기 때문에 국제화에도 신경을 써야하고, 모바일 생태계를 이해하고 소비자의 욕구를 충족시키는 일이 생각보다 쉽지 않다는 걸 깨닫는게 중요합니다.

성공할 수 있는 환경은 예전보다 확실히 개선되고 있지만, 성공할 수 있는 확률은 달라지지 않았습니다.

실로 기업가 정신이 필요할 때라고 생각이 되고, 내가 가지고 있는 노하우가 다른 사람들에게 상품가치가 될수있는 무언가를 가지고 있다면 최소한 성공이라는 표를 예약해 놓은 겁니다.

2010년 2월 4일 목요일

여러분은 어떤걸 사고 싶으신가요?


만약 위 그림과 같은 타블릿PC가 시장에 나온다면 여러분들은 어떤 제품을 선택하실런지요? 왼쪽은 구글에서 슬며시 내놓은 초기버전의 타블렛PC이고 오른쪽은 애플의 iPad입니다.

둘의 차이점은 극명합니다. 하나는 멀티테스킹이 되는것이고 하나는 안되는 것이고, 하나는 공개형 차세대OS를 지원하고 하나는 뭔지 모르겠습니다. ^^ (너무 티냈나...)

이제는 구글과 애플이 어쩔수없는 경쟁관계에 놓였습니다. 스마트폰도 그렇고 이제는 타블릿PC를 놓고 전쟁을 벌일것 같습니다. 개방과 참여라는 세력과 혁신과 디자인의 세력이 맞붙었습니다. 정말 흥미진진한 한편의 영화를 보는듯 합니다.

저는 구글 타블릿에 지갑을 열도록 하겠습니다. (물론 여유가 있다면요 ㅎㅎ)

한마디 안할수가 없네...병주고 약주나?

정부가 시행하는 IT정책에 대해서 일단은 색안경을 끼고 보는 습관이 생겼지만, 이번엔 어떨지 모르겠습니다.

'소프트웨어(SW) 강국 도약전략'이라는 방안으로 겨우 겨우 연명하고 있는 SW시장을 활성화 시키겠다고 발표했는데, 이걸 발표한 배경이 무언지 아십니까? 바로 애플과 구글이 주도하고 있는 스마트폰 시장 때문입니다.

외형상 스마트폰을 언급했지만 이렇게 SW시장이 커진건 스마트폰 때문만은 아니죠~ 어느날 갑자기 스마트폰이 뽕하고 나타난게 아니란 얘기를 하고 싶은 겁니다. 모바일 소프트웨어 시장을 키우고 장악하기 까지 밟아온 단계가 있는데, 이번 정책이 이러한 배경을 충분히 이해하고 있는지는 의문입니다.

IT쪽에 몸담고 계신분은 다 아실겁니다. 정보통신부 없애고 지식경제부로 통합시킨거 보면...정부정책이나 예산편성이 삽질하는곳에 다들 눈돌아가 있습니다. 한마디로 삽질하고 있는거죠~

그래도 이번엔 예산 규모가 있어서 어떨지 모르겠지만 걱정이 앞섭니다. 지속적으로 정책을 유지할지도 의문이고, 예산풀었다고 갑자기 결과가 나오는것도 아닌데... 너무나 비유하고 싶은 예가 있습니다. 구멍가게 주인이 세계를 상대로 장사하는 월마트 시스템을 이해할리 없다는 거죠.

참고 : http://www.dt.co.kr/contents.html?article_no=2010020402019922601004

국내 두번째 안드로이드폰이 출시되는군요.

모토로이 출시 이후 국내에서는 두번째로 선보이는 안드로이드 폰이네요. 삼성에서 출시한 모델로 영상통화를 지원한다고 합니다.

디자인은 모토로이 보다는 조금 발전된 모습인데 개인적으로는 조금더 세련된 모델이 나왔으면 합니다...큰일 이네요 눈만 높아져서 ^^ (언제바꾸지...)

디스플레이 사이즈를 보면 모토로이가 3.7인치 WVGA(480 x 854)이고, 삼성도 3.7인치 WVGA(800×480)이네요...화면 크기에서는 별 차이가 없습니다.

CPU속도는 모토로이가 600Mhz인데 삼성은 800Mhz이네요. 좀더 빠른 속도를 가졌고, 한국형 안드로이드라고 국내 주요 포털사이트의 정보를 실어서 보여준다고 합니다. 그리고 DMB는 당연 빠질수없구요.

점점 많은 안드로이드 폰들이 출시되고 성능이나 디자인이 뛰어난 기기들이 선보일거 같은데, 시간이 갈수록 기대가 많이 됩니다. 워낙에 진행속도가 빠른편이라 어느 시점에서 폰을 결정해야 할지 망설여 지긴합니다.

폰을 결정할때 일단은 멀티터치/보조금 혜택/디자인/DMB 등을 고려해서 결정해야 겠습니다. 아직은 조금더 관망자세 모드 유지^^

참고 : http://www.zdnet.co.kr/Contents/2010/02/04/zdnet20100204110602.htm

안드로이드에서 멀티터치 기능을 볼수있겠네요.

안드로이드 현재 버전 그러니까 v2.1에서도 멀티터치 기능이 빠져 있습니다. 멀티터치는 스마트폰에서 두손가락으로 화면을 늘렸다 줄였다하는 재미있는 기능인데, 안드로이드에서는 이 기능이 빠져 있습니다.

이유는 애플의 특허이기 때문이죠.

그런데 넥서스원에서는 멀티터치 기능을 추가했다고 하네요. 아이폰을 경험한 넥서스원 사용자들이 멀티터치 기능이 없는 것에 대해 지속적으로 항의했나 봅니다. 그 결과 넥서스원에서 우여곡절끝에 기능을 추가한거 같긴한데...딜을 했겠죠.


애플의 멀티터치가 분명 스마트폰에 있어서는 혁신을 가져오긴 했지만 특허를 이용해서 시장을 통제하려는 모습이 보이는것 같아 습슬하네요. 관련업계들도 특허분쟁을 일으켜 쉽게 당하진 않을거라고 합니다.

참고 : http://www.zdnet.co.kr/Contents/2010/02/03/zdnet20100203135906.htm

2010년 2월 2일 화요일

안드로이드 프로그래밍 - Menu구현의 이해(3)

UI구성도 마찬가지지만 메뉴구성 또한 보통은 하드코딩 보다는 디자인 부분을 분리해서 프로그램을 만드는것이 여러모로 유리합니다. 학습용 프로그램들이야 뭐 날코딩해도 원리만 알면 그만이니까 상관없지만, 제품생산을 위해 다른 사람들과의 공동 작업이나 분업이 시작되면 영역별로 쪼개서 작업하지 않고서는 서로 인간성 테스트하기 딱 좋습니다.^^

요즘의 저작용 프로그램들은 XML을 이용해서 디자인 부분을 분리하는 방법이 대세입니다. 안드로이드 역시 디자인 부분을 분리해서 앱을 만들어 낼 수 있습니다. 위젯의 화면배치나 메뉴구성들이 여기에 해당되겠습니다.

앞의 문서들에서 안드로이드 메뉴의 종류와 특징 그리고 callback method 개념만 잡으면 나머지는 사실 어려운게 없습니다. 뭐 메뉴자체가 어려운게 없지만요. ^^

이번에는 XML을 이용해서 코드와 디자인(?)을 분리해서 보겠습니다. 여기서 알아야할 개념은 각각의 역할이 분명히 다르다는 것입니다. 아래 코드 조각은 역시 http://developer.android.com/guide/topics/ui/menus.html의 내용이며, 이 코드를 완성해 보도록 하겠습니다.
[code xml]
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/new_game"
          android:title="New Game" />
    <item android:id="@+id/quit"
          android:title="Quit" />
</menu>
[/code]위 XML은 id가 "new_game"이고 메뉴 이름이 "New Game"인 것과 동일 형식으로 "Quit"인 메뉴를 정의하고 있습니다. 파일명은 options_menu.xml 이라고 가정하겠습니다.

[code]
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.options_menu, menu);
    return true;
}
[/code] 위 코드는 options_menu.xml에서 파일명만 따온 options_menu를 자원화하여 프로그램에서 불러들이는 코드입니다.

과정을 조금 풀어서 설명하자면
Step 1) options_menu.xml이 저장되면 이클립스는 곧바로 해당 파일을 R.java파일에 자원으로 변환 합니다.

Step 2) R.java파일의 내용을 살짝보면 public static final int options_menu=0x7f050000; 처럼 어딘가에 저장됩니다. (xml확장자를 제거한 이름으로)

Step 3) MenuInflater라는 놈이 R.menu.options_menu 즉 0x7f050000 번지의 내용을 읽어들여 callback method로 받은 menu객체에 자동으로 메뉴를 등록합니다.

아래 코드와 위의 코드는 보여지는 결과물에서는 다른점이 없지만, 디자인과 코드가 분리되었고 개발자는 추가되고 변경되는 부분에만 집중할 수 있으며, 유지보수의 범위가 명확해 지는 장점이 있습니다.[code java]
/* Creates the menu items */
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0, MENU_NEW_GAME, 0, "New Game");
    menu.add(0, MENU_QUIT, 0, "Quit");
    return true;
}

/* Handles item selections */
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case MENU_NEW_GAME:
        newGame();
        return true;
    case MENU_QUIT:
        quit();
        return true;
    }
    return false;
}
[/code]
안드로이드 프로그래밍 - Menu구현의 이해(1)
안드로이드 프로그래밍 - Menu구현의 이해(2)

안드로이드 프로그래밍 - Menu구현의 이해(2)

뉴에서 알아야 할 Callback method와 실제 코딩을 통해 메뉴를 완성해 보겠습니다.

안드로이드 메뉴 시스템의 특징은 callback method의 호출입니다. callback은 잘 아시겠지만 프로그래머가 작성한 프로그램이 어떤 method를 실행하는 것이 아니라 운영체제 즉 시스템이 method를 호출하여 실행됩니다.

아래 코드는 http://developer.android.com/guide/topics/ui/menus.html에 있는 내용으로 아래 첨부파일에 완성된 예제가 있습니다.
[code java]
/* Creates the menu items */
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(0, MENU_NEW_GAME, 0, "New Game");
    menu.add(0, MENU_QUIT, 0, "Quit");
    return true;
}

/* Handles item selections */
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case MENU_NEW_GAME:
        newGame();
        return true;
    case MENU_QUIT:
        quit();
        return true;
    }
    return false;
}
[/code]
위 코드가 현재 실행되고 있는 모바일 기기가 있다고 가정합니다.

사용자는 기기의 "Menu"버튼을 누르면 안드로이드는 onCreateOptionsMenu()를 실행하는데 완성된 예제를 보면 알겠지만, 코드의 어디에서도 onCreateOptionsMenu()를 직접 호출하는 곳은 없습니다.

onCreateOptionsMenu()는 호출당하게 되면 프로그램은 시스템으로 부터 Menu객체를 넘겨받게 되고, 여기에 필요한 메뉴항목들을 추가하면 됩니다.

onOptionsItemSelected()에서도 마찬가지로 callback method이며, 위에서 추가된 메뉴를 손꾸락으로 꾸욱 누르면, 즉 "New Game"이나 "Quit"를 누르면 해당 내용이 실행되겠죠.

이처럼 callback method의 특징은 코드를 어딘가에 구현은 해놓고 있지만, 프로그램 자체적으로는 호출하지 않습니다. 대신 시스템이 해당 method를 필요에 의해서 실행하게 되며, 프로그래머는 이를 적절하게 구현만 해놓으면 알아서 내용을 가져갑니다.
안드로이드 프로그래밍 - Menu구현의 이해(1)
안드로이드 프로그래밍 - Menu구현의 이해(3)

스티브 잡스와 플래시

잡스 아저씨가 아이패드에서 플래시 지원을 하지 않겠다고 대놓고 삿대질 했네요.

그는 "맥에서 발생하는 프로그램 충돌 대부분이 플래시 때문에 발생한다"며 "그런 지저분한 프로그램을 지원할 생각은 전혀 없다"고 밝혔다.

개인적으로는 플래시가 웹에서 나름의 역할을 이제는 다 했다고 보고 싶습니다. 플래시를 선두로 실버라이트, JavaFX가 RIA의 화려한 모습을 장식하고 있지만 웹을 점점 무겁고 복잡하게 만드는 요인이기 때문에 정리가 필요할것 같습니다.

실제로 플래시가 핑핑돌아가는 사이트 열어놓으면 CPU가 정신없을 때가 있습니다. 그만큼 자원을 많이 소모한다는 얘긴데 잡스 아저씨는 기술적인 문제를 표면에 걸었지만 애플의 시장을 여러모로 고려했을 겁니다. 독자 애플 시장을 고수할 것인지 아니면 공생할 것인지는 두고봐야 알겠지만요.

그리고 차세대 웹표준인 HTML5를 언급하면서 대안이라고 얘기했지만, HTML5도 가야 할 길이 멀기 때문에 당장의 해결 방안이 아니란 것도 알면서 얘기한걸 보면 마켓팅 전략이라고 보는게 맞을거 같습니다.

참고 : http://itnews.inews24.com/php/news_view.php?g_serial=473120&g_menu=020600

안드로이드 프로그래밍 - Menu구현의 이해(1)

뉴를 구현하기 위해 알아야할 것들을 간단하게 정리하겠습니다.

안드로이드에서는 메뉴의 역할이나 배치가 사용자에게 상당한 편의를 제공해 줄수있기 때문에 이를 이해하고 적절한 구성으로 프로그램의 품질을 높이는게 조그만 스마트폰안에서의 생존율을 높이는 방법일겁니다. ^^

스마트폰의 특성상 일반PC의 프로그램 메뉴와는 몇가지 다른면이 있습니다. 우선은 마우스가 없기 때문에 세밀한 포인팅이나 좌/우클릭의 현란한 손동작을 받아들이지 못합니다. 해서 단순하게 손꾸락 하나로 모든걸 할 수 있게끔 구현하고 있죠.

그리고 메뉴의 크기가 상대적으로 큼지막하게 배치되어 있어, 저같이 손떨림이 심한 사람도 손가락 포인팅의 기쁨을 누릴 수 있습니다. 또한  메뉴 단계가 그리 복잡하지 않습니다.

안드로이드 메뉴 구현에서 알아야 할것은 메뉴의 종류와 callback method, 구현 방법에 있어서 Class와 XML 두가지가 가능하다는 겁니다.

안드로이드는 3가지 종류의 메뉴를 제공합니다.
* Options Menu
* Context Menu
* Submenu

Options Menu
모바일기기의 "MENU"버튼을 누르면 보여지는 메뉴로 제일 많은 활용도를 가지고 있고, 메인메뉴라 생각하면 좋을거 같습니다. Icon Menu와 Expanded Menu로 구성됩니다.

Options Menu에도 작은 특징이 있는데 화면에 보여지는 메뉴의 수는 최대 6개로 제한되어 있고, 6개가 넘게되면 확장메뉴로 넘어가게 되어 있습니다. Options Menu는 작은 이미지같은 icon을 지원하지만 메뉴가 6개가 넘어 확장으로 넘어간 메뉴들은 icon을 지원하지 않습니다. (이유는 저도 모릅니다. 심심하시면 소스까보세요.^^)

위와 같은 특징 때문에 Options Menu에는 크게 이미지를 지원하는 Icon Menu라는게 있고 더 많은 메뉴를 지원하기 위해 Expanded Menu로 구성된다고 보시면되고, 또 Options Menu는 체크박스나 라디오버튼 같은 위젯은 지원하지 않습니다.

[Icon Menu와 More를 눌렀을때 Expanded Menu]

Context Menu
일반PC에서 마우스 오른쪽버튼을 클릭하면 조그만 팝업창이 열리면서 어떤 설정이나 다양한 기능을 구현해 놓은 메뉴가 있습니다. Context Menu가 바로 그런 기능을 하는데 안드로이드에서는 마우스 클릭질을 못하기 때문에 손꾸락으로 화면을 꾸욱~하고 몇초간 누르고 있으면 마우스 오른쪽 버튼으로 속성창을 여는것과 같은 메뉴를 띄울 수 있습니다.

가장 많이 쓰이는 곳은 아마 주소록처럼 목록이 쭉 나열된 프로그램에서 개별 항목을 선택하고 수정이나 삭제를 원할때 그중에 하나를 쿡~ 찍어서 눌러주는 모습을 떠올리면 되겠습니다.

Submenu
submenu는 머 궂이 설명이 필요할까 싶긴하네요. 한가지 특징은 하위 메뉴는 1단계까지만 구현됩니다. 그러니까 submenu밑에 또 submenu를 달 수 없습니다.

안드로이드 프로그래밍 - Menu구현의 이해(2)
안드로이드 프로그래밍 - Menu구현의 이해(3)

2010년 2월 1일 월요일

모토로이 예약 가입자가 1만명이 넘었네요.

구글의 안드로이드 운영체제(OS)를 탑재한 모토로라의 스마트폰 '모토로이'의 예약 가입자가 5만을 넘어설 것으로 예상된답니다.

 현재까지는 1만명이 넘었다고 보고 하고 있던데 정말 후덜덜합니다. 출시된 모델이 하나뿐인데 상당한 인기를 끌고 있네요. 차후 줄줄이 쏟아질 모델이 나오면 기대 수요자들이 더 움직일까 궁금하네요.

저도 사실은 모토로이 보다는 다른 모델이 더 선보이면 맘에 드는 놈으로 바꿀려고 기다리고 있는데, 현재 모토로이는 내 스타일은 아니라서 ^^

좌간 생각보다 안드로이드에 대한 수요가 많은것 같습니다. 좋은 현상인거죠~ ^___^

참고 :
http://media.daum.net/digital/it/view.html?cateid=1077&newsid=20100128174209042&p=newsis
http://news.hankooki.com/lpage/economy/201002/h20100201071334111720.htm