2010년 4월 29일 목요일

코드 재료


■ Toast 기본
. Name : ToastDemo
. Build : Android 2.1, Eclipse 3.5
. Toast를 만들기 위한 최소한의 기능만 구현, Toast용 예제코드






■ Widget 기본
. Name : AppWidget
. Build : Android 2.1, Eclipse 3.5
. Widget을 만들기 위한 최소한의 기능만 구현, 위젯용 예제코드






■ Menu 기본
. Name : XmlMenuDemo
. Build : Android 2.1, Eclipse 3.5
. Menu를 만들기 위한 최소한의 기능만 구현, 리스트뷰 이용





■ Timer 테스트
. Name : TimerTest
. Build : Android 2.1, Eclipse 3.5
. Timer 테스트용 예제코드

2010년 4월 23일 금요일

Fixedsys 폰트 패치

요즘은 코딩할때 보기편한 폰트들이 많이 나왔지만 그래도 Fixedsys처럼 보기 편한 글꼴은 없는듯 합니다.
한가지 단점은 역슬래쉬(\) 문제인데 이것을 패치(\)한 폰트입니다. (설치후 리부팅!)

2010년 4월 22일 목요일

Ubuntu server update

우분투 서버 최신 시스템 유지
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

User-Defined Keywords (USERTYPE.DAT)

Visual Studio가 설치된 경로중 MSDDEV가 설치된 폴더에 이 화일을 넣고 재실행.
(VC++ 6.0 경우 C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin)

주로 쓰는 함수,변수등이 파란색으로 보여 코딩하는데 편의 제공.

참고 : http://www.codeguru.com/cpp/v-s/tips/syntaxhighlighting/article.php/c471/

2010년 4월 17일 토요일

ddms를 별도로 띄울때 콘솔창 없애기

find_java.bat 파일을 찾는다.
C:\Program Files\android-sdk-windows\tools\lib\find_java.bat

set java_exe=java
아래와 같이 수정
set java_exe=javaw

ddms.bat 파일을 찾는다.
C:\Program Files\android-sdk-windows\tools\ddms.bat

call %java_exe% %java_debug% -Djava.ext.dirs=%javaextdirs% -
아래와 같이 수정
start %java_exe% %java_debug% -Djava.ext.dirs=%javaextdirs% -

핵심은 start javaw [옵션...] class

2010년 3월 31일 수요일

스마트폰 공인인증서 규제완화

여러분들은 스마트폰에 기존 공인인증서 설치를 어떻게 생각하시나요?

일반PC에서 처럼 공인인증서 설치절차를 거치고 보관하는 번잡함을 스마트폰에도 적용시키겠다는 유연하지 못한 발상이 조금은 완화된듯 보입니다.

여러사람이 공유해서 사용하는 일반PC의 특성과는 달리 스마트폰은 전적으로 개인의 보안영역에 속해있고, 기본적으로 공유해서 사용하지 않는 개인기기입니다. 상당히 상식적이죠!

하지만 정부의 정책은 상식적이지 못했고 여전히 시장 흐름을 반영하지 못하고 있는게 현실입니다. 그런데 이번엔 관련업계의 소리를 조금 반응을 보인것으로 보입니다. 하지만 아직도 보안의 근본적인 이해를 못하고 있다고 보여집니다.

사실 따지고 보면 보안문제가 이슈가 아닙니다. 보안문제는 이미 기술적으로 검증이 끝난부분이지만 사용자의 부주의 그러니까 사람의 실수로 인한 부분까지 통제하려고 하니 모두가 깝깝해지는 거죠. 특히 개발자 입장에서는...그 어려운 보안 아키텍쳐를 누가 이해하고 자유롭게 응용프로그램을 만들겠습니까? 시간낭비라는 생각밖에 안드네요.

좌간 그래도 다행인것은 비효율적인 기존 공인인증서 의무화가 없어졌다는데 의미를 두고 싶습니다.

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

2010년 3월 24일 수요일

안드로이드마켓이 앞으로 활짝 열릴것으로 예상되네요.

 그동안 구글와 문광부가 안드로이드마켓에 올라오는 게임들의 사전심의 문제로 대립각을 세우더니 정부가 한발 물러선 것으로 보입니다.

스마트폰 시장의 가능성에 정부가 한발 물러선 것인지 아니면 기존 통신사들의 입김으로 움직였는지 모르겠으나 우야둥둥 개발자들은 이제 걱정거리를 한숨 놓게 된것은 사실입니다.

