프로페셔널 안드로이드
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

플랫폼의 다양한 기능을 바탕으로 안드로이드 개발의 모든 것을 집대성한 결정판!
초판 출간 후 10년! 완전히 새롭게 개정된 《프로페셔널 안드로이드》 제4판에서는 안드로이드 SDK를 심층적으로 다룬다. 이 책에서는 우선 초보 개발자들을 위한 필수 지식을 깊이 있게 소개하며, 매력적인 사용자 경험을 위해 프로 개발자들이 반드시 갖춰야 할 고급 기능과 베스트 프랙티스도 상세히 파헤쳤다. 또한, 실무에 가까운 예시들로 복잡한 개념을 명료하게 다루었다. 무엇보다 실용성이라는 초점에서 상세히 들여다본 안드로이드 개발용 도구, API, 베스트 프랙티스 관련 배경지식은 안드로이드 개발자들이 사용자를 위해 새로운 기술을 현실의 솔루션으로 구체화하는 데 크게 도움이 될 것이다.
작가정보
최고의 앱을 제작하려는 안드로이드 개발자들을 2007년부터 계속 지원하고 있다. 소프트웨어 엔지니어로서 앱 디자인 및 개발 분야에서 20년 넘게 경험을 쌓았다. 그리고 구글의 DA(Developer Advocate)로서 지난 10여 년 간 수많은 글과 온라인 강의, 세미나, 유튜브 동영상 등을 통해 개발자 커뮤니티와 교류하고 있다. 스마트폰이 세상에 나오기 10년 전부터는 해양 석유 및 가스와 금융 등 다양한 분야에서 개발자로 근무했다. 트위터와 미디엄 블로그에서 안드로이드 개발에 관한 그의 생각을 더욱 구체적으로 알 수 있으며, 트위터에서는 고양이 사진들도 덤으로 감상할 수 있다.
트위터 www.twitter.com/retomeier
블로그 blog.medium.com/@retomeier
저자(글) 이안 레이크
지난 10여 년 간 다양한 경로를 통해 안드로이드 개발에 몸담고 있다. 앱 개발자로서 고성능 안드로이드 앱들을 개발했으며, DA로서 개발자 커뮤니티를 지원했고, 안드로이드 프레임워크 팀의 일원으로서 안드로이드 프레임워크 API의 성능 개선에 기여했다. 안드로이드 탄생 이전에는 주로 기업 애플리케이션 개발 업무를 담당했다. 구글 플러스나 트위터로 연락할 수 있으며, 여기서 그의 가족과 취미(주로 안드로이드 개발), 관심사 등을 알 수 있다.
구글 플러스 plus.google.com/+IanLake
트위터 www.twitter.com/ianhlake
번역 현호철
프리랜서 개발자로 20년 넘게 활동해 오고 있다. C와 자바, 파이썬에 익숙하며, 최근에는 안드로이드 기반의 모바일 앱을 주로 개발하고 있다.
목차
- CHAPTER 1 헬로, 안드로이드 1
1.1 안드로이드 애플리케이션 개발 1
1.2 그리 깊지 않은 배경 지식 3
1.3 안드로이드 생태계 4
1.4 사전에 설치된 안드로이드 애플리케이션들 5
1.5 안드로이드 소프트웨어 개발 키트의 특징 7
1.6 안드로이드 구동 기기 7
1.7 모바일 개발에 뛰어들어야 하는 이유 8
1.8 안드로이드 개발에 뛰어들어야 하는 이유 9
1.9 개발자 프레임워크 소개 9
CHAPTER 2 시작하기 16
2.1 안드로이드 애플리케이션 개발 시작하기 17
2.2 안드로이드 애플리케이션 개발하기 19
2.3 모바일 및 임베디드 기기 애플리케이션 개발하기 48
2.4 안드로이드 개발 도구 60
CHAPTER 3 애플리케이션, 액티비티, 프래그먼트, 기타 등등 72
3.1 애플리케이션, 액티비티, 프래그먼트 73
3.2 안드로이드 애플리케이션의 컴포넌트들 73
3.3 안드로이드 애플리케이션의 수명 주기, 우선순위, 프로세스 상태 75
3.4 안드로이드의 Application 클래스 77
3.5 안드로이드 액티비티 자세히 살펴보기 78
3.6 프래그먼트 소개 91
3.7 지진 정보 조회 애플리케이션 만들기 108
CHAPTER 4 안드로이드 매니페스트, 그래들 빌드 파일 정의하기 및 리소스 외부화하기 120
4.1 매니페스트, 빌드 파일, 리소스 121
4.2 안드로이드 매니페스트 소개하기 121
4.3 그래들 빌드 설정하기 127
4.4 리소스 외부화하기 136
CHAPTER 5 사용자 인터페이스 빌드하기 163
5.1 안드로이드 디자인의 토대 164
5.2 밀도 독립적인 디자인 165
5.3 안드로이드 사용자 인터페이스의 토대 166
5.4 레이아웃 168
5.5 안드로이드 위젯 툴박스 181
5.6 리스트와 그리드 사용하기 182
5.7 데이터 바인딩 192
5.8 새 뷰 만들기 198
CHAPTER 6 인텐트와 브로드캐스트 리시버 225
6.1 인텐트와 브로드캐스트 리시버 사용하기 226
6.2 인텐트를 사용해 액티비티 시작하기 227
6.3 암시적 인텐트를 수신하는 인텐트 필터 만들기 236
6.4 링키파이 255
6.5 브로드캐스트 이벤트에 인텐트 사용하기 258
6.6 로컬 브로드캐스트 매니저 267
6.7 펜딩 인텐트 268
CHAPTER 7 인터넷 리소스 사용하기 271
7.1 인터넷에 연결하기 272
7.2 인터넷 리소스 연결, 다운로드, 파싱하기 272
7.3 다운로드 매니저 사용하기 300
7.4 배터리를 적게 소모하면서 데이터를 다운로드하는 최선의 방법 310
7.5 인터넷 서비스와 클라우드 컴퓨팅 313
CHAPTER 8 파일, 상태 저장, 사용자 환경 설정 315
8.1 파일, 상태, 프레퍼런스 저장하기 316
8.2 수명 주기 핸들러를 사용해 액티비티 및 프래그먼트 인스턴스의 상태 저장하기와 복원하기 317
8.3 헤드리스 프래그먼트와 뷰 모델의 인스턴스 상태 유지하기 319
8.4 공유 프레퍼런스 생성하기와 저장하기 324
8.5 공유 프레퍼런스 데이터 읽기 326
8.6 공유 프레퍼런스 변경 리스너 327
8.7 애플리케이션 파일과 공유 프레퍼런스의 자동 백업 구성하기 327
8.8 프레퍼런스 UI 빌드하기 330
8.9 지진 정보 조회 애플리케이션에 설정 액티비티 만들기 337
8.10 정적 파일을 리소스로 포함하기 346
8.11 파일 시스템 사용하기 347
8.12 SDA로 공용 디렉터리 사용하기 350
8.13 파일 프로바이더를 사용해 파일 공유하기 355
8.14 저장소 접근 프레임워크를 사용해 다른 애플리케이션의 파일 사용하기 357
8.15 URI 기반 권한 사용하기 361
CHAPTER 9 데이터베이스 만들기와 사용하기 363
9.1 안드로이드의 구조적 데이터 저장소 364
9.2 Room 퍼시스턴스 라이브러리를 사용해 데이터 저장하기 364
9.3 지진 데이터를 Room 데이터베이스에 저장하기 378
9.4 SQLite 데이터베이스로 작업하기 384
9.5 파이어베이스 리얼타임 데이터베이스 396
CHAPTER 10 콘텐트 프로바이더와 검색 406
10.1 콘텐트 프로바이더 407
10.2 왜 콘텐트 프로바이더를 사용해야 할까? 407
10.3 콘텐트 프로바이더 만들기 408
10.4 콘텐트 리졸버로 콘텐트 프로바이더에 접근하기 422
10.5 네이티브 안드로이드 콘텐트 프로바이더 사용하기 435
10.6 애플리케이션에 검색 기능 추가하기 450
CHAPTER 11 백그라운드에서 작업하기 479
11.1 백그라운드로 작업하기 480
11.2 백그라운드 스레드 사용하기 481
11.3 백그라운드 작업 스케줄링하기 489
11.4 알림을 사용해 사용자에게 알리기 509
11.5 파이어베이스 클라우드 메시징 사용하기 531
11.6 알람 사용하기 537
11.7 서비스 539
CHAPTER 12 안드로이드 디자인 철학 구현하기 549
12.1 안드로이드의 디자인 철학 550
12.2 모든 화면에 어울리는 디자인 550
12.3 머티리얼 디자인 564
12.4 머티리얼 디자인의 사용자 인터페이스 요소들 573
CHAPTER 13 현대적인 안드로이드 사용자 인터페이스 구현하기 585
13.1 현대 안드로이드의 UI 586
13.2 AppCompat을 사용해 일관된 현대적 사용자 인터페이스 만들기 586
13.3 앱바에 메뉴와 액션 추가하기 589
13.4 기본 앱바를 넘어 595
13.5 지진 정보 뷰어 앱의 앱바 개선하기 602
13.6 앱의 이동 패턴 604
13.7 지진 정보 뷰어에 탭 추가하기 620
13.8 적절한 방해 수준 선택하기 626
CHAPTER 14 사용자 인터페이스의 고급 구성 632
14.1 사용자 경험 확장하기 633
14.2 접근성 지원하기 633
14.3 안드로이드의 음성 합성 635
14.4 음성 인식 사용하기 638
14.5 기기의 진동 제어하기 640
14.6 전체 화면 활용하기 642
14.7 프로퍼티 애니메이션으로 작업하기 644
14.8 뷰 개선하기 648
14.9 고급 캔버스 드로잉 649
14.10 복합 드로어블 리소스 676
14.11 복사하기, 붙여넣기, 클립보드 680
CHAPTER 15 위치, 상황 인지, 지도 683
15.1 애플리케이션에 위치, 지도, 상황 인지 추가하기 684
15.2 구글 플레이 서비스 685
15.3 구글 위치 서비스를 사용해 기기의 위치 찾기 689
15.4 지오펜스 설정하기와 관리하기 717
15.5 전통적인 플랫폼 위치 기반 서비스 사용하기 721
15.6 지오코더 사용하기 732
15.7 지도 기반 액티비티 만들기 739
15.8 지진 정보 뷰어에 지도 추가하기 762
15.9 상황 인지 추가하기 767
CHAPTER 16 하드웨어 센서 778
16.1 안드로이드의 센서 779
16.2 안드로이드 가상 기기와 에뮬레이터에서 센서 테스트하기 796
16.3 센서 다루기의 모범 사례 798
16.4 기기의 움직임과 방향 모니터링하기 799
16.5 환경 센서 사용하기 819
16.6 신체 센서 사용하기 826
16.7 사용자 행동 인지 829
CHAPTER 17 오디오, 비디오 그리고 카메라 사용하기 833
17.1 오디오와 비디오 재생하기 그리고 카메라 사용하기 834
17.2 오디오와 비디오 재생하기 834
17.3 미디어 라우터와 캐스트 애플리케이션 프레임워크 사용하기 853
17.4 백그라운드 오디오 재생 859
17.5 미디어 리코더를 사용해 오디오 리코딩하기 869
17.6 카메라를 사용해 사진 찍기 872
17.7 비디오 리코딩하기 882
17.8 미디어 스토어에 미디어 추가하기 887
CHAPTER 18 블루투스, NFC, 와이파이 P2P 통신하기 890
18.1 네트워킹과 P2P 통신 891
18.2 블루투스를 사용해 데이터 전송하기 891
18.3 와이파이 P2P를 사용해 데이터 전송하기 909
18.4 NFC 사용하기 917
18.5 안드로이드 빔 사용하기 921
CHAPTER 19 홈 화면 공략하기 927
19.1 홈 화면 커스터마이즈하기 928
19.2 화면 위젯 928
19.3 지진 앱에 위젯 만들기 945
19.4 컬렉션 뷰 위젯 953
19.5 라이브 배경화면 만들기 970
19.6 앱 단축키 만들기 975
CHAPTER 20 고급 안드로이드 개발 982
20.1 고급 안드로이드 983
20.2 편집증적인 안드로이드 983
20.3 각기 다른 하드웨어 및 소프트웨어 사용 가능성 처리하기 990
20.4 엄격 모드로 사용자 인터페이스 성능 최적화하기 994
20.5 전화 통신과 SMS 996
CHAPTER 21 앱의 릴리스, 배포, 모니터링 1029
21.1 릴리스 준비하기 1030
21.2 앱 매니페스트의 앱 메타데이터 업데이트하기 1032
21.3 앱의 프로덕션 빌드에 서명하기 1036
21.4 구글 플레이 스토어에서 앱 배포하기 1041
21.5 앱의 수익 창출 1061
21.6 앱 마케팅, 프로모션, 배포 전략 1063
21.7 파이어베이스를 사용해 앱 모니터링하기 1065
찾아보기 1075
책 속으로
안드로이드 코드는 전통적으로 자바 언어로 작성했다. 2017년까지만 해도 안드로이드 애플리케이션 개발에는 자바가 필수 요소였다. 그러나 안드로이드 스튜디오 3.0부터는 자바에 추가하여 코틀린을 완벽하게 지원하고 있다. 따라서 프로그래머는 부분적 또는 전체적으로 코틀린을 사용해 안드로이드 애플리케이션을 작성할 수 있다.
_17쪽
안드로이드 시스템은 브로드캐스트 인텐트를 사용해 인터넷 연결의 변경이나 배터리 충전 상태와 같은 시스템 이벤트를 공지할 수 있다. 전화 송수신이나 SMS 매니저와 같은 네이티브 안드로이드 애플리케이션들은 특정 브로드캐스트 인텐트를 리스닝하는 컴포넌트를 등록해 해당 상황에 맞게 반응한다. 따라서 동일한 인텐트를 리스닝하는 브로드캐스트 리시버를 등록해 네이티브 애플리케이션을 상당수 대체할 수 있다.
_227쪽
단일 화면만 지원하던 앱이 커지면 쉬운 사용자의 상호 작용을 위해 이동(찾아가기) 패턴을 통합할 필요가 커진다. 탭은 사용자가 쉽게 최상위 레벨의 액티비티 사이를 왔다 갔다 할 수 있는 한 가지 패턴이다. 반면 하단 내비게이션바는 3개에서 5개까지의 최상위 레벨 액티비티에 지속적인 접근 방식을 제공한다. 마지막으로 내비게이션 드로어는 사용자가 기존 이동(찾아가기) 방식으로 쉽게 접근하면서도 콘텐트에만 초점을 맞출 수 있도록 한다.
_586쪽
새 버전의 구글 플레이 서비스 클라이언트 라이브러리는 안드로이드 지원 라이브러리와 SDK 플랫폼처럼 안드로이드 SDK 매니저를 통해 사용할 수 있다. 구글 플레이 서비스는 지원 라이브러리처럼 업데이트 주기가 안드로이드 플랫폼 SDK보다 훨씬 짧다.
_685쪽
홈 화면 위젯, 좀 더 적절한 표현인 AppWidgets은 한마디로 다른 애플리케이션에 추가될 수 있는 시각적 애플리케이션 컴포넌트다. 앱 위젯의 가장 큰 특징은 사용자가 애플리케이션의 상호 작용 중 일부를 홈 화면 안에 직접 탑재할 수 있다는 것이다. 잘 만든 앱 위젯들은 배터리를 적게 소모하면서도 유용하고 간결한 정보를 적재적소에 제공한다.
_928쪽
출판사 서평
이 책의 주요 내용
■ 작업 스케줄러와 안드로이드 아키텍처 컴포넌트(Live Data와 Room 포함)를 비롯한 안드로이드 API
■ 상세 안드로이드 스튜디오 IDE 탐험 및 코틀린 소개
■ 머티리얼 디자인 원칙, 디자인 가이드라인, 내비게이션 패턴, UI 베스트 프랙티스
■ 모든 안드로이드 폼 팩터를 위한 매력적인 UI 생성 기술
■ 지도, 위치 기반 서비스, Awareness API를 비롯한 파이어베이스 및 구글 플레이 서비스 API
라이브러리
■ 향후 안드로이드 개발 프로젝트를 위한 튼튼한 토대
기본정보
ISBN | 9791188621583 ( 1188621580 ) | ||
---|---|---|---|
발행(출시)일자 | 2019년 11월 01일 | ||
쪽수 | 1112쪽 | ||
크기 |
190 * 246
* 50
mm
/ 1889 g
|
||
총권수 | 1권 | ||
시리즈명 |
제이펍의 모바일 시리즈
|
||
원서명/저자명 | Professional Android/Meier, Reto |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립