본문 바로가기

[책]기초부터 다지는 커니의 안드로이드

'기초부터 다지는 커니의 안드로이드' 소스코드


'기초부터 다지는 커니의 안드로이드' 에 포함되어 있는 소스 코드입니다.
안드로이드 2.2를 기준으로 작성되어 있습니다.

최종 개정 : 2011. 2. 11

- 2011. 1. 20 : 누락되었던 4-5절 예제 추가
- 2011. 2. 11 : Widgets3 예제 중 ProgressBar Indetermiate 상태 변경 코드 일부 누락 수정

예제 인덱스

[2장 : Hello, Android]
2-2. HelloAndroid

[3장 : 애플리케이션 구성요소 자세히 알아보기]
3-1-3. LocaleExample : 다중 언어 지원
3-2-4. CreateActivity : 액티비티 생성하기
3-4-5. ExplicitIntent : 명시적 인텐트
3-4-6. ImplicitIntent : 암시적 인텐트
3-4-7. GetResult : 액티비티 결과값 처리하기

[4장 : 액티비티 화면 구성하기]
4-2. TabViewExample : 탭 사용하기
4-3. TextViewExample, ImageViewExample : TextView, ImageView 사용하기
4-4. Widgets1 : EditText, Spinner, Button 사용하기
4-5. Widgets2 : RadioButton, CheckBox 사용하기
4-6. Widgets3 : ProgressBar, SeekBar, RatingBar 사용하기
4-7. Widgets4 : DatePicker, TimePicker 사용하기
4-8. AutoCompleteExample : AutoCompleteTextView 사용하기
4-9. ListViewExample : ListView 사용하기

[5장 : 사용자 인터페이스]
5-1. ToastExample : 토스트 띄우기
5-2-1. MenuExample : 옵션메뉴 구성하기
5-2-2. ContextMenuExample : 콘텍스트 메뉴 구성하기
5-3-1. AlertDialogExample : 알림 다이얼로그 띄우기
5-3-2. DialogExample : DatePickerDialog, TimePickerDialog
5-4-1. NotificationBuilder : 알림(Notification) 띄우기

[6장 : 데이터 다루기]
6-1-6. MyBookmark : 데이터베이스 어댑터 만들기
6-1-7. MyBookmark_2 : 북마크 관리 애플리케이션 만들기
6-2-2. ContactAdder : 주소록 추가하기
6-2-3. CallLogViewer : 최근 통화기록 조회하기
6-2-4. MyBookmark_3 : 콘텐트 프로바이더 만들기
6-3. SharedPreferencesExample : SharedPreferences 사용하기
6-4. PreferenceActivityExample : 환경설정 액티비티 사용하기

[7장 : 위치기반 서비스]
7-2. LocationInfo : 위도, 경도 확인하기
7-3. LocationInfo_prox : ProximityAlert 사용하기
7-4. GeoCoder : Geocoder 사용하기
7-5-2. HelloMaps : 구글맵 띄우기
7-5-3. HelloMaps_2 : 확대/축소 기능 및 위성지도 띄우기
7-5-4. HelloMaps_overlay : 지도에 오버레이 띄우기

[8장 : 멀티미디어]
8-1-2. CameraPreview : 카메라 미리보기 표시하기
8-1-3. CameraPreview2 : 사진 촬영하기
8-2-1. RawAudioPlayerExample : 오디오 재생하기(리소스)
8-2-2. AudioPlayerExample : 오디오 재생하기(파일)
8-2-3. VideoViewExample : 비디오 재생하기
8-3-1. AudioRecorderExample : 오디오 기록하기
8-3-2. VideoRecorder : 비디오 기록하기
8-4. VoiceRecognitionExample : 음성인식 사용하기

[9장 : 인터넷 및 무선통신 다루기]
9-1. NetworkStatus : 네트워크 상태 조회하기
9-2. WifiScanner : AP정보 조회하기
9-3. SimpleTranslate : 번역기 제작하기
9-4. TwitterExample : 간단한 트위터 클라이언트 만들기

[10장 : 전화 및 SMS]
10-1. CallExample : 전화 걸기
10-2. PhoneStateView : 전화망 상태 확인하기
10-3-1. MySMS : SMS 전송하기
10-3-2. MySMS_2 : SMS 전송 확인하기
10-4. MySMS_3 : SMS 수신하기

[11장 : 서비스 (Service)]
11-3. SimpleService : 간단한 서비스 만들기
11-4-3. SimpleAIDL : 서비스와 통신 구현하기 (AIDL)

[12장 : 센서 사용하기]
12-2. SensorExample : 센서 모니터 애플리케이션

[14장 : 애플리케이션 배포]
14-5. AdmobExample : 모바일 광고 넣기
14-6. LicensingExample : LVL(License Verification Library) 적용하기




  • 알 수 없는 사용자 2011.01.13 01:48

    소스 감사합니다~

  • mindstorm 2011.01.27 18:39

    안녕하세요~ ^-^
    커니님 블로그에 유용한 정보가 많아 도움을 받았습니다.

    그런데 9장의 무선통신중에 블루투스는 다루지 않으시나요?
    아 그리고..서점에 들렀다가 언뜻, 블루투스 통신은 에뮬레이터로 불가능하다고 본듯한데 맞나요??

    • Favicon of https://androidhuman.tistory.com 커니 2011.02.07 10:36 신고

      블루투스 통신은 단말기가 있어야 테스트할 수 있습니다. 그리고 블루투스 관련 예제는 SDK 예제에 Bluetooth Chat이 있는데, 그걸 참고하시면 가장 좋을 것 같습니다 :)

  • agm 2011.02.07 01:10

    자바에 대해서 아무것도 모르는데 이책을 봐도 되는지요.....

    • Favicon of https://androidhuman.tistory.com 커니 2011.02.07 10:37 신고

      자바에 대해 어느 정도 공부를 하신 후에 보시는 것이 좋습니다. 안드로이드가 아무리 쉽다고 해도, 자바를 아예 모른다면 많이 어렵죠.

  • ㅠㅠ 2011.02.12 20:10

    예제파일 어디서 다운받는지 모르겠네요;

  • 이십사 2011.02.14 02:13

    커니님, 소스파일을 올려두신 곳이 두군데입니다.
    이곳과 '인사이트 스프링노트'이죠.
    그런데 ~노트 싸이트에서는 04장에 Widgets2.zip가 포함되어있지않습니다.
    사소한 발견이에요... 덕분에 한번 둘러갑니다. ㅎ

  • 최경진 2011.02.14 12:34

    항상 좋은 정보를 올려주셔서 고마웠는데 이번에 책도 출간하셨군요. 축하드립니다~!
    그런데 한가지 질문이 있습니다.

    8장 멀티미디어에서 "8-3-2. VideoRecorder : 비디오 기록하기"의 예제소스를 실행하고
    촬영버튼을 클릭하였더니 폰이 죽어버리는군요....-_-';;
    소스에서 수정한 부분은 없습니다. 그리고 테스트한 폰은 갤럭시S입니다. (2.2로 업데이트)

    혹시 원인을 아시면 좀 알려주십시요.
    그럼, 수고하시고 항상 좋은 정보 감사합니다. ^^

    • Favicon of https://androidhuman.tistory.com 커니 2011.02.14 16:18 신고

      갤럭시S에서 저도 동일한 증상이 발생합니다.
      그런데 넥서스원이나 모토로이 등 다른 폰에서는 일어나지 않더군요. ㅠㅠ

      그거때문에 고민을 좀 했었는데, 코드를 수정하다 보면 갤럭시S에서는 돌아가는데 넥서스원이나 모토로이에서는 영상이 깨져서 녹화되는 현상이 발생합니다. 일단은 레퍼런스 폰에 맞춰서 하다보니 그렇게 되었네요.

      제 기억상으로는 화면 크기를 설정하는 부분에서 강제로 320*240 이런식으로 하지 말고 그냥 프리뷰 사이즈 그대로 사용하도록 하고, framerate도 별도로 지정하지 않고 했을때 갤럭시S에서 제대로 녹화가 되었던걸로 기억합니다. (오래된 기억이라 확실하진 않네요^^;;)

  • 최경진 2011.02.14 17:58

    그렇군요....흠....
    바쁘신데 답변 감사드립니다.
    앞으로 더욱 발전하는 커니의 안드로이드 이야기가 되시길....^^

  • stud 2011.07.19 11:18

    책과 블로그 덕분에 도움 많이 받았습니다. 커니님 정말 감사합니다 ^^