정부의 IT정책이 시장의 흐름을 따라 반응하는 속도가 더욱 빨라지고 능동적으로 바뀌었으면 하는 바램인데, 이번 안드로이드마켓 게임사전 심의건은 전세계적으로 스마트폰시장이 확대되고 있고, 시장의 규모와 경제성 등이 무시할 수 없을만큼 이슈화되었기 때문에 그나마 빠른 반응을 보인것 같습니다.

이제 열심히 개발에 몰두해야 겠습니다.

참고 : http://www.etnews.co.kr/news/detail.html?id=201003220217

2010년 3월 5일 금요일

이통3사가 앱스토어를 통합한다고 합니다.

국내 KT, SKT, LGT가 서로 합의하에 앱스토어를 모두 공유할 수 있는 통합 앱스토어를 선보인다고 합니다.

전세계 24개 통신사가 모여있는 '홀세일앱커뮤니티(WAC)'와의 호환성도 고려하고, SK는 음성인식 서비스도 내놓는등 적극적인 통합행보를 보일 모양인데 어떻게 보십니까?

좀더 자세한 스펙을 봐야 판단이 서겠지만, 한번 개발된 앱을 수정하지 않고 3개 통신사가 공유한다면 나쁘진 않을거 같습니다. (꾀나 힘들겁니다. 개발자들만 죽어나겠군요.)

하지만 국내 통신사들이 왜(Why) 전에 없던 이런 행동을 하는지 생각해 봐야합니다.

아이폰과 안드로이드의 출시를 기준으로 통신사들은 변화를 모색하기 시작했지만, 그 변화는 기존 시장을 지키기 위한 쇄국정책으로 보게되는 것은 저만의 잘못된 시각일까요?

변화의 흐름을 잘못 읽고 있는듯 하여 안타갑습니다.

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

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

2010년 1월 31일 일요일

오드로이드에서 둠 실행

안드로이드 작업 좀 하다가 오드로이드에 고전 게임 둠(DOOM)을 올려서 테스트 해봤습니다.
제가 게임은 발컨이라 어렵더군요. 그냥 성능 테스트겸해서 올려봤습니다.
참고 : http://code.google.com/p/doom-for-android/

우분투 9.10에서 안드로이드 소스 컴파일 환경 만들기

■ 우분투에서 안드로이드를 소스 컴파일하기 위해 다음과 같은 패키지들이 필요합니다.
참고 : http://source.android.com/download

  • Git 1.5.4 or newer and the GNU Privacy Guard.
  • JDK 5.0, update 12 or higher.  
  • Java 6 is not supported, because of incompatibilities with @Override.
  • flex, bison, gperf, libsdl-dev, libesd0-dev, libwxgtk2.6-dev (optional), build-essential, zip, curl. 

위와 같이 각종 패키지를 설치하면 되지만, Java 6를 지원하지 않기 때문에 주의해야 하고, 또한 우분투 9.10에서는 Java1.5가 패키지로 포함되어 있지 않습니다. 이 부분을 먼저 해결하고 나머지 패키지를 설치합니다.

■ 우분투 9.10에 Java 1.5 설치하기
Step 1) 저장소 추가
. 우분투 상단메뉴에서 "시스템" > "관리"에 포함된 프로그램 중 "소프트웨어 소스"를 실행합니다.
. "기타 소프트웨어"탭을 선택하고 추가 버튼을 눌러 다음 두줄을 차례로 추가합니다. (공백주의)
. /etc/apt/sources.list에 직접 추가해도 됩니다.
deb http://kr.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://kr.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse
. 오래된 패키지 어쩌구 하는데 오래된거 업데이트 합니다. ^^
. 정상적으로 추가되면 우분투 9.04 '잔티 자카롭'추천하는 업데이트가 체크되어 보입니다.

Step 2) Java 1.5 관련 패키지 설치
. 터미널에서 Java 1.5 및 플러그인 패키지를 설치하고 확인합니다.
$ sudo apt-get install sun-java5-jdk
$ sudo apt-get install sun-java5-plugin
$ sudo update-java-alternatives -s java-1.5.0-sun
$ java -version
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02)
Java HotSpot(TM) Client VM (build 1.5.0_19-b02, mixed mode, sharing)

■ 나머지 패키지 설치하기
$ sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
. 정상적으로 설치되면 안드로이드를 소스 컴파일 하기 위한 기본 패키지가 준비됐습니다.

■ 안드로이드 소스 다운로드
Step 1) curl을 이용하여 repo스크립트를 다운로드 받습니다.
$ cd ~
$ mkdir bin
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=$HOME/bin:$PATH

Step 2) 안드로이드 소스를 다운로드 받습니다.
$ mkdir mydroid
$ cd mydroid
$ repo init -u git://android.git.kernel.org/platform/manifest.git
$ repo sync
. 중간에 머 물어보는데 대충 둘러대시고, sync로 다운로드 받습니다. (상당히 올래걸립니다.)
. 모두 다운로드 받아지면 다음과 같은 파일이 보입니다.

Step 3) 안드로이드 컴파일
$ make
. 컴파일 정상적으로 시작되고 진행되면 이젠 기다리는 일만 남았습니다.
. 컴파일이 끝나면 ~/mydroid/out/target/product/generic 디렉토리에 결과물이 생깁니다.

■ 기타 리눅스 설치(SULinux 또는 Redhat계열)
Step 1) java1.5 설치
. 본인의 플렛폼에 맞는 rpm버전이나 tar버전을 설치합니다. (/usr/local/java1.5에 설치)
. /etc/profile.d/java.sh를 작성합니다.
export JAVA_HOME=/usr/local/java1.5
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/toos.jar

Step 2) 패키지를 설치합니다.
# yum clean all
# yum install zlib-devel flex bison gperf SDL-devel.i386 ncurses-devel.i386

Step 3) git 설치
# wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
# tar xvfz git-latest.tar.gz
# cd git-{date}
# autoconf
# ./configure --with-curl=/usr/local --prefix=/usr/local/git
# make
# make install
# export PATH=$HOME/bin:/usr/bin:/usr/local/git/bin:$PATH

Step 4) 안드로이드 소스 다운로드는 우분투 진행과 동일

MS도 스마트폰 출시

모바일 춘추전국 시대에 MS의 모습은 눈에 띄지 않고 있었는데 갑자기 MS도 스마트폰을 독자개발을 하고 내놓는다는 소문이 돌고 있습니다.

아무래도 애플과 구글의 안드로이드를 보고 자극을 받았을 겁니다. 지금의 모바일 시장을 보면 MS는 잠도 못잘것 같다는 생각이 드는데, 입소문 마켓팅으로 시장의 기대심리를 자극하고 넥서스원처럼 '빵'하고 터트릴지도 모르겠네요.

표면적으로는 자체 스마트폰 출시에 대한 언급을 일절하고 있지 않지만, 지금 열심히 출시준비를 하고 있는 모습을 여기 저기서 접할 수 있습니다. 개인적으로는 MS 스마트폰에 대해 기대감이나 신비감같은것은 솔직히 없습니다. 디자인이나 기술적인 매력이 별로 없고, 핵심적인것은 오픈되어 있지 않습니다.

일단은 실체를 봐야 알겠지만 현재 떠도는 소문으로는 '핑크폰'이라는 이름으로 폰출시가 될것이고, 윈도모바일7.0이 탑재되어 나올거라고 합니다. MS도 모바일 시장에서 이대로 주저 앉을리 없고, 출시 이후 시장의 평가에 따라 모바일 시장은 더욱 후끈해 지겠지요^^

출처 : http://www.zdnet.co.kr/ArticleView.asp?artice_id=20100122091017


어처구니 애플

잡스 아저씨가 iPad 만드는데 너무 열중한 나머지 중요한 인터넷 도메인은 홀랑까먹으셨네요. 쩝...우짜쓰까...

ipad.com, net, org 최상위 도메인은 커녕 다른 여타 중요한 도메인도 등록을 못한거 같은데, 앞으로 아이패드가 갈길이 순탄치 않을거 같습니다. 이미 제품자체에 대한 불만과 평가절하가 만만치 않게 포스팅되고, 벌써 개선점에 대해서 좔좔 흘러나오고 있네요.

그런데 이해 안되는것은 애플이 어쩌다 이런 실수를 한것인지 좀 납득이 안가는 부분이 있습니다. 그런 대기업에서 최상위 도메인을 놓쳤다는게 어이없고, 만약  제가 경영자라면 절대 용납할 수 없는 일이 벌어진 겁니다. 한 기업에서 현재 주력상품의 도메인을 신경안쓰고 있었다는건 다른 부분에서도 문제가 있었거나 생길 수 있는 틈이 보인다는 겁니다.

정말 자신감이 넘쳐서 apple.com 하나로 모든걸 대표하겠다 그러면 모를까, 일반 사람들은 바로 ipad.com을 쳐볼텐데 그럴때 엉뚱한 페이지가 나오면 당황스러워 할것이고, 애플의 이미지도 달라지지 않을까 생각됩니다.

그나저나 이 건으로 도메인 선점한 사람은 애플하고 소유권 이전 비용으로 즐거운 비명을 지르는건 아닌지 모르겠습니다.

출처 : http://www.dt.co.kr/contents.html?article_no=2010013002019922601002

2010년 1월 29일 금요일

안드로이드 개발환경 만들기

■ Java + Eclipse + Android SDK 설치 및 설정 (Windows 환경)
Step 1) Java SDK 설치
. JDK를 설치하기 위해 http://developers.sun.com/downloads/ 사이트로 이동합니다.
. Java SE 카테고리에서 Java SE(JDK)6을 다운로드 합니다.
. 여러 버전이 존재하지만 어렵지 않게 Standard Edition을 찾을 수 있습니다.
. 다운로드 받은 JDK를 설치합니다.

Step 2) 이클립스 SDK 설치
. 이클립스를 설치하기 위해 http://www.eclipse.org/downloads/ 사이트로 이동합니다.
. 여기도 여러 버전이 존재하는데 Eclipse Classic을 찾아서 다운로드 합니다.
. 이클립스는 설치라기 보다는 압축만 풀어서 원하는 폴더에 복사해서 사용하시면 됩니다.

Step 3) 안드로이드 SDK 설치
. 안드로이드 SDK를 설치하기 위해 http://developer.android.com/sdk/ 사이트로 이동합니다.
. 플렛폼별 SDK가 존재하므로 해당 패키지를 다운로드 합니다.
. 안드로이드 SDK도 설치 과정은 없으니 압축을 풀어서 원하는 폴더에 복사해서 사용하시면 됩니다.

Step 4) 안드로이드 플러그인 설정
. Eclipse 3.5 (Galileo)를 기준으로 설명합니다.
. 이클립스를 실행하고 메뉴 "Help"의 하위메뉴 "Install New Software"를 실행합니다.

. "Add"를 클릭하고 위와 같이 적당한 이름과 플러그인 주소를 넣어 줍니다.
. https://dl-ssl.google.com/android/eclipse/ 또는 http://dl-ssl.google.com/android/eclipse/
. 이상없이 플러그인을 찾으면 리스트에 Developer Tools라고 나타나는데 체크박스를 체크하고 설치를 진행합니다.

Step 5) 이클립스 안드로이드 SDK 설정
. 이클립스에게 안드로이드의 SDK경로를 알려줍니다.
. 이클립스 메뉴에서 "Window"의 하위메뉴 "Preference"를 실행합니다.
. Android 항목을 선택하고 안드로이드SDK의 경로를 잡아주시면 됩니다.


안드로이드는 OS일까? Framework일까?

제목처럼 안드로이드는 운영체제(OperatingSystem)일까? 아니면 프레임웍(Framework)일까? 안드로이드의 정체성이 무엇인지 명확하게 머리에 들어오지 않아서 나름 정리하고 넘어갑니다.

안드로이드 머있나...그냥 휴대폰에서 돌아가는 프로그램이겠지...하고 그냥 넘긴다면 분명 일반사용자의 입장일 것이고, 적어도 리눅스와 자바가 짬뽕된 거시기를 생각하면 개발자측에 속하는 사람일 겁니다.

결론부터 말하면 안드로이드는 모바일 디바이스를 위한 소프트웨어 종합선물세트이고, 모바일 분야에만 국한되지 않는 영역을 포함하고 있습니다.
위 그림은 안드로이드의 아키텍처를 보여주는 다이어그램으로 안드로이드 개발자 사이트에서 제공하며, 대략 살펴보면 리눅스 커널, 라이브러리, 자바 가상머신, 프레임웍, 응용프로그램층을 형성하며 일반PC의 OS와 별반 다를게 없는 패턴을 보여주고 있습니다.

여타 OS와 다를게 없는데 그럼 무슨 종합선물세트인가???

우리는 여기서 안드로이드가 가지고 있는 가능성에 대해서 폭넓게 생각할 수 있어야 합니다. 모든 아키텍처가 공개되어 있기 때문에 폐쇄적인 기존 모바일의 그것들과는 시간이 지나면서 궤를 달리할거란 얘기죠.

기업의 입장에서도 이미 검증된 기술들이고 원가절감 차원에서도 다방면의 제품에 안드로이드의 기술을 적용하면 이보다 더 좋은 생산시스템은 없는거죠.

신이 인간에게 준 최고의 선물은 창조할 수 있는 능력이라 생각합니다. 폐쇄된 안정보다 미래를 위한 창조가 인간 본연의 모습이기 때문에 우리들은 안드로이드의 발전하는 모습에 더 끌리고 있는게 아닌가 합니다.

안드로이드는 무한한 가능성에 대한 종합선물세트라 생각합니다.

2010년 1월 28일 목요일

애플 아이패드

잡스 아저씨가 또 사고를 쳤네요.
이번엔 애플 아이패드라는 것을 들고 나왔습니다. 타블릿PC라고 이미 많이들 알고 있는 액자처럼 생긴 물건이죠.

이미 몇년전부터 시장에 타블릿PC가 선을 보였지만 그냥 그런게 있구나 하는 정도로 사람들한테는 별로 인기가 없었던 물건입니다.

그런데 애플이 들고 나오니 모양새가 좀 다르게 느껴지네요. 왜 일까요?

우선은 디자인이겠죠. 역시 애플이야 할수밖에 없는 깔끔한 디자인에 먼저 호감이 갑니다. 기존 시장에서 이미 선을 보였던 타블릿PC들과는 디자인에서 부터 차별화가 되고 있고, 무엇보다 아이폰의 영향을 무시할 수 없겠지요.

그리고 소비자들에게는 가격이 아무래도 큰 이슈일텐데 아이패드가 생각보다 저렴하다는 사실에 조금 놀랐습니다. 처음든 생각은 60만원! 오 살만한데...(하지만 내 현실은 좀 다르다는거~ 오늘 하루 살아가기도 벅찬데 ㅠ.ㅠ)

걱정되는 부분이 몇가지 있긴 하지만 그래도 아이패드 출시로 많은 변화가 감지되고 있다는 점은 점점 흥미를 유발합니다.


윈도우모바일 글쎄...

 바야흐로 모바일 운영체제 춘추전국 시대에 들어섰다. 하루가 다르게 세력간 힘의 균형이 바뀌고 있는데 그중에 유독 고전을 면치 못하고 있는 나라가 있으니 바로 마이크로소프트(MS)다. MS는 기존에 깔아놓은 많은 응원군에도 불구하고 모바일 전장에서는 이상하게도 세력을 형성하지 못하고 빌빌거리고 있는데 왜 그런지 한번 생각해 보자.

우리가 흔히 MS하면 윈도우를 떠올리게 마련이다. 그도 그럴것이 데스크탑 킬러 운영체제인 윈도우로 MS는 지금까지 성장했다. 데스크탑 분야에 있어선 MS가 누구에게도 밀려본적이 없는데 유독 모바일 분야에선 맥을 못추고 있고, 우리 또한 모바일 분야에서 윈도우가 웬지 낯설다.

낯설다는 상황을 좀더 살펴보면 두가지인데, 첫번째로 모바일 윈도우의 변함(?)없는 윈도우 스타일이다. 쉽게 말하면 데스크탑의 윈도우 환경을 그대로 모바일에 구현해 놓고 있는데, 아이폰이나 안드로이드 스마트폰이 나오면서 윈도모바일은 완전 시골 촌티를 내고 있어 소비자들 눈밖에 나서 낯설다는 것이다.

두번째로 총제적인 문제인데 모바일 시장에 대한 전략이 없는것 같다는 생각이 든다. 뉴스를 읽어보니 이번에 MS가 윈도우모바일7에 대대적인 수술을 단행한다고 하는데, 이런 사실을 보면 MS가 모바일 시장에서 핵심을 잡지 못하고 갈팡질팡하고 있다는 느낌을 지울수가 없다. 보여지는 UI를 수정한다고 소비자들이 다시 MS를 선택할까?

소비자를 이해하고 참여를 유도하는 아이폰/안드로이드 스마트폰을 선두로 모바일 시장은 춘추전국 시대의 극을 달리고 있다.

2010년 1월 26일 화요일

AVD 스킨변경

■ 안드로이드 AVD 스킨을 변경해 봅시다.
 안드로이드 SDK가 설치된 폴더중에 platforms\버전별 안드로이드 폴더\Skins\에 해당 파일을 풀어 놓으면 스킨을 입힐 수 있습니다.



AVD manager -> Virtual Devices -> [New]