2010년 5월 31일. KT-KTF 합병 1주년 간담회가 있었습니다.



KT-KTF 합병 1주년 간담회에선 아래와 같은 이야기가 나왔습니다.


넥서스원을 6월 중순 온라인을 통해서, 7월 중에 KT 유통망을 통해 판매하겠습니다. 최신버전인 안드로이드 2.2(프로요)가 탑재될것입니다.

이 날에는 정말 넥서스원이 국내에 KT에서 출시된다는걸 확인을 하였습니다.


그리고 2010년 6월 6일. KT ‘넥서스원’ 가격 승부수…출고가 60만원대로 란 기사가 떴습니다.

이번에 나온 기사에서 Google에서 출시한 Android 폰인 NexusOne이 드디어 KT로 출시된다고 합니다.


Nexus One
Nexus One by johncatral 저작자 표시비영리변경 금지


기사를 보니

(생략)

KT의 전략 안드로이드폰 ‘넥서스원’이 ‘가격’을 최고의 무기로 꺼내들었다. 출고가를 60만원대로 결정했다. 24개월 약정 조건이다. 사실상 초기 구매 비용은 거의 없는 셈이다.

(생략)

‘넥서스원’의 사후관리는 HTC가 담당한다. 

(생략)

기사를 보고 확인된 내용

  • 출고가는 60만원대
  • 6월 21일 정식 발매
  • hTC가 A/S를 담당
  • Android 2.2 Froyo로 탑재된걸로 출시함
  • 외장메모리 16G로 넣고 출시함


이 기사를 보고 전 아래와 같은 생각을 하였습니다.

hTC Desire의 출고가가 얼마였더라?  넥서스원에 램추가되고, 외장 메모리 8G더 추가하고 센스 UI넣은 값이 30만원 추가된것일까요?


hTC Desire의 박스
hTC Desire의 박스 by StudioEgo 저작자 표시비영리동일조건 변경허락

참 할말이 안나오더군요. 솔직히 Google NexusOne과 hTC Desire는 외양만 조금 다르지 내부 구조는 거의 똑같습니다.(Desire엔 램이 좀 더 추가되고 트랙볼대신 광학 마우스가 들어가고 Sense UI가 추가된 것밖에?)

SKT가 안드로이드 플랫폼의 스마트폰을 대거 출시 한다고 하였지만, Google Android Platform의 Reference Phone인 NexusOne을 KT로 출시한다니 이제 게임 끝났습니다.


이유는 업데이트입니다.

Android OS가 지속적인 업데이트가 되텐데, 제일 먼저 NexusOne부터 업데이트가 된 후, Google Android Platform에 대해서 Google과 협력관계가 있는 hTC가 그 다음 업데이트, 이후엔 나머지 제조사들의 업데이트는 정말 늦게 나올겁니다. (나머지 제조사들은 통신사와의 관계과 통신사 전용 앱들때문에 업데이트하는데 앱 테스트를 해야해서 넥서스원과 hTC폰보다는 늦게 출시될듯한건 불보듯한 사실 - 한국 기준입니다.)

SKT에서 내는 안드로이드폰들은 htc에서 낸 디자이어를 빼곤 전부 SKT의 서비스를 탑재하고 SKAF와 통합메시지함(모토로이는 제외)을 넣었습니다.

 Android OS에 SKT서비스와 통합하려면 엄청난 시간이 나올건데 제대로 업데이트가 반영될지가 의문스럽습니다. 시간에 쫒겨 버그가 생긴채 나올 위험성이 크다는 이야기이죠.

안드로이드 OS 업데이트가 빠르다 보니 업데이트를 반영하는것도 힘든데다 SKT서비스를 제대로 쓰기 위해서는 테스트 과정을 해야하니 Android 업데이트를 빨리 받기가 SKT 단말기에선 힘들다는 결론이 나오죠

넥서스원은 KT에서 아마도 거의 건드리지 않고 낼테니 업데이트는 제일 빠르게 될듯 하구요.

 이로서, 넥서스원이 보통 휴대폰과는 전혀 차원이 다른 구글 레퍼런스 안드로이드폰입니다.

첨언하여, 넥서스원은 개발자들에게도 매력이 있는 폰입니다. 개발자들에겐 개발용 폰으로는 구글 레퍼런스 폰인 넥서스원에서 돌아가야 앱이 제대로 돌아가는지 확인이 되고 마켓에 앱을 올릴 수 있을것이기 때문입니다.


넥서스원이라는 구글 레퍼런스폰의 출현으로 안드로이드폰은 KT가 진리 -_-;; 안드로이드폰 낸다는 SKT는 또라이 병신이라고 할 정도로 왜 넥서스원을 내지 못했는지가 궁금합니다 

KT는 이로서 제대로 된 스마트폰 라인업이 완성되었습니다.

Apple의 iPhone, Google NexusOne(Android), Nokia 단말기(Symbian S60v3, S60v5), 쇼옴니아, 옴니아팝, 라일라(Windows Mobile).

SKT 휴대폰보다는 스마트폰 종류는 별로 없지만, 제대로 된 스마트폰을 쓸수 있게 만들었으니 누가 KT를 싫어하겠습니까? ㅎㅎ

KT의 행보가 정말 대단하군요.

KT 장기가입자로서 Nokia 6210s를 넥서스원으로 교체하고픈 심정입니다.

ps. SKT로 hTC Desire를 이미 구매해서, KT의 넥서스원 출시가 정말 배가 아픕니다. 

Buy me a coffeeBuy me a coffee



Google's Andy Rubin, who heads up the company's Android effort, with a display model of the Nexus One phone at the company's Mountain View headquarters, May 25, 2010. (Patrick Tehan, Mercury News) - 출처 http://www.mercurynews.com/ci_15184465?nclick_check=1


Andy Rubin 구글 부사장과의 인터뷰(Mercury News interview: Andy Rubin, vice president, mobile platforms, Google)에서 "안드로이드 운영체제(Android OS) 업데이트를 이제 1년에 한 번만한다"고 하군요.

구글의 Android OS가 애플의 iPhone OS처럼 1년에 한번씩 OS를 발표하게 된듯 합니다.

(출처: Mercury News interview: Andy Rubin, vice president, mobile platforms, Google )
Our product cycle is now, basically twice a year, and it will probably end up being once a year when things start settling down, because a platform that's moving — it's hard for developers to keep up.

현재의 개발 사이클에서 1년에 한 번씩 제품을 출시하지만, 아마도 이번엔 1번으로 줄인다. 플랫폼을 이동시켜야하기 때문. 개발자들에게 모두 따르긴 어렵다. 하군요.

(※ 인터뷰에서 다룬 내용은 블로터닷컴에서 매우 상세히 다루고 있습니다.- “안드로이드 업데이트 1년에 한 번만” )


구글 안드로이드 OS가 잦은 업데이트로 인한 피로도를 줄이고 제조사나 이동통신사가 새로운 버전을 대응할 수 있고, 개발자들이 앱을 개발하는데 무리없는 주기를 갖기 위해서 안드로이드 업데이트를 1년에 한번씩만한다는 것이 요지입니다.


그리고 전세계에 40억개의 스마트폰, 14억개의 Connected PC (인터넷에 연결된 PC, 넷북, 타블렛, 데스크탑종류등), 12억개의 자동차,  8억개의 TV가 있는데 안드로이드 OS는 4개의 타겟인 스마트폰, PC, 자동차, TV 에 안드로이드 OS를 확산하려고 하는 걸 보면 세계 정복을 할듯할 느낌이 듭니다.

(출처: Mercury News interview: Andy Rubin, vice president, mobile platforms, Google )

Q In terms of where Android goes next, what types of devices are interesting to you beyond mobile phones?

A You can sort those product segments based on how many devices are out there, what's the total market size for these things.

We're at about 4 billion cell phones. About 1.4 billion Internet connected PCs — that includes desktop and laptops and everything else. Like 1.2 billion automobiles. Some 800 million TVs.

And it's like, "OK, let's target the top four." Let's do everything we can to get the big ones. Remember, our business is volume, because it's an advertising business and we want to delight a lot of people. And how do you delight a lot of people? You get in the products that they use every day.

(※ 인터뷰에서 다룬 내용은 블로터닷컴에서 매우 상세히 다루고 있습니다.- “안드로이드 업데이트 1년에 한 번만” )

그리고 안드로이드 OS가 TV에 적용 될것이라는 말까지 나왔는데 과연 IPTV시장에서 성공할지는 앞으로 알아봐야겠지요?  

(Apple TV가 죽을 쑤는 것과 대형 TV제조사들이 Google TV OS를 허용할지가... 진입장벽이 높다고 생각을 많이 합니다. 아무럼 그 벽을 깨면 성공하겠지만^^)

안드로이드 OS가 자동차에도 적용된다면 어떻게 될련지는 아직도 상상이 되지 않습니다. 아직 자동차 분야는 네비게이션 뿐만 아니라 운전자가 운전하는데 어떻게 가야 기름을 절약하는지 이런 걸 안드로이드 OS가 한다는 이야기일까요?



구글 부사장님의 인터뷰를 보면 안드로이드 플랫폼이 스마트폰, PC뿐만 아니라 자동차, TV등에 진출하고 Ubiquitous Computing을 향해 나아갈것이라는 의도도 보입니다.

이 안드로이드 플랫폼이 성공을 하면 우리 생활에서 Google이 들어간 제품, 서비스를 안 쓸래야 안쓸수가 없을듯 하군요.

(ps. 국내 포털, 국내 스마트폰 제조사, 국내 TV제조사, 국내 자동자 제조사 모두 Google의 행보를 보면서 경계해야할겁니다. - 언제 Google에게 밥 그릇이 뺏길지는 모를 일이죠? )

Buy me a coffeeBuy me a coffee


Gold Card작성을 하지 않았으면 Rooting을 잠시 보류하고 Gold Card부터 작성을 합니다.
2010/05/26 - [Mobile/Android] - HTC Desire Rooting기록 - 1. Gold Card작성하기.

Rooting을 하기 전에 정말 주의 및 경고를 줄 것이 있습니다.

  1. 루팅에 대한 모든 책임은 사용자에게 있습니다.
  2. SKT의 순정롬으로 사용할때 전혀 문제 없이 통화, 문자, MMS등이 보내지지만, Unroot된 상태로 돌아갈수 없습니다.
  3. Rooting을 하기전에 모든 자료들의 백업을 하시기 바랍니다. 내부용량에 있던 자료들이 다 날라갑니다.
  4. 만약 고장등의 문제가 있어도 정상 수리가 될 확률도 낮고, 벽돌되면 못쓰게 되니 명심하시기 바랍니다.


맨 처음에는 hTC Desire를 루팅하여 Desire의 기본 롬을 쓰게 되는 법을 다룹니다.

HTC 디자이어 루팅 #.2 루팅시작 에서 파일을 다운로드 받은 후에 압축을 풉니다.

여기에서는 Ubuntu를 기준으로 설명을 합니다. 위의 링크에선 Windows를 기준으로 설명하였지만 리눅스나 맥에서도 따라할 수 있습니다.

(※ 루팅전에 백업은 필수. 그리고 adb 명령어나 ddms로 desire가 인식되는지 확인해야 합니다.)

  1. 다운받은 파일의 압축을 풉니다.
  2. HTC 디자이어와 PC연결 케이블 연결을 해제 합니다. 이후에 디자이어 전원을 끕니다. 이후엔 앞에서 만든 골드카드를 삽입. 
  3. 디자이어의 취소(뒤로가기) 버튼을 누른채 전원을 켭니다.
  4. 화면 중앙에 빨간 박스 안에 FAST BOOT라고 써진게 나오면 PC와 케이블 연결.
  5. 터미널에서 'step1-linux.sh' (Mac이라면 'step1-mac.sh') 입력 후 엔터.
  6. 작업이 완료되면 다시 부트로더의 화면이 나오고 잠시 대기한다.
  7. 완료후 디자이어의 배터리 분리. 골드카드를 빼고 다른 티플래쉬 카드를 삽입. 또는 골드카드를 포맷후 다시 삽입해야합니다.
  8. 볼륨다운 버튼을 누른채 전원을 켠다.


  9. 메뉴에서 RECOVERY 선택.(볼륨다운 키로 메뉴 이동. 전원버튼으로 선택)
  10. 디자이어에서 경고 화면이 나오면 도스창에 'step2-windows.bat' 입력 후 엔터.
  11. 작업이 정상적으로 진행이 되면 디자이어의 화면이 리커버리 모드로 전환.
  12. 'Wipe' 모드에 들어가서 맨 위에서부터 차례대로 (트랙패드로 이동, 눌러서 선택. 이전 메뉴는 볼륨다운사용)

  13. 'wipe data/factory reset', 'wipe cache', 'wipe Dalvik-cache' 3가지 메뉴를 실행해서 캐시를 삭제.
  14. 'Flash zip from sdcard'를 선택. 다음 화면에서 'rootedupdate.zip'을 선택

  15. 루팅이 끝났습니다.

이후에 hTC Desire가 루팅된 상태에서 SKT 롬으로 돌아가 정상 작동되는 법을 다룹니다.
앞에서는 디자이어 기본롬으로 루팅을 했기 때문에 뭔가 빠진듯한 허전한 느낌이 나올겁니다

그렇기 때문에 HTC 디자이어 루팅 #.3 추가 내용에 있는내용을 보고 SKT롬을 올려야합니다.

  1. 위의 링크에서 다운로드 받은 pre-rooted-skt.zip파일을 티플래쉬 최상위에 복사.
  2. 디자이어의 전원을 끈다.
  3. 볼륨다운을 누른채 휴대폰을 켠다.
  4. 부트로더화면이 나오면 볼륨키를 이용해서 RECOVERY선택.
  5. 터미널에서 recovery-linux.sh (Mac이라면 'recovery-mac.sh')  입력 후 엔터. 
  6. 정상적으로 진행이 되면 디자이어의 화면이 Recovery 모드로 전환
  7. Recovery 모드에서 트랙패드를 이용해서 'wipe' 선택.
  8. 'wipe' 안의 맨 위에서 3개를 차례대로 실행.(캐쉬삭제 작업)
  9. 삭제가 다 되면 볼륨다운을 눌러 이전 메뉴로 이동.
  10. 메뉴중에 update from sd를 선택.
  11. 다음 화면에서 1번에서 복사했던 pre-rooted-skt.zip 선택.


아래는 루팅후, adb로 root권한으로 휴대폰을 shell로 접근하는 모습입니다.

루팅하기전엔 $로 표기되지만 루팅이 되면 #으로 변합니다.

리눅스같은 *NIX류의 OS에선 터미널에서 Root권한이 있으면 #으로 표기하고 Root권한이 없으면 $로 표시하는걸 그대로 똑같이 보여주군요.

(역시 Android OS는 Linux기반의 운영체제 딱지가 보이군요)


Buy me a coffeeBuy me a coffee

아이폰 및 안드로이드폰, WM폰에서 접속할수 있는 네이트 모바일 웹버전이 나왔습니다.

이제서야 모바일폰에서 네이트, 싸이월드, 미니홈피등을 즐길수 있을겁니다.



hTC Desire (Android 2.1)에서 본 Nate 모바일 홈페이지 http://m.nate.com/



예전만 해도 네이트 홈페이지가 컴퓨터에 최적화 되어서 안드로이드폰에서 제대로 안보여지는 단점이 있었습니다만, 이제는 모바일 웹 버전이 나오면서 깔끔해진것 같습니다.

네이트, 미니홈피 등등 관련 네이트 서비스들이 안드로이드폰에서 정상적으로 작동되는 모습을 확인하였습니다. 

경쟁업체인 네이버(http://m.naver.com/), 다음(http://m.daum.net/), 파란(http://m.paran.com/)보다 늦었지만, 늦은 만큼 잘 만든 느낌이 듭니다. 그래도 이제야 시행착오는 많이 겪을듯. (다음, 네이버, 파란이 모바일 홈페이지 만드는데 과거에 시행착오 많이 겪었습니다 ㅎㅎ)

그리고 안드로이드용 앱이 3가지 출시되었다는걸 알게 되었습니다. 그러나 아직 안드로이드 마켓에는 올라가지 않은 모양입니다. -_-;; (NHN처럼 안드로이드 마켓에 올리지) 

hTC Desire (Android 2.1)에서 본 Nate 모바일 애플리케이션 목록. 아직까지 3개만 준비된 모양입니다. 앞으로 나아지겠죠.


이제 SK컴즈도 안드로이드+아이폰 앱을 내놓으면 모바일 웹관련쪽에서 엄청난 반항을 일으키며 업계 2위까진 올듯한 느낌이 듭니다. 우선 킬러 앱인 싸이월드+네이트온이 있으니 이걸 제대로 활용하면 업계 1위 네이버도 위험할듯한 느낌이 듭니다.

Buy me a coffeeBuy me a coffee

전자신문에 이런 글이 실렸습니다.



기사 내용에서 저의 눈을 의심한 내용이 있었으니 아래와 같습니다.


삼성전자가 ‘갤럭시 S’를 출시한다. 삼성 내부에서 ‘갤럭시 S’의 ‘S’는 ‘(이)순신’을 의미한다. ‘스페셜(특별)’ ‘스타트(출발)’ ‘삼성’이라는 해석도 있지만 ‘순신 프로젝트’가 대세다. 스마트폰 시장에서 1대 100 싸움을 이기고 싶은 욕망을 담았다. 명랑대첩에서의 대승을 거둔 뒤 전세를 뒤집었던 영웅 이순신처럼. ‘삼전도 굴욕’과 ‘한’을 보상할 ‘거북선’처럼.

갤럭시 S를 이순신에 비유하다니 할말이 없더군요.

그리고 S전자 마케팅 부서는 S그룹 안티라는 생각을 쭉 해봅니다.

저대로 안을 구상한 사람, 그리고 결제한 임원들 모두 회장님한테 혼나봐야 할까요?

요즘 시대가 애국심이 밥먹여주는 70~80년대도 아니고, 세계화시대라 국수주의적 애국심 마케팅뿐만 아니라 애국심을 팔아먹는 건 지양할 때입니다.


아래는 어느날, 집근처 S전자 디지털 프라자에 붙였던 옴니아2 광고입니다. 

'대한민국 대표 스마트폰','대한민국 스마트폰의 자존심'이라며 태극기까지 걸고 애국심광고를  하였죠.

2009/12/20 - 삼성전자 서비스센터 길동점에 붙여있는 티옴니아2포스터. '대한민국 스마트폰의 자존심'이라며 태극기까지 걸고 애국심광고를 함.


휴대폰을 잘 만들어서 파는 것도 좋지만 대한민국 스마트폰의 자존심이라고 태극기 걸며 광고한다고 고객들이 국산이라고 사는 보장이 없습니다.

고객의 NEEDS(필요)를 제대로 못맞추는 회사는 자연도태된다는 사실을 아직도 모르고 있을까요??

Buy me a coffeeBuy me a coffee


관련 링크
Unlocking AndroidA Developer's Guide(출판사 링크) - http://www.manning.com/ableson/
unlocking-android (Google Code) - http://code.google.com/p/unlocking-android/ 


외국에서 출판되어 번역된 언로킹 안드로이드란 책을 보니 정말 이것도 괜찮은 책이다는 생각을 하였습니다.

책 소스코드도 Google Code 홈페이지인 http://code.google.com/p/unlocking-android/ 에서 쉽게 구할 수 있더군요.


1. 소스 코드를 다운로드 받는 방법

http://code.google.com/p/unlocking-android/downloads/list 에 있는 zip파일을 다운로드 받아서 설치한다.


2. subversion을 사용해서 다운로드 받기 (svn checkout)

(Windows, Linux, Mac등 여러가지 플랫폼에서 subversion을 설치했으면 언로킹 안드로이드 소스코드를 자유롭게 다운로드를 할 수 있습니다.)

맨 처음에는

svn checkout http://unlocking-android.googlecode.com/svn/trunk/ unlocking-android-read-only

실행하여 unlocking android 소스 코드를 받을려고 하니...

README.TXT에서 Chapter별로 다운로드 받으라는 친절한 설명이 나옵니다 orz.

그러면  checkout한 폴더로 들어가서 아래와 같이 Chapter1~13까지 다운로드를 해봅니다.


svn co http://unlocking-android.googlecode.com/svn/chapter1
svn co http://unlocking-android.googlecode.com/svn/chapter2
svn co http://unlocking-android.googlecode.com/svn/chapter3
svn co http://unlocking-android.googlecode.com/svn/chapter4
svn co http://unlocking-android.googlecode.com/svn/chapter5
svn co http://unlocking-android.googlecode.com/svn/chapter6
svn co http://unlocking-android.googlecode.com/svn/chapter7
svn co http://unlocking-android.googlecode.com/svn/chapter8
svn co http://unlocking-android.googlecode.com/svn/chapter9
svn co http://unlocking-android.googlecode.com/svn/chapter10
svn co http://unlocking-android.googlecode.com/svn/chapter11
svn co http://unlocking-android.googlecode.com/svn/chapter12
svn co http://unlocking-android.googlecode.com/svn/chapter13


또는 예제별로 받고 싶으면 아래와 같은 명령어를 사용하시면 됩니다.

Sample Code by Chapter

1. Targeting Android

WhereDoYouLive? 
svn co http://unlocking-android.googlecode.com/svn/chapter1/trunk/

2. Development Environment

AndroidTipCalculator
svn co http://unlocking-android.googlecode.com/svn/chapter2/trunk/

3. User Interfaces

RestaurantFinder
svn co http://unlocking-android.googlecode.com/svn/chapter3/trunk/RestaurantFinder

4. Intents and Services

WeatherReporter
svn co http://unlocking-android.googlecode.com/svn/chapter4/trunk/WeatherReporter/
 ServiceBinderExample
svn co http://unlocking-android.googlecode.com/svn/chapter4/trunk/ServiceBinderExample/

5. Storing and Retrieving Data

SharedPreferencesTester 
svn co http://unlocking-android.googlecode.com/svn/chapter10/trunk/SoundRecordingDemo/
SharedPreferencesOtherPackageTester 
svn co http://unlocking-android.googlecode.com/svn/chapter5/trunk/SharedPreferencesOtherPackageTester/
FileStorage 
svn co http://unlocking-android.googlecode.com/svn/chapter5/trunk/FileStorage/
ProviderExplorer 
svn co http://unlocking-android.googlecode.com/svn/chapter5/trunk/ProviderExplorer/
ProviderWidgets
svn co http://unlocking-android.googlecode.com/svn/chapter5/trunk/ProviderWidgets/

6. Networking

NetworkExplorer 
svn co http://unlocking-android.googlecode.com/svn/chapter6/trunk/NetworkExplorer/
NetworkSocketServer
svn co http://unlocking-android.googlecode.com/svn/chapter6/trunk/NetworkSocketServer/

7. Telephony

TelephonyExplorer
svn co http://unlocking-android.googlecode.com/svn/chapter7/trunk/TelephonyExplorer/

8. Notifications and Alarms

SimpleAlarm 
svn co http://unlocking-android.googlecode.com/svn/chapter8/trunk/SimpleAlarm/
NotifyAlarm 
svn co http://unlocking-android.googlecode.com/svn/chapter8/trunk/NotifyAlarm/
SMSNotifyExample 
svn co http://unlocking-android.googlecode.com/svn/chapter8/trunk/SMSNotifyExample/
SMSNotifyExample2
svn co http://unlocking-android.googlecode.com/svn/chapter8/trunk/SMSNotifyExample2/

9. Graphics and Animation

BounceyBall 
svn co http://unlocking-android.googlecode.com/svn/chapter9/trunk/BounceyBall/
OpenGLSquare 
svn co http://unlocking-android.googlecode.com/svn/chapter9/trunk/OpenGLSquare/
XMLAnimate 
svn co http://unlocking-android.googlecode.com/svn/chapter9/trunk/XMLAnimate/
XMLDraw
svn co http://unlocking-android.googlecode.com/svn/chapter9/trunk/XMLDraw/

10. Multimedia

SimpleVideo 
svn co http://unlocking-android.googlecode.com/svn/chapter10/trunk/SimpleVideo/
SimpleCamera 
svn co http://unlocking-android.googlecode.com/svn/chapter10/trunk/SimpleCamera/
SoundRecordingDemo 
svn co http://unlocking-android.googlecode.com/svn/chapter10/trunk/SoundRecordingDemo/
MediaPlayerExample
svn co http://unlocking-android.googlecode.com/svn/chapter10/trunk/MediaPlayerExample/

11. Location Based Services

WindWaves 
svn co http://unlocking-android.googlecode.com/svn/chapter11/trunk/WindWaves/
GeocodeExample
svn co http://unlocking-android.googlecode.com/svn/chapter11/trunk/GeocodeExample/

12. Putting it all together 1: A Field Service Application

Android Client 
svn co http://unlocking-android.googlecode.com/svn/chapter12/trunk/android
Server
svn co http://unlocking-android.googlecode.com/svn/chapter12/trunk/server

13. Hacking Android

DaytimeClient 
svn co http://unlocking-android.googlecode.com/svn/chapter13/trunk/daytimeclient
Native C Code
svn co http://unlocking-android.googlecode.com/svn/chapter13/trunk/native




실행화면

C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter1

A    chapter1\trunk

A    chapter1\trunk\.classpath

A    chapter1\trunk\assets

A    chapter1\trunk\.project

A    chapter1\trunk\AndroidManifest.xml

A    chapter1\trunk\src

A    chapter1\trunk\src\com

A    chapter1\trunk\src\com\msi

A    chapter1\trunk\src\com\msi\manning

A    chapter1\trunk\src\com\msi\manning\unlockingandroid

A    chapter1\trunk\src\com\msi\manning\unlockingandroid\R.java

A    chapter1\trunk\src\com\msi\manning\unlockingandroid\AWhereDoYouLive.java

A    chapter1\trunk\res

A    chapter1\trunk\res\values

A    chapter1\trunk\res\values\strings.xml

A    chapter1\trunk\res\drawable

A    chapter1\trunk\res\drawable\icon.png

A    chapter1\trunk\res\layout

A    chapter1\trunk\res\layout\main.xml

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter2

A    chapter2\trunk

A    chapter2\trunk\.classpath

A    chapter2\trunk\assets

A    chapter2\trunk\.project

A    chapter2\trunk\AndroidManifest.xml

A    chapter2\trunk\src

A    chapter2\trunk\src\com

A    chapter2\trunk\src\com\manning

A    chapter2\trunk\src\com\manning\unlockingandroid

A    chapter2\trunk\src\com\manning\unlockingandroid\ChapterTwo.java

A    chapter2\trunk\src\com\manning\unlockingandroid\R.java

A    chapter2\trunk\res

A    chapter2\trunk\res\values

A    chapter2\trunk\res\values\strings.xml

A    chapter2\trunk\res\drawable

A    chapter2\trunk\res\drawable\icon.png

A    chapter2\trunk\res\layout

A    chapter2\trunk\res\layout\main.xml

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter3

A    chapter3\trunk

A    chapter3\trunk\RestaurantFinder

A    chapter3\trunk\RestaurantFinder\test

A    chapter3\trunk\RestaurantFinder\test\com

A    chapter3\trunk\RestaurantFinder\test\com\msi

A    chapter3\trunk\RestaurantFinder\test\com\msi\manning

A    chapter3\trunk\RestaurantFinder\test\com\msi\manning\restaurant

A    chapter3\trunk\RestaurantFinder\default.properties

A    chapter3\trunk\RestaurantFinder\.classpath

A    chapter3\trunk\RestaurantFinder\assets

A    chapter3\trunk\RestaurantFinder\.project

A    chapter3\trunk\RestaurantFinder\AndroidManifest.xml

A    chapter3\trunk\RestaurantFinder\src

A    chapter3\trunk\RestaurantFinder\src\com

A    chapter3\trunk\RestaurantFinder\src\com\msi

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\ReviewAdapter.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\RestaurantFinderApplication.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\ReviewCriteria.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\ReviewDetail.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\data

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\data\ReviewHandler.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\data\Review.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\data\ReviewFetcher.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\Constants.java

A    chapter3\trunk\RestaurantFinder\src\com\msi\manning\restaurant\ReviewList.java

A    chapter3\trunk\RestaurantFinder\docs

A    chapter3\trunk\RestaurantFinder\docs\base_attributes.xml

A    chapter3\trunk\RestaurantFinder\docs\temp.xml

A    chapter3\trunk\RestaurantFinder\docs\base_review_example.xml

A    chapter3\trunk\RestaurantFinder\docs\reviews_attributes.xml

A    chapter3\trunk\RestaurantFinder\res

A    chapter3\trunk\RestaurantFinder\res\values

A    chapter3\trunk\RestaurantFinder\res\values\arrays.xml

A    chapter3\trunk\RestaurantFinder\res\values\colors.xml

A    chapter3\trunk\RestaurantFinder\res\values\styles.xml

A    chapter3\trunk\RestaurantFinder\res\values\strings.xml

A    chapter3\trunk\RestaurantFinder\res\drawable

A    chapter3\trunk\RestaurantFinder\res\drawable\no_review_image.png

A    chapter3\trunk\RestaurantFinder\res\drawable\restaurant_icon.png

A    chapter3\trunk\RestaurantFinder\res\anim

A    chapter3\trunk\RestaurantFinder\res\anim\scaler.xml

A    chapter3\trunk\RestaurantFinder\res\layout

A    chapter3\trunk\RestaurantFinder\res\layout\review_detail.xml

A    chapter3\trunk\RestaurantFinder\res\layout\review_criteria.xml

A    chapter3\trunk\RestaurantFinder\res\layout\spinner_view_dropdown.xml

A    chapter3\trunk\RestaurantFinder\res\layout\spinner_view.xml

A    chapter3\trunk\RestaurantFinder\res\layout\review_list.xml

A    chapter3\trunk\RestaurantFinder\README.txt

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlec

ode.com/svn/chapter4

A    chapter4\trunk

A    chapter4\trunk\ServiceBinderExample

A    chapter4\trunk\ServiceBinderExample\default.properties

A    chapter4\trunk\ServiceBinderExample\.classpath

A    chapter4\trunk\ServiceBinderExample\assets

A    chapter4\trunk\ServiceBinderExample\.project

A    chapter4\trunk\ServiceBinderExample\AndroidManifest.xml

A    chapter4\trunk\ServiceBinderExample\src

A    chapter4\trunk\ServiceBinderExample\src\com

A    chapter4\trunk\ServiceBinderExample\src\com\msi

A    chapter4\trunk\ServiceBinderExample\src\com\msi\manning

A    chapter4\trunk\ServiceBinderExample\src\com\msi\manning\binder

A    chapter4\trunk\ServiceBinderExample\src\com\msi\manning\binder\SimpleMathService.java

A    chapter4\trunk\ServiceBinderExample\src\com\msi\manning\binder\ISimpleMathService.aidl

A    chapter4\trunk\ServiceBinderExample\src\com\msi\manning\binder\ActivityExample.java

A    chapter4\trunk\ServiceBinderExample\res

A    chapter4\trunk\ServiceBinderExample\res\values

A    chapter4\trunk\ServiceBinderExample\res\values\strings.xml

A    chapter4\trunk\ServiceBinderExample\res\drawable

A    chapter4\trunk\ServiceBinderExample\res\drawable\icon.png

A    chapter4\trunk\ServiceBinderExample\res\layout

A    chapter4\trunk\ServiceBinderExample\res\layout\activity_example.xml

A    chapter4\trunk\ServiceBinderExample\README.txt

A    chapter4\trunk\WeatherReporter

A    chapter4\trunk\WeatherReporter\default.properties

A    chapter4\trunk\WeatherReporter\.classpath

A    chapter4\trunk\WeatherReporter\assets

A    chapter4\trunk\WeatherReporter\.project

A    chapter4\trunk\WeatherReporter\AndroidManifest.xml

A    chapter4\trunk\WeatherReporter\src

A    chapter4\trunk\WeatherReporter\src\com

A    chapter4\trunk\WeatherReporter\src\com\msi

A    chapter4\trunk\WeatherReporter\src\com\msi\manning

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\service

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\service\LocationHelper.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\service\WeatherAlertService.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\service\WeatherAlertServiceReceiver.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\ReportViewSavedLocations.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\ReportSpecifyLocation.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\DBHelper.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\YWeatherHandler.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\WeatherForecast.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\WeatherCondition.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\YWeatherFetcher.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\data\WeatherRecord.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\ReportViewDetail.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\weather\Constants.java

A    chapter4\trunk\WeatherReporter\src\com\msi\manning\AndroidManifest.xml

A    chapter4\trunk\WeatherReporter\docs

A    chapter4\trunk\WeatherReporter\docs\us_cities_latlong.txt

A    chapter4\trunk\WeatherReporter\docs\yweather.xml

A    chapter4\trunk\WeatherReporter\docs\yweather_cond.txt

A    chapter4\trunk\WeatherReporter\res

A    chapter4\trunk\WeatherReporter\res\values

A    chapter4\trunk\WeatherReporter\res\values\styles.xml

A    chapter4\trunk\WeatherReporter\res\values\strings.xml

A    chapter4\trunk\WeatherReporter\res\drawable

A    chapter4\trunk\WeatherReporter\res\drawable\cond8.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond9.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond10.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond11.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond12.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond30.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond13.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond31.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond32.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond14.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond15.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond33.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond16.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond34.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond17.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond35.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond36.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond18.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond19.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond37.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond38.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond39.gif

A    chapter4\trunk\WeatherReporter\res\drawable\severe_weather_120.png

A    chapter4\trunk\WeatherReporter\res\drawable\weather_sun_clouds_45.png

A    chapter4\trunk\WeatherReporter\res\drawable\cond20.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond21.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond40.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond22.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond41.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond23.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond42.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond24.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond43.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond25.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond44.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond26.gif

A    chapter4\trunk\WeatherReporter\res\drawable\severe_weather_24.png

A    chapter4\trunk\WeatherReporter\res\drawable\cond45.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond27.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond46.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond28.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond47.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond29.gif

A    chapter4\trunk\WeatherReporter\res\drawable\weather_sun_clouds_120.png

A    chapter4\trunk\WeatherReporter\res\drawable\severe_weather_45.png

A    chapter4\trunk\WeatherReporter\res\drawable\cond1.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond2.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond3.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond4.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond5.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond6.gif

A    chapter4\trunk\WeatherReporter\res\drawable\cond7.gif

A    chapter4\trunk\WeatherReporter\res\layout

A    chapter4\trunk\WeatherReporter\res\layout\report_view_saved_locations.xml

A    chapter4\trunk\WeatherReporter\res\layout\report_specify_location.xml

A    chapter4\trunk\WeatherReporter\res\layout\report_view_detail.xml

A    chapter4\trunk\WeatherReporter\res\layout\list_item_1.xml

A    chapter4\trunk\WeatherReporter\README.txt

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter5

A    chapter5\trunk

A    chapter5\trunk\SharedPreferencesTester

A    chapter5\trunk\SharedPreferencesTester\.classpath

A    chapter5\trunk\SharedPreferencesTester\assets

A    chapter5\trunk\SharedPreferencesTester\.project

A    chapter5\trunk\SharedPreferencesTester\AndroidManifest.xml

A    chapter5\trunk\SharedPreferencesTester\src

A    chapter5\trunk\SharedPreferencesTester\src\com

A    chapter5\trunk\SharedPreferencesTester\src\com\msi

A    chapter5\trunk\SharedPreferencesTester\src\com\msi\manning

A    chapter5\trunk\SharedPreferencesTester\src\com\msi\manning\chapter5

A    chapter5\trunk\SharedPreferencesTester\src\com\msi\manning\chapter5\prefs

A    chapter5\trunk\SharedPreferencesTester\src\com\msi\manning\chapter5\prefs\SharedPrefTestInput.java

A    chapter5\trunk\SharedPreferencesTester\src\com\msi\manning\chapter5\prefs\SharedPrefTestOutput.java

A    chapter5\trunk\SharedPreferencesTester\res

A    chapter5\trunk\SharedPreferencesTester\res\values

A    chapter5\trunk\SharedPreferencesTester\res\values\strings.xml

A    chapter5\trunk\SharedPreferencesTester\res\drawable

A    chapter5\trunk\SharedPreferencesTester\res\drawable\icon.png

A    chapter5\trunk\SharedPreferencesTester\res\layout

A    chapter5\trunk\SharedPreferencesTester\res\layout\shared_preftest_input.xml


A    chapter5\trunk\SharedPreferencesTester\res\layout\shared_preftest_output.xml

A    chapter5\trunk\SharedPreferencesTester\README.txt

A    chapter5\trunk\ProviderWidgets

A    chapter5\trunk\ProviderWidgets\.classpath

A    chapter5\trunk\ProviderWidgets\assets

A    chapter5\trunk\ProviderWidgets\.project

A    chapter5\trunk\ProviderWidgets\AndroidManifest.xml

A    chapter5\trunk\ProviderWidgets\src

A    chapter5\trunk\ProviderWidgets\src\com

A    chapter5\trunk\ProviderWidgets\src\com\msi

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5\widget

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5\widget\Widget.java

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5\widget\WidgetExplorer.java

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5\widget\Constants.java

A    chapter5\trunk\ProviderWidgets\src\com\msi\manning\chapter5\widget\WidgetProvider.java

A    chapter5\trunk\ProviderWidgets\res

A    chapter5\trunk\ProviderWidgets\res\values

A    chapter5\trunk\ProviderWidgets\res\values\strings.xml

A    chapter5\trunk\ProviderWidgets\res\drawable

A    chapter5\trunk\ProviderWidgets\res\drawable\icon.png

A    chapter5\trunk\ProviderWidgets\res\layout

A    chapter5\trunk\ProviderWidgets\res\layout\provider_explorer.xml

A    chapter5\trunk\ProviderWidgets\README.txt

A    chapter5\trunk\.project

A    chapter5\trunk\FileStorage

A    chapter5\trunk\FileStorage\.classpath

A    chapter5\trunk\FileStorage\assets

A    chapter5\trunk\FileStorage\.project

A    chapter5\trunk\FileStorage\AndroidManifest.xml

A    chapter5\trunk\FileStorage\src

A    chapter5\trunk\FileStorage\src\com

A    chapter5\trunk\FileStorage\src\com\msi

A    chapter5\trunk\FileStorage\src\com\msi\manning

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage\CreateFile.java

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage\ReadXMLResourceFile.java

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage\ReadWriteSDCardFile.java

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage\ReadFile.java

A    chapter5\trunk\FileStorage\src\com\msi\manning\chapter5\filestorage\ReadRawResourceFile.java

A    chapter5\trunk\FileStorage\res

A    chapter5\trunk\FileStorage\res\values

A    chapter5\trunk\FileStorage\res\values\strings.xml

A    chapter5\trunk\FileStorage\res\xml

A    chapter5\trunk\FileStorage\res\xml\people.xml

A    chapter5\trunk\FileStorage\res\drawable

A    chapter5\trunk\FileStorage\res\drawable\icon.png

A    chapter5\trunk\FileStorage\res\raw

A    chapter5\trunk\FileStorage\res\raw\people.txt

A    chapter5\trunk\FileStorage\res\layout

A    chapter5\trunk\FileStorage\res\layout\read_xmlresource_file.xml

A    chapter5\trunk\FileStorage\res\layout\create_file.xml

A    chapter5\trunk\FileStorage\res\layout\read_write_sdcard_file.xml

A    chapter5\trunk\FileStorage\res\layout\read_file.xml

A    chapter5\trunk\FileStorage\res\layout\read_rawresource_file.xml

A    chapter5\trunk\FileStorage\README.txt

A    chapter5\trunk\ProviderExplorer

A    chapter5\trunk\ProviderExplorer\.classpath

A    chapter5\trunk\ProviderExplorer\assets

A    chapter5\trunk\ProviderExplorer\.project

A    chapter5\trunk\ProviderExplorer\AndroidManifest.xml

A    chapter5\trunk\ProviderExplorer\src

A    chapter5\trunk\ProviderExplorer\src\com

A    chapter5\trunk\ProviderExplorer\src\com\msi

A    chapter5\trunk\ProviderExplorer\src\com\msi\manning

A    chapter5\trunk\ProviderExplorer\src\com\msi\manning\chapter5

A    chapter5\trunk\ProviderExplorer\src\com\msi\manning\chapter5\providerexplorer

A    chapter5\trunk\ProviderExplorer\src\com\msi\manning\chapter5\providerexplorer\ProviderExplorer.java

A    chapter5\trunk\ProviderExplorer\res

A    chapter5\trunk\ProviderExplorer\res\values

A    chapter5\trunk\ProviderExplorer\res\values\strings.xml

A    chapter5\trunk\ProviderExplorer\res\drawable

A    chapter5\trunk\ProviderExplorer\res\drawable\icon.png

A    chapter5\trunk\ProviderExplorer\res\layout

A    chapter5\trunk\ProviderExplorer\res\layout\provider_explorer.xml

A    chapter5\trunk\ProviderExplorer\README.txt

A    chapter5\trunk\SharedPreferencesOtherPackageTester

A    chapter5\trunk\SharedPreferencesOtherPackageTester\.classpath

A    chapter5\trunk\SharedPreferencesOtherPackageTester\assets

A    chapter5\trunk\SharedPreferencesOtherPackageTester\.project

A    chapter5\trunk\SharedPreferencesOtherPackageTester\AndroidManifest.xml

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com\other

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com\other\manning

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com\other\manning\chapter5

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com\other\manning\chapter5\prefs

A    chapter5\trunk\SharedPreferencesOtherPackageTester\src\com\other\manning\chapter5\prefs\SharedPrefTestOtherOutput.java

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\values

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\values\strings.xml

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\drawable

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\drawable\icon.png

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\layout

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\layout\shared_prefte

st_output.xml

A    chapter5\trunk\SharedPreferencesOtherPackageTester\res\layout\main.xml

A    chapter5\trunk\SharedPreferencesOtherPackageTester\README.txt

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter6

A    chapter6\trunk

A    chapter6\trunk\NetworkSocketServer

A    chapter6\trunk\NetworkSocketServer\.classpath

A    chapter6\trunk\NetworkSocketServer\.project

A    chapter6\trunk\NetworkSocketServer\src

A    chapter6\trunk\NetworkSocketServer\src\com

A    chapter6\trunk\NetworkSocketServer\src\com\msi

A    chapter6\trunk\NetworkSocketServer\src\com\msi\manning

A    chapter6\trunk\NetworkSocketServer\src\com\msi\manning\uad

A    chapter6\trunk\NetworkSocketServer\src\com\msi\manning\uad\EchoServer.java

A    chapter6\trunk\NetworkSocketServer\README.txt

A    chapter6\trunk\NetworkExplorer

A    chapter6\trunk\NetworkExplorer\default.properties

A    chapter6\trunk\NetworkExplorer\.classpath

A    chapter6\trunk\NetworkExplorer\.project

A    chapter6\trunk\NetworkExplorer\AndroidManifest.xml

A    chapter6\trunk\NetworkExplorer\src

A    chapter6\trunk\NetworkExplorer\src\com

A    chapter6\trunk\NetworkExplorer\src\com\msi

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\ApacheHTTPViaHelper.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\SimpleSocket.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\HTTPHelperForm.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\GoogleClientLogin.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\Main.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\data

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\data\xml

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\data\xml\DeliciousPost.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\data\xml\DeliciousHandler.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\data\HTTPRequestHelper.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\SimpleGet.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\DeliciousRecentPosts.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\ApacheHTTPSimple.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\Constants.java

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\util

A    chapter6\trunk\NetworkExplorer\src\com\msi\manning\network\util\StringUtils.java

A    chapter6\trunk\NetworkExplorer\echo.jsp

A    chapter6\trunk\NetworkExplorer\res

A    chapter6\trunk\NetworkExplorer\res\values

A    chapter6\trunk\NetworkExplorer\res\values\strings.xml

A    chapter6\trunk\NetworkExplorer\res\drawable

A    chapter6\trunk\NetworkExplorer\res\drawable\icon.png

A    chapter6\trunk\NetworkExplorer\res\layout

A    chapter6\trunk\NetworkExplorer\res\layout\simple_socket.xml

A    chapter6\trunk\NetworkExplorer\res\layout\http_helper_form.xml

A    chapter6\trunk\NetworkExplorer\res\layout\google_client_login.xml

A    chapter6\trunk\NetworkExplorer\res\layout\main.xml

A    chapter6\trunk\NetworkExplorer\res\layout\simple_get.xml

A    chapter6\trunk\NetworkExplorer\res\layout\delicious_posts.xml

A    chapter6\trunk\NetworkExplorer\res\layout\apache_http_simple.xml

A    chapter6\trunk\NetworkExplorer\README.txt

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter7

A    chapter7\trunk

A    chapter7\trunk\TelephonyExplorer

A    chapter7\trunk\TelephonyExplorer\default.properties

A    chapter7\trunk\TelephonyExplorer\.classpath

A    chapter7\trunk\TelephonyExplorer\.project

A    chapter7\trunk\TelephonyExplorer\AndroidManifest.xml

A    chapter7\trunk\TelephonyExplorer\src

A    chapter7\trunk\TelephonyExplorer\src\com

A    chapter7\trunk\TelephonyExplorer\src\com\msi

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\PhoneNumberUtilsExample.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\Main.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\SmsReceiver.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\OutgoingCallReceiver.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\Constants.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\TelephonyManagerExample.java

A    chapter7\trunk\TelephonyExplorer\src\com\msi\manning\telephonyexplorer\SmsExample.java

A    chapter7\trunk\TelephonyExplorer\res

A    chapter7\trunk\TelephonyExplorer\res\values

A    chapter7\trunk\TelephonyExplorer\res\values\strings.xml

A    chapter7\trunk\TelephonyExplorer\res\drawable

A    chapter7\trunk\TelephonyExplorer\res\drawable\icon.png

A    chapter7\trunk\TelephonyExplorer\res\layout

A    chapter7\trunk\TelephonyExplorer\res\layout\main.xml

A    chapter7\trunk\TelephonyExplorer\res\layout\telmgrexample.xml

A    chapter7\trunk\TelephonyExplorer\res\layout\smsexample.xml

A    chapter7\trunk\TelephonyExplorer\res\layout\phonenumberutilsexample.xml

A    chapter7\trunk\TelephonyExplorer\README.txt

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter8

A    chapter8\trunk

A    chapter8\trunk\NotifyAlarm

A    chapter8\trunk\NotifyAlarm\.classpath

A    chapter8\trunk\NotifyAlarm\assets

A    chapter8\trunk\NotifyAlarm\.project

A    chapter8\trunk\NotifyAlarm\AndroidManifest.xml

A    chapter8\trunk\NotifyAlarm\src

A    chapter8\trunk\NotifyAlarm\src\com

A    chapter8\trunk\NotifyAlarm\src\com\msi

A    chapter8\trunk\NotifyAlarm\src\com\msi\manning

A    chapter8\trunk\NotifyAlarm\src\com\msi\manning\chapter8

A    chapter8\trunk\NotifyAlarm\src\com\msi\manning\chapter8\NotifyAlarm

A    chapter8\trunk\NotifyAlarm\src\com\msi\manning\chapter8\NotifyAlarm\AlarmRe

ceiver.java

A    chapter8\trunk\NotifyAlarm\src\com\msi\manning\chapter8\NotifyAlarm\SetAlar

m.java

A    chapter8\trunk\NotifyAlarm\res

A    chapter8\trunk\NotifyAlarm\res\values

A    chapter8\trunk\NotifyAlarm\res\values\strings.xml

A    chapter8\trunk\NotifyAlarm\res\drawable

A    chapter8\trunk\NotifyAlarm\res\drawable\alarm.png

A    chapter8\trunk\NotifyAlarm\res\drawable\icon.png

A    chapter8\trunk\NotifyAlarm\res\drawable\clock.png

A    chapter8\trunk\NotifyAlarm\res\layout

A    chapter8\trunk\NotifyAlarm\res\layout\main.xml

A    chapter8\trunk\SimpleAlarm

A    chapter8\trunk\SimpleAlarm\.classpath

A    chapter8\trunk\SimpleAlarm\assets

A    chapter8\trunk\SimpleAlarm\.project

A    chapter8\trunk\SimpleAlarm\AndroidManifest.xml

A    chapter8\trunk\SimpleAlarm\src

A    chapter8\trunk\SimpleAlarm\src\com

A    chapter8\trunk\SimpleAlarm\src\com\msi

A    chapter8\trunk\SimpleAlarm\src\com\msi\manning

A    chapter8\trunk\SimpleAlarm\src\com\msi\manning\chapter8

A    chapter8\trunk\SimpleAlarm\src\com\msi\manning\chapter8\simpleAlarm

A    chapter8\trunk\SimpleAlarm\src\com\msi\manning\chapter8\simpleAlarm\AlarmReceiver.java

A    chapter8\trunk\SimpleAlarm\src\com\msi\manning\chapter8\simpleAlarm\GenerateAlarm.java

A    chapter8\trunk\SimpleAlarm\res

A    chapter8\trunk\SimpleAlarm\res\values

A    chapter8\trunk\SimpleAlarm\res\values\strings.xml

A    chapter8\trunk\SimpleAlarm\res\drawable

A    chapter8\trunk\SimpleAlarm\res\drawable\clock_play.png

A    chapter8\trunk\SimpleAlarm\res\drawable\clock_red.png

A    chapter8\trunk\SimpleAlarm\res\drawable\icon.png

A    chapter8\trunk\SimpleAlarm\res\drawable\clock.png

A    chapter8\trunk\SimpleAlarm\res\layout

A    chapter8\trunk\SimpleAlarm\res\layout\main.xml

A    chapter8\trunk\SMSNotifyExample

A    chapter8\trunk\SMSNotifyExample\.classpath

A    chapter8\trunk\SMSNotifyExample\assets

A    chapter8\trunk\SMSNotifyExample\.project

A    chapter8\trunk\SMSNotifyExample\AndroidManifest.xml

A    chapter8\trunk\SMSNotifyExample\src

A    chapter8\trunk\SMSNotifyExample\src\com

A    chapter8\trunk\SMSNotifyExample\src\com\msi

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8\SMSNotifyExample

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8\SMSNotifyExample\SMSNotifyExample.java

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8\SMSNotifyExample\SMSNotifyActivity.java

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8\SMSNotifyExample.java

A    chapter8\trunk\SMSNotifyExample\src\com\msi\manning\chapter8\SMSNotifyActivity.java

A    chapter8\trunk\SMSNotifyExample\res

A    chapter8\trunk\SMSNotifyExample\res\values

A    chapter8\trunk\SMSNotifyExample\res\values\strings.xml

A    chapter8\trunk\SMSNotifyExample\res\drawable

A    chapter8\trunk\SMSNotifyExample\res\drawable\chat.png

A    chapter8\trunk\SMSNotifyExample\res\drawable\incoming.png

A    chapter8\trunk\SMSNotifyExample\res\drawable\icon.png

A    chapter8\trunk\SMSNotifyExample\res\layout

A    chapter8\trunk\SMSNotifyExample\res\layout\main.xml

A    chapter8\trunk\SMSNotifyExample2

A    chapter8\trunk\SMSNotifyExample2\.classpath

A    chapter8\trunk\SMSNotifyExample2\assets

A    chapter8\trunk\SMSNotifyExample2\.project

A    chapter8\trunk\SMSNotifyExample2\AndroidManifest.xml

A    chapter8\trunk\SMSNotifyExample2\src

A    chapter8\trunk\SMSNotifyExample2\src\com

A    chapter8\trunk\SMSNotifyExample2\src\com\msi

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8\SMSNotifyExample2

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8\SMSNotifyExample2\SMSNotifyExampleActivityToast.java

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8\SMSNotifyExample2\SMSNotifyExampleToast.java

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8\SMSNotifyExample2\SMSNotifyExampleActivity.java

A    chapter8\trunk\SMSNotifyExample2\src\com\msi\manning\chapter8\SMSNotifyExample2\SMSNotifyExample.java

A    chapter8\trunk\SMSNotifyExample2\res

A    chapter8\trunk\SMSNotifyExample2\res\values

A    chapter8\trunk\SMSNotifyExample2\res\values\strings.xml

A    chapter8\trunk\SMSNotifyExample2\res\drawable

A    chapter8\trunk\SMSNotifyExample2\res\drawable\icon.png

A    chapter8\trunk\SMSNotifyExample2\res\layout

A    chapter8\trunk\SMSNotifyExample2\res\layout\main.xml

A    chapter8\branches

A    chapter8\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter9

A    chapter9\trunk

A    chapter9\trunk\BounceyBall

A    chapter9\trunk\BounceyBall\.classpath

A    chapter9\trunk\BounceyBall\assets

A    chapter9\trunk\BounceyBall\.project

A    chapter9\trunk\BounceyBall\AndroidManifest.xml

A    chapter9\trunk\BounceyBall\src

A    chapter9\trunk\BounceyBall\src\com

A    chapter9\trunk\BounceyBall\src\com\msi

A    chapter9\trunk\BounceyBall\src\com\msi\manning

A    chapter9\trunk\BounceyBall\src\com\msi\manning\chapter9

A    chapter9\trunk\BounceyBall\src\com\msi\manning\chapter9\bounceyBall

A    chapter9\trunk\BounceyBall\src\com\msi\manning\chapter9\bounceyBall\BounceView.java

A    chapter9\trunk\BounceyBall\src\com\msi\manning\chapter9\bounceyBall\BounceActivity.java

A    chapter9\trunk\BounceyBall\res

A    chapter9\trunk\BounceyBall\res\values

A    chapter9\trunk\BounceyBall\res\values\strings.xml

A    chapter9\trunk\BounceyBall\res\drawable

A    chapter9\trunk\BounceyBall\res\drawable\android.png

A    chapter9\trunk\BounceyBall\res\drawable\world.png

A    chapter9\trunk\BounceyBall\res\drawable\icon.png

A    chapter9\trunk\BounceyBall\res\layout

A    chapter9\trunk\BounceyBall\res\layout\main.xml

A    chapter9\trunk\XMLAnimate

A    chapter9\trunk\XMLAnimate\.classpath

A    chapter9\trunk\XMLAnimate\assets

A    chapter9\trunk\XMLAnimate\.project

A    chapter9\trunk\XMLAnimate\AndroidManifest.xml

A    chapter9\trunk\XMLAnimate\src

A    chapter9\trunk\XMLAnimate\src\com

A    chapter9\trunk\XMLAnimate\src\com\msi

A    chapter9\trunk\XMLAnimate\src\com\msi\manning

A    chapter9\trunk\XMLAnimate\src\com\msi\manning\chapter9

A    chapter9\trunk\XMLAnimate\src\com\msi\manning\chapter9\xmlanimate

A    chapter9\trunk\XMLAnimate\src\com\msi\manning\chapter9\xmlanimate\XMLAnimate.java

A    chapter9\trunk\XMLAnimate\res

A    chapter9\trunk\XMLAnimate\res\values

A    chapter9\trunk\XMLAnimate\res\values\strings.xml

A    chapter9\trunk\XMLAnimate\res\drawable

A    chapter9\trunk\XMLAnimate\res\drawable\ball2.png

A    chapter9\trunk\XMLAnimate\res\drawable\ball3.png

A    chapter9\trunk\XMLAnimate\res\drawable\ball4.png

A    chapter9\trunk\XMLAnimate\res\drawable\ball5.png

A    chapter9\trunk\XMLAnimate\res\drawable\ball6.png

A    chapter9\trunk\XMLAnimate\res\drawable\android.png

A    chapter9\trunk\XMLAnimate\res\drawable\icon.png

A    chapter9\trunk\XMLAnimate\res\drawable\ball1.png

A    chapter9\trunk\XMLAnimate\res\anim

A    chapter9\trunk\XMLAnimate\res\anim\simple_animation.xml

A    chapter9\trunk\XMLAnimate\res\layout

A    chapter9\trunk\XMLAnimate\res\layout\main.xml

A    chapter9\trunk\OpenGLSquare

A    chapter9\trunk\OpenGLSquare\.classpath

A    chapter9\trunk\OpenGLSquare\assets

A    chapter9\trunk\OpenGLSquare\.project

A    chapter9\trunk\OpenGLSquare\AndroidManifest.xml

A    chapter9\trunk\OpenGLSquare\src

A    chapter9\trunk\OpenGLSquare\src\com

A    chapter9\trunk\OpenGLSquare\src\com\msi

A    chapter9\trunk\OpenGLSquare\src\com\msi\manning

A    chapter9\trunk\OpenGLSquare\src\com\msi\manning\chapter9

A    chapter9\trunk\OpenGLSquare\src\com\msi\manning\chapter9\OpenGLSquare

A    chapter9\trunk\OpenGLSquare\src\com\msi\manning\chapter9\OpenGLSquare\SquareActivity.java

A    chapter9\trunk\OpenGLSquare\res

A    chapter9\trunk\OpenGLSquare\res\values

A    chapter9\trunk\OpenGLSquare\res\values\strings.xml

A    chapter9\trunk\OpenGLSquare\res\drawable

A    chapter9\trunk\OpenGLSquare\res\drawable\icon.png

A    chapter9\trunk\OpenGLSquare\res\layout

A    chapter9\trunk\OpenGLSquare\res\layout\main.xml

A    chapter9\trunk\uad-XMLDraw

A    chapter9\trunk\uad-BounceyBall

A    chapter9\trunk\uad-XMLAnimate

A    chapter9\trunk\SimpleShape

A    chapter9\trunk\uad-OpenGLSquare

A    chapter9\trunk\XMLDraw

A    chapter9\trunk\XMLDraw\.classpath

A    chapter9\trunk\XMLDraw\assets

A    chapter9\trunk\XMLDraw\.project

A    chapter9\trunk\XMLDraw\AndroidManifest.xml

A    chapter9\trunk\XMLDraw\src

A    chapter9\trunk\XMLDraw\src\com

A    chapter9\trunk\XMLDraw\src\com\msi

A    chapter9\trunk\XMLDraw\src\com\msi\manning

A    chapter9\trunk\XMLDraw\src\com\msi\manning\chapter9

A    chapter9\trunk\XMLDraw\src\com\msi\manning\chapter9\XMLDraw

A    chapter9\trunk\XMLDraw\src\com\msi\manning\chapter9\XMLDraw\XMLDraw.java

A    chapter9\trunk\XMLDraw\res

A    chapter9\trunk\XMLDraw\res\values

A    chapter9\trunk\XMLDraw\res\values\strings.xml

A    chapter9\trunk\XMLDraw\res\drawable

A    chapter9\trunk\XMLDraw\res\drawable\shape_1.xml

A    chapter9\trunk\XMLDraw\res\drawable\shape_2.xml

A    chapter9\trunk\XMLDraw\res\drawable\shape_3.xml

A    chapter9\trunk\XMLDraw\res\drawable\shape_4.xml

A    chapter9\trunk\XMLDraw\res\drawable\shape_5.xml

A    chapter9\trunk\XMLDraw\res\drawable\line.xml

A    chapter9\trunk\XMLDraw\res\drawable\icon.png

A    chapter9\trunk\XMLDraw\res\layout

A    chapter9\trunk\XMLDraw\res\layout\xmldrawable.xml

A    chapter9\branches

A    chapter9\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter10

A    chapter10\trunk

A    chapter10\trunk\uad-MediaPlayerExample

A    chapter10\trunk\SimpleVideo

A    chapter10\trunk\SimpleVideo\.classpath

A    chapter10\trunk\SimpleVideo\assets

A    chapter10\trunk\SimpleVideo\.project

A    chapter10\trunk\SimpleVideo\AndroidManifest.xml

A    chapter10\trunk\SimpleVideo\src

A    chapter10\trunk\SimpleVideo\src\com

A    chapter10\trunk\SimpleVideo\src\com\msi

A    chapter10\trunk\SimpleVideo\src\com\msi\manning

A    chapter10\trunk\SimpleVideo\src\com\msi\manning\chapter10

A    chapter10\trunk\SimpleVideo\src\com\msi\manning\chapter10\SimpleVideo

A    chapter10\trunk\SimpleVideo\src\com\msi\manning\chapter10\SimpleVideo\SimpleVideo.java

A    chapter10\trunk\SimpleVideo\res

A    chapter10\trunk\SimpleVideo\res\values

A    chapter10\trunk\SimpleVideo\res\values\strings.xml

A    chapter10\trunk\SimpleVideo\res\drawable

A    chapter10\trunk\SimpleVideo\res\drawable\icon.png

A    chapter10\trunk\SimpleVideo\res\raw

A    chapter10\trunk\SimpleVideo\res\raw\test.mp4

A    chapter10\trunk\SimpleVideo\res\layout

A    chapter10\trunk\SimpleVideo\res\layout\main.xml

A    chapter10\trunk\uad-SoundRecordingDemo

A    chapter10\trunk\SimpleCamera

A    chapter10\trunk\SimpleCamera\.classpath

A    chapter10\trunk\SimpleCamera\assets

A    chapter10\trunk\SimpleCamera\.project

A    chapter10\trunk\SimpleCamera\AndroidManifest.xml

A    chapter10\trunk\SimpleCamera\src

A    chapter10\trunk\SimpleCamera\src\com

A    chapter10\trunk\SimpleCamera\src\com\msi

A    chapter10\trunk\SimpleCamera\src\com\msi\manning

A    chapter10\trunk\SimpleCamera\src\com\msi\manning\chapter10

A    chapter10\trunk\SimpleCamera\src\com\msi\manning\chapter10\SimpleCamera

A    chapter10\trunk\SimpleCamera\src\com\msi\manning\chapter10\SimpleCamera\SimpleCamera.java

A    chapter10\trunk\SimpleCamera\src\com\msi\manning\chapter10\SimpleCamera\ImageCaptureCallback.java

A    chapter10\trunk\SimpleCamera\res

A    chapter10\trunk\SimpleCamera\res\values

A    chapter10\trunk\SimpleCamera\res\values\strings.xml

A    chapter10\trunk\SimpleCamera\res\drawable

A    chapter10\trunk\SimpleCamera\res\drawable\icon.png

A    chapter10\trunk\SimpleCamera\res\layout

A    chapter10\trunk\SimpleCamera\res\layout\main.xml

A    chapter10\trunk\uad-SimpleVideo

A    chapter10\trunk\uad-SimpleVideo\.classpath

A    chapter10\trunk\uad-SimpleVideo\assets

A    chapter10\trunk\uad-SimpleVideo\.project

A    chapter10\trunk\uad-SimpleVideo\AndroidManifest.xml

A    chapter10\trunk\uad-SimpleVideo\src

A    chapter10\trunk\uad-SimpleVideo\src\com

A    chapter10\trunk\uad-SimpleVideo\src\com\msi

A    chapter10\trunk\uad-SimpleVideo\src\com\msi\manning

A    chapter10\trunk\uad-SimpleVideo\src\com\msi\manning\chapter10

A    chapter10\trunk\uad-SimpleVideo\src\com\msi\manning\chapter10\SimpleVideo

A    chapter10\trunk\uad-SimpleVideo\src\com\msi\manning\chapter10\SimpleVideo\SimpleVideo.java

A    chapter10\trunk\uad-SimpleVideo\res

A    chapter10\trunk\uad-SimpleVideo\res\values

A    chapter10\trunk\uad-SimpleVideo\res\values\strings.xml

A    chapter10\trunk\uad-SimpleVideo\res\drawable

A    chapter10\trunk\uad-SimpleVideo\res\drawable\icon.png

A    chapter10\trunk\uad-SimpleVideo\res\raw

A    chapter10\trunk\uad-SimpleVideo\res\raw\test.mp4

A    chapter10\trunk\uad-SimpleVideo\res\layout

A    chapter10\trunk\uad-SimpleVideo\res\layout\main.xml

A    chapter10\trunk\MediaPlayerExample

A    chapter10\trunk\MediaPlayerExample\.classpath

A    chapter10\trunk\MediaPlayerExample\assets

A    chapter10\trunk\MediaPlayerExample\.project

A    chapter10\trunk\MediaPlayerExample\AndroidManifest.xml

A    chapter10\trunk\MediaPlayerExample\src

A    chapter10\trunk\MediaPlayerExample\src\com

A    chapter10\trunk\MediaPlayerExample\src\com\msi

A    chapter10\trunk\MediaPlayerExample\src\com\msi\manning

A    chapter10\trunk\MediaPlayerExample\src\com\msi\manning\chapter10

A    chapter10\trunk\MediaPlayerExample\src\com\msi\manning\chapter10\MediaPlayerExample

A    chapter10\trunk\MediaPlayerExample\src\com\msi\manning\chapter10\MediaPlayerExample\MediaPlayerActvity.java

A    chapter10\trunk\MediaPlayerExample\res

A    chapter10\trunk\MediaPlayerExample\res\values

A    chapter10\trunk\MediaPlayerExample\res\values\strings.xml

A    chapter10\trunk\MediaPlayerExample\res\drawable

A    chapter10\trunk\MediaPlayerExample\res\drawable\icon.png

A    chapter10\trunk\MediaPlayerExample\res\raw

A    chapter10\trunk\MediaPlayerExample\res\raw\halotheme.mp3

A    chapter10\trunk\MediaPlayerExample\res\layout

A    chapter10\trunk\MediaPlayerExample\res\layout\main.xml

A    chapter10\trunk\uad-SimpleCamera

A    chapter10\trunk\SoundRecordingDemo

A    chapter10\trunk\SoundRecordingDemo\.classpath

A    chapter10\trunk\SoundRecordingDemo\assets

A    chapter10\trunk\SoundRecordingDemo\.project

A    chapter10\trunk\SoundRecordingDemo\AndroidManifest.xml

A    chapter10\trunk\SoundRecordingDemo\src

A    chapter10\trunk\SoundRecordingDemo\src\com

A    chapter10\trunk\SoundRecordingDemo\src\com\msi

A    chapter10\trunk\SoundRecordingDemo\src\com\msi\manning

A    chapter10\trunk\SoundRecordingDemo\src\com\msi\manning\chapter10

A    chapter10\trunk\SoundRecordingDemo\src\com\msi\manning\chapter10\SoundRecordingDemo

A    chapter10\trunk\SoundRecordingDemo\src\com\msi\manning\chapter10\SoundRecordingDemo\SoundRecordingDemo.java

A    chapter10\trunk\SoundRecordingDemo\res

A    chapter10\trunk\SoundRecordingDemo\res\values

A    chapter10\trunk\SoundRecordingDemo\res\values\strings.xml

A    chapter10\trunk\SoundRecordingDemo\res\drawable

A    chapter10\trunk\SoundRecordingDemo\res\drawable\icon.png

A    chapter10\trunk\SoundRecordingDemo\res\layout

A    chapter10\trunk\SoundRecordingDemo\res\layout\main.xml

A    chapter10\branches

A    chapter10\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlec

ode.com/svn/chapter11

A    chapter11\trunk

A    chapter11\trunk\GeocodeExample

A    chapter11\trunk\GeocodeExample\.classpath

A    chapter11\trunk\GeocodeExample\assets

A    chapter11\trunk\GeocodeExample\.project

A    chapter11\trunk\GeocodeExample\AndroidManifest.xml

A    chapter11\trunk\GeocodeExample\src

A    chapter11\trunk\GeocodeExample\src\com

A    chapter11\trunk\GeocodeExample\src\com\msi

A    chapter11\trunk\GeocodeExample\src\com\msi\manning

A    chapter11\trunk\GeocodeExample\src\com\msi\manning\geocode

A    chapter11\trunk\GeocodeExample\src\com\msi\manning\geocode\GeocodeExample.java

A    chapter11\trunk\GeocodeExample\res

A    chapter11\trunk\GeocodeExample\res\values

A    chapter11\trunk\GeocodeExample\res\values\strings.xml

A    chapter11\trunk\GeocodeExample\res\drawable

A    chapter11\trunk\GeocodeExample\res\drawable\icon.png

A    chapter11\trunk\GeocodeExample\res\layout

A    chapter11\trunk\GeocodeExample\res\layout\main.xml

A    chapter11\trunk\GeocodeExample\README.txt

A    chapter11\trunk\WindWaves

A    chapter11\trunk\WindWaves\default.properties

A    chapter11\trunk\WindWaves\.classpath

A    chapter11\trunk\WindWaves\assets

A    chapter11\trunk\WindWaves\.project

A    chapter11\trunk\WindWaves\AndroidManifest.xml

A    chapter11\trunk\WindWaves\src

A    chapter11\trunk\WindWaves\src\com

A    chapter11\trunk\WindWaves\src\com\msi

A    chapter11\trunk\WindWaves\src\com\msi\manning

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\BuoyOverlayItem.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\MapViewActivity.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\LocationHelper.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\data

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\data\NDBCHandler.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\data\NDBCFetcher.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\data\BuoyData.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\StartActivity.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\BuoyItemizedOverlay.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\Constants.java

A    chapter11\trunk\WindWaves\src\com\msi\manning\windwaves\BuoyDetailActivity.java

A    chapter11\trunk\WindWaves\docs

A    chapter11\trunk\WindWaves\docs\ndbc_example.xml

A    chapter11\trunk\WindWaves\docs\notes.txt

A    chapter11\trunk\WindWaves\docs\kmlsample.kml

A    chapter11\trunk\WindWaves\docs\gpxexample.gpx

A    chapter11\trunk\WindWaves\docs\obtain_debug_maps_key.txt

A    chapter11\trunk\WindWaves\res

A    chapter11\trunk\WindWaves\res\values

A    chapter11\trunk\WindWaves\res\values\styles.xml

A    chapter11\trunk\WindWaves\res\values\strings.xml

A    chapter11\trunk\WindWaves\res\drawable

A    chapter11\trunk\WindWaves\res\drawable\buoy.png

A    chapter11\trunk\WindWaves\res\drawable\redpin.png

A    chapter11\trunk\WindWaves\res\drawable\wave_200.png

A    chapter11\trunk\WindWaves\res\drawable\art_licenses.txt

A    chapter11\trunk\WindWaves\res\drawable\wave_45.png

A    chapter11\trunk\WindWaves\res\layout

A    chapter11\trunk\WindWaves\res\layout\mapview_activity.xml

A    chapter11\trunk\WindWaves\res\layout\buoy_selected.xml

A    chapter11\trunk\WindWaves\res\layout\start_activity.xml

A    chapter11\trunk\WindWaves\res\layout\buoydetail_activity.xml

A    chapter11\trunk\WindWaves\README.txt

A    chapter11\branches

A    chapter11\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlec

ode.com/svn/chapter12

A    chapter12\trunk

A    chapter12\trunk\android

A    chapter12\trunk\android\joblist.dtd

A    chapter12\trunk\android\.classpath

A    chapter12\trunk\android\.project

A    chapter12\trunk\android\AndroidManifest.xml

A    chapter12\trunk\android\src

A    chapter12\trunk\android\src\com

A    chapter12\trunk\android\src\com\msi

A    chapter12\trunk\android\src\com\msi\manning

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\Prefs.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\CloseJob.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\ShowSettings.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\FieldService.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\JobListHandler.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\JobList.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\ManageJobs.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\Splash.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\ShowJob.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\JobEntry.java

A    chapter12\trunk\android\src\com\msi\manning\UnlockingAndroid\RefreshJobs.java

A    chapter12\trunk\android\res

A    chapter12\trunk\android\res\values

A    chapter12\trunk\android\res\values\strings.xml

A    chapter12\trunk\android\res\drawable

A    chapter12\trunk\android\res\drawable\android.jpg

A    chapter12\trunk\android\res\drawable\icon.png

A    chapter12\trunk\android\res\layout

A    chapter12\trunk\android\res\layout\showsettings.xml

A    chapter12\trunk\android\res\layout\fieldservice.xml

A    chapter12\trunk\android\res\layout\managejobs.xml

A    chapter12\trunk\android\res\layout\splash.xml

A    chapter12\trunk\android\res\layout\showjob.xml

A    chapter12\trunk\android\res\layout\refreshjobs.xml

A    chapter12\trunk\server

A    chapter12\trunk\server\savejob.php

A    chapter12\trunk\server\showjob.php

A    chapter12\trunk\server\posttransaction.php

A    chapter12\trunk\server\updatejob.php

A    chapter12\trunk\server\footer.php

A    chapter12\trunk\server\showjobs.php

A    chapter12\trunk\server\utils.php

A    chapter12\trunk\server\closejob.php

A    chapter12\trunk\server\export.php

A    chapter12\trunk\server\addjob.php

A    chapter12\trunk\server\db.php

A    chapter12\trunk\server\getjoblist.php

A    chapter12\trunk\server\index.php

A    chapter12\trunk\server\header.php

A    chapter12\trunk\server\manage.php

A    chapter12\branches

A    chapter12\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>svn co http://unlocking-android.googlecode.com/svn/chapter13

A    chapter13\trunk

A    chapter13\trunk\native

A    chapter13\trunk\native\pullandroid.bat

A    chapter13\trunk\native\hello.c

A    chapter13\trunk\native\godaytime.bat

A    chapter13\trunk\native\buildhello.bat

A    chapter13\trunk\native\crt.S

A    chapter13\trunk\native\testcrt.c

A    chapter13\trunk\native\daytime.c

A    chapter13\trunk\native\buildhellodynamic.bat

A    chapter13\trunk\native\start.c

A    chapter13\trunk\daytimeclient

A    chapter13\trunk\daytimeclient\.classpath

A    chapter13\trunk\daytimeclient\assets

A    chapter13\trunk\daytimeclient\.project

A    chapter13\trunk\daytimeclient\AndroidManifest.xml

A    chapter13\trunk\daytimeclient\src

A    chapter13\trunk\daytimeclient\src\com

A    chapter13\trunk\daytimeclient\src\com\msi

A    chapter13\trunk\daytimeclient\src\com\msi\manning

A    chapter13\trunk\daytimeclient\src\com\msi\manning\chapter13

A    chapter13\trunk\daytimeclient\src\com\msi\manning\chapter13\DaytimeClient.java

A    chapter13\trunk\daytimeclient\res

A    chapter13\trunk\daytimeclient\res\values

A    chapter13\trunk\daytimeclient\res\values\strings.xml

A    chapter13\trunk\daytimeclient\res\drawable

A    chapter13\trunk\daytimeclient\res\drawable\icon.png

A    chapter13\trunk\daytimeclient\res\layout

A    chapter13\trunk\daytimeclient\res\layout\main.xml

A    chapter13\branches

A    chapter13\tags

체크아웃된 리비전 277.


C:\workspace\unlocking-android-read-only>






Appendixes. 책소개


언로킹 안드로이드 개발자 가이드
카테고리 컴퓨터/IT
지은이 FRANK ABLESON (프리렉, 2010년)
상세보기

목차.

파트 1 안드로이드란 무엇인가?

1장  안드로이드의 목표
 1-1  안드로이드 소개
  1-1-1 안드로이드 플랫폼 
  1-1-2 안드로이드를 위한 마켓?
  1-1-3 안드로이드 라이선스
 1-2 안드로이드 스택
  1-2-1 안드로이드의 토대 
 1-3  안드로이드 애플리케이션 개발 시작
  1-3-1 안드로이드의 취지 
  1-3-2 안드로이드 활성화 
  1-3-3 AndroidManifest.xml
  1-3-4 애플리케이션과 프로세스 맵핑
 1-4  안드로이드 애플리케이션
 1-5 요약

2장 개발 환경 구축
 2-1 안드로이드 SDK
  2-1-1 애플리케이션 프로그래밍 인터페이스
  2-1-2 안드로이드 핵심 패키지
  2-1-3 부가 패키지들
 2-2 퍼즐 맞추기 
  2-2-1 자바 퍼스펙티브
  2-2-2 DDMS 퍼스펙티브
  2-2-3 커맨드라인 툴
 2-3 이클립스에서 안드로이드 애플리케이션 빌드하기
  2-3-1 안드로이드 프로젝트 마법사
  2-3-2 안드로이드 샘플 애플리케이션 코드
  2-3-3 애플리케이션 빌딩 
 2-4 안드로이드 에뮬레이터
  2-4-1 스킨
  2-4-2 네트워크 속도
  2-4-3 에뮬레이터 설정하기
 2-5 디버깅
 2-6  요약

파트 2 안드로이드 SDK  
 
3장 사용자 인터페이스(User Interface)
 3-1 액티비티 만들기
  3-1-1 액티비티 클래스 만들기
  3-1-2 액티비티 라이프 사이클 살펴보기
 3-2 뷰로 작업하기
  3-2-1 뷰 알아보기
  3-2-2 ListView
  3-2-3 핸들러와 메시지 기반의 멀티태스킹
  3-2-4 사용자 뷰 생성
  3-2-5 레이아웃의 이해
  3-2-6 포커스 핸들링
  3-2-7 이벤트 살펴보기
 3-3 리소스의 사용
  3-3-1 지원하는 리소스 타입
  3-3-2 자바에서 리소스 참조하기
  3-3-3 XML 리소스를 가지고 뷰와 레이아웃 정의하기
  3-3-4 외부 참조 값
  3-3-5 애니메이션기능 사용
 3-4 안드로이드 매니페스트 파일의 이해
 3-5 요약

4장 인텐트와 서비스
 4-1 인텐트 클래스들 활용하기
  4-1-1 인텐트 정의
  4-1-2 인텐트 레졸루션
  4-1-3 사용자 정의 URI 매칭시키기
  4-1-4 안드로이드 제공 액티비티
 4-2 브로드캐스트 리시버 사용한 리스닝(수신대기)
  4-2-1 인텐트 개념의 오버로딩
  4-2-2 리시버 생성하기
 4-3 서비스 만들기
  4-3-1 서비스의 이중 목적
  4-3-2 백그라운드 서비스 생성하기
  4-4 IPC 실행
  4-4-1 안드로이드 인터페이스 정의 언어
  4-4-2 원격 인터페이스 드러내기
  4-4-3 서비스 바인딩
  4-4-4 서비스 시작 vs 서비스 바인딩
  4-4-5 서비스 라이프사이클
  4-4-6 바인더와 파서러블
 4-5 요약

5장 데이터 저장 및 검색
 5-1 프리퍼런스 사용하기 
  5-1-1 sharedPreferences로 작업하기
  5-1-2 프리퍼런스 접근 권한
 5-2 파일시스템 사용하기
  5-2-1 파일 생성하기
  5-2-2 파일 접근
  5-2-3 raw 리소스 파일
  5-2-4 XML 파일 리소스
  5-2-5 SD 카드를 이용한 데이터 저장
 5-3 데이터베이스에 데이터 저장하기
  5-3-1 데이터베이스 만들고 사용하기
  5-3-2 sqlite3 툴 사용하기 
 5-4 콘텐트 프로바이더 클래스 사용하기
  5-4-1 URI 표현식의 이해와 레코드 다루기
  5-4-2 콘텐트 프로바이더 생성하기
 5-5 요약

6장 네트워크와 웹서비스
 6-1 네트워크 개념
  6-1-1 네트워크 기초
  6-1-2 클라이언트와 서버
 6-2 네트워크 상태 확인
 6-3 서버 소켓을 이용한 통신
 6-4 HTTP 사용하기
  6-4-1 단순 HTTP와 Java.net
  6-4-2 HttpClient를 사용하여 HTTP 다루기
  6-4-3 HTTP와 HTTPS helper 만들기
 6-5 웹 서비스
  6-5-1 POX - HTTP와 XML의 조합
  6-5-2 REST
  6-5-3 SOAP 사용할 것인가, 사용하지 않을 것인가
 6-6 요약

7장 텔레포니(Telephony) - 전화 통신
 7-1 텔레포니 배경과 용어
 7-2 텔레포니 정보 접근하기
  7-2-1 텔레포니 속성 얻기
  7-2-2 폰 상태 정보 획득하기
 7-3 전화 사용하기
  7-3-1 인텐트를 사용하여 전화 걸기
  7-3-2 전화번호와 관련된 유용한 유틸리티
  7-3-3 콜 인터셉트하기
 7-4 메시지 다루기
  7-4-1 SMS 메시지 보내기 
  7-4-2 SMS 메시지 수신하기
 7-5 요약

8장 노티피케이션(Notification)과 알람(Alarm)
 8-1 토스트 메시지(알림 창) 소개 
 8-2 노티피케이션 소개
 8-3 알람
  8-3-1 알람 예제
 8-4 요약

9장 그래픽과 애니메이션
 9-1 안드로이드에서 그래픽 기능 사용하기
  9-1-1 XML을 이용하여 그리기
 9-2 애니메이션
  9-2-1 프로그램으로 만드는 애니메이션
   9-2-2 임베디드 시스템을 위한 OpenGL
 9-3 요약

10장 멀티미디어
 10-1 멀티미디어와 OpenCORE
 10-2 오디오 재생하기
 10-3 비디오 재생
 10-4 미디어 캡쳐하기
  10-4-1 카메라 이해하기
  10-4-2 오디오 캡쳐
 10-5 요약

11장 위치 기반 서비스
 11-1 에뮬레이터에서 자신의 위치 시뮬레이션하기
  11-1-1 DDMS 툴을 사용하여 자신의 좌표 전송하기
  11-1-2 GPS 데이터 교환 포맷
  11-1-3 구글어스 KML
 11-2 로케이션 매니저와 로케이션 프로바이더 사용하기
  11-2-1 로케이션 매니저로 위치 데이터 접근하기
  11-2-2 로케이션 프로바이더 사용하기
  11-2-3 로케이션 리스너를 사용한 로케이션 업데이트 
 11-3 지도 작업하기
  11-3-1 MapActivity 확장
  11-3-2 MapView 사용하기
  11-3-3 Overlay를 이용하여 지도 위에 데이터 적용시키기
 11-4 Geocoder를 이용한 주소와 좌표(위치) 변환
 11-5 요약

파트 3 안드로이드 애플리케이션  

12장 필드 서비스 애플리케이션
 12-1 필드 서비스 애플리케이션의 요구사항
  12-1-1 기본 요구사항
  12-1-2 데이터 모델 
  12-1-3 애플리케이션 아키텍처와 통합
 12-2 안드로이드 애플리케이션 투어
  12-2-1 애플리케이션 흐름
  12-2-2 코드 로드 맵
  12-2-3 AnroidManifest.xml
 12-3 안드로이드 코드
  12-3-1 스플래시 액티비티
  12-3-2 FieldService 액티비티 1부
  12-3-3 FieldService 액티비티 2부 
  12-3-4 셋팅
  12-3-5 데이터 구조
 12-4 소스 코드의 세부 사항
  12-4-1 Refreshjobs
  12-4-2 ManageJobs
  12-4-3 ShowJob
  12-4-4 CloseJob
 12-5 서버 코드
  12-5-1 유저 인터페이스 디스패쳐
  12-5-2 데이터베이스
  12-5-3 PHP 디스패쳐 코드
  12-5-4 PHP 모바일 통합 코드
 12-6 요약

13장 해킹 안드로이드
 13-1 Android/Linux : 교차점
  13-1-1 툴 체인(Tool Chain)
  13-1-2 애플리케이션 작성
  13-1-3 애플리케이션 설치 및 실행
  13-1-4 빌드 스크립트(Script) 
 13-2 보다 좋은 방법
  13-2-1 static 플래그 사용의 재고
  13-2-2 링킹
  13-2-3 return이 아니라 Exit로
  13-2-4 Startup 코드
 13-3 몇 시입니까?
  13-3-1 Daytime 서버 애플리케이션
  13-3-2 daytime.c
  13-3-3 SQLite 데이터베이스
  13-3-4 Daytime 서버 빌드와 실행 
 13-4 Daytime 클라이언트 
  13-4-1 액티비티
  13-4-2 소켓 클라이언트
  13-4-3 Daytime 테스팅
 13-5

부록 A 안드로이드 SDK 설치하기
 A-1 개발 환경을 위한 요구사항
 A-2 이클립스 설치하기
 A-3 안드로이드 SDK 설치
 A-4 이클립스 플러그인 설치
 A-5 이클립스 플러그인 설정

부록 B 안드로이드 디바이스에서 서명과 애플리케이션 설치
 B-1 안드로이드 디버그 브리지 다시 보기
 B-2 디지털 서명
  B-2-1 Keytool
  B-2-2 Jarsigner 
 B-3 배포하기 위한 최종 작업
  B-3-1 중요 매니페스트 엘리먼트 
  B-3-2 테스트, 테스트, 또 테스트
  B-3-3 최종 사용자 사용권 계약 - EULA
  B-3-4 추가 작업들 : 데이터 import와 export 
 B-4 안드로이드 마켓에 올리기
  B-4-1 안드로이드 마켓의 규칙
  B-4-2 안드로이드 마켓에 애플리케이션 올리기
  B-4-3 자동 업데이트
  B-4-4 왜 안드로이드 마켓인가?
 B-5 그 이외 배포 수단

부록 C 안드로이드 SDK(1.5, 2.0) 설치 가이드
 C-1 안드로이드 SDK 내려받기
 C-2 이클립스 내려받기 및 설치
 C-3 이클립스와 안드로이드 연동하기
 C-3-1 이클립스 안드로이드 플러그인 설치
 C-3-2 안드로이드 플러그인을 통한 SDK 내려받기
  C-3-3 Virtual Device 생성 및 에뮬레이터 실행
 C-4 안드로이드 SDK 1.5 설치

Buy me a coffeeBuy me a coffee



안드로이드 앱 개발할때 xml파일에서 TextView에 많은 Text를 넣을 경우가 있습니다.

Text를 너무 많이 넣은 경우에는 에뮬레이터나 폰의 화면이 작아 Text가 다 보여주지 못하고 깔리는 경우가 있습니다.

그럴 경우엔 xml파일에 아래와 같이 <scroll>태그를 넣으면 됩니다.


<ScrollView xmlns:android="http://schemas.android.com/apk/res/android";
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android";
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              >

(생략)

</LinearLayout>
</ScrollView>


에뮬레이터나 폰의 화면에서 Text가 처음엔 짤려보여도 스크롤이 생겨 손가락이나 마우스로 밀면 다 보여주는 것을 확인할 수 있습니다.

ps. 안드로이드 앱 개발의 절반은 XML이 먹고 가더라는 말을 해봅니다... (내부구조는 Linux Kernel+Dalvik VM, Application Layer는 Java, UI는 XML로 처리)

Buy me a coffeeBuy me a coffee



iPhone에서는 Voice Search가 기본 제공됩니다.

거기에 iPhone과 Android OS보다 예전에 나온 Symbian OS S60에선 Google Voice Search가 되는데 Google폰인 hTC Desire에 Voice Search가 안되는것이 뭔가 이상하였습니다.

Google Search (Symbian S60v3)

Google Search App (Symbian S60v3) in Nokia 6210s

Google Voice Searching (Symbian S60v3)

Voice Searching at Google Search App (Symbian S60v3) in Nokia 6210s


Nokia 6210s(Symbian S60v3)에서 Google Voice Search로 Android를 검색한 결과


위와같이 Android보다 예전에 출시된 Symbian OS S60v3에서 Google Search App을 설치하면 Voice Search가 되는데, 거기에 Apple의 iPhone에서도 Voice Search가 되는데 왜 HTC Desire에 Voice Search가 안되는지 궁금하였습니다.

그러나 구글링한 결과......

안드로이드 폰에 Voice Search(음성검색)이 있습니다. 문제는 이게 영어권 음성만 인식하기때문에 한국어 인식은 아직 구현 안되었다는 걸 알 수 있습니다. (Symbian S60에서, iPhone에서 Voice Search(음성 검색)을 할때에도 마찬가지입니다.

여기에 Desire용 Voice Search 설치파일을 올립니다.



링크를 다운로드 받은후 저는 adb를 사용하여 Voice Search를 설치하였습니다. (아님 SD카드에 apk파일을 넣은 후 실행시켜 설치하시면 됩니다.)

studioego@studioego-laptop:~/Downloads$ ls

VoiceSearch_2.1.apk

studioego@studioego-laptop:~/Downloads$ adb install VoiceSearch_2.1.apk 

394 KB/s (442329 bytes in 1.094s)

pkg: /data/local/tmp/VoiceSearch_2.1.apk

Success

studioego@studioego-laptop:~/Downloads$



2010년 6월 22일 추가.

2010년 6월 22일 자로 안드로이드 마켓에 Google 음성검색 앱이 발표되었습니다.

위의 링크에 있는 apk파일로 음성검색 설치 대신 아래와 같이, 구글 안드로이드마켓에 있는 앱으로 설치하시기 바랍니다.


2010/06/22 - [Mobile/Android] - Google 음성 검색, 안드로이드 마켓에 올라가다 #android







설치후 화면

설치후 음성 인식후 검색화면

(여기에선 htc란 단어를 읽었습니다.)


Buy me a coffeeBuy me a coffee

안드로이드 개발을 위해서 책을 여러번 보고, 안드로이드 사이트에서 제공하는 ApiDemos등의 예제들을 실행하면서 앱 개발 공부를 하고 있었습니다.

안드로이드 앱 개발이 생각보단 만만한 것이 아니더군요.

Java는 기본적으로 안다고 하지만, Android 개발에 대한 내용이 명확하게 정리가 안된 초기단계에다, 개발 관련 자료가 부족한 느낌도 들고 안드로이드 공식 문서도 완비가 되지 못한 상태입니다. SDK도 자주 업그레이드 되다 보니 공식문서가 바뀌는 경우가 많습니다.

위과 같은 문제로 안드로이드개발하는데 온갖 시행착오를 거듭하면서 체계적으로 안드로이드 앱 개발이 어떻다는것을 느끼기가 어렵습니다.

2008년 9월달에 첫 발표된 Android OS는 발전속도가 워낙에 빠르기 때문에 새로운 기술을 습득하는 일이 벅차고 정리가 안되는 경우를 많이 느꼈습니다.



안드로이드 프로그래밍 정복
카테고리 컴퓨터/IT
지은이 김상형 (한빛미디어, 2010년)
상세보기


5월 28일 금요일. 저는 안드로이드 프로그래밍 정복이라는 책을 서점에서 발견하고 어떤내용인지에 대해 읽게 되었습니다.

서점에서 책을 읽다보니 예전 WinAPI 책의 느낌이 나면서 WinAPI책의 추억이 새록새록 떠오르더군요.

아니나 다를까... 역시 Windows API 정복이라는 책을 쓰신 김상형씨가 낸 책이더군요.

책을 읽어보니 Android SDK 예제엔 ApiDemos를 매우 친절하게 풀어쓴 느낌이 많이 들더군요.

Android OS SDK의 API들을 매우 깔끔하게 정리를 하였습니다.

거기에 홈페이지에 책의 앞부분까지 공개하고 책의 예제까지 공개한걸 보고 참 저자의 열정이 대단하구나를 느끼게 되었습니다.

안드로이드 프로그래밍 정복 홈페이지: http://winapi.co.kr/android/


안드로이드 개발을 첫 시작하게 된 컴퓨터공학과 학생들에게 이 책을 꼭 읽어보고 나서 Android SDK를 분석해보라고 권장하고 싶습니다.

안드로이드 프로그래밍 정복 이란 책이 Android SDK에 나오는 API를 분석해고 쓴책이다보니 정말 실용적인 책이라고 생각을 하였습니다.

보통 안드로이드 개발 책으로 나온 것 치고는 웬간해선 Android 개발 레퍼런스 관련 내용만 나오는데 비해 이 책은 레퍼런스뿐만 아니라 저자의 개발 경험을 넣은 책이다 보니 저같은 초보자들에게 가뭄의 단비같은 존재라고 느낄정도입니다.


다른 안드로이드 개발 책들 보다 이 책을 보니 다른 책은 거의 눈길이 가지 않군요.^^

ps. Windows API 정복 이란 책은?


WINDOWS API 정복(CD-ROM 1장 포함)
카테고리 컴퓨터/IT
지은이 김상형 (가남사, 2005년)
상세보기

대학 1학년 말쯤에 컴퓨터 게임 개발을 열심히 공부하던 선배님을 보고 이 책을 구입하여 읽었는데 말이죠. 정말 이 책은 초보자들이 쉽게 어떻게 개발할지에 대해서 상세하게 적은 책입니다. (책이 사라졌음은 좀 안타까움)


Buy me a coffeeBuy me a coffee


Android용 Adobe Acrobat이라는 PDF 뷰어가 Adobe사에서 Android Market에 내놓았습니다.

  • System Requirement(시스템 요구사항)
    • Android OS V2.1 이상
    • 550 MHz processor 이상
    • 256 MB of RAM 이상
    • 4.3 MB of available disk space (추가로 4.3MB정도의 용량이상 있어야 합니다.)
    • Currently Supported Devices: Motorola Droid, Motorola Milestone & Google Nexus One (While we have not yet tested against other Android devices, we expect they may also run the application just fine.)
      현재 지원되고 있는 장치로는 Motorola Droid,Google NexusOne과 같이 2.1을 지원하는 장비라고 합니다. HTC Desire는 Google NexusOne과 쌍둥이 폰으로 부르는 폰이기 때문에 물론 지원됨을 확인했습니다. 예전에 가지고 있던 모토로이는 어떻게 되련지는 모르겠습니다. (모토로이가 안드로이드 2.1이기 때문에 지원될것같긴 하지만 테스트해봐야됨)


사용해본 결과 HTC Desire에서 그렇게 빠르게 동작하지 않더군요.  HTC에서 기본제공하는 PDF Viewer보다 속도가 느리고 천천히 돌아간다는 단점이 있습니다.

그러나 확대, 축소, Zoom기능은 Acrobat을 만든 Adobe사의 어플이다 보니 다른 앱보다 충실한건 마음에 듭니다.

ps. 요즘 보면 Adobe가 Apple의 미움을 받아 Google과 친구가 되고 있는 느낌이 듭니다.

Buy me a coffeeBuy me a coffee

+ Recent posts