Foreword |
|
xxiii | |
Introduction |
|
xxv | |
Chapter 1 Getting Started |
|
1 | (20) |
|
System Requirements for Windows, Mac OS X, and Linux |
|
|
1 | (8) |
|
|
3 | (1) |
|
Installing Java for Windows OS |
|
|
3 | (4) |
|
Installing Java for MacOS X |
|
|
7 | (1) |
|
Installing Java for Linux |
|
|
8 | (1) |
|
Installing Android Studio |
|
|
9 | (9) |
|
Installing Android Studio for Microsoft Windows 10 |
|
|
10 | (2) |
|
Installing Android Studio for Mac OS X |
|
|
12 | (4) |
|
Installing Android Studio for Linux |
|
|
16 | (2) |
|
Launching Android Studio for the First Time |
|
|
18 | (1) |
|
Welcome to Android Studio |
|
|
18 | (1) |
|
Standalone SDK Installation |
|
|
18 | (1) |
|
|
19 | (2) |
Chapter 2 Android Studio Basics |
|
21 | (24) |
|
Creating a New Sample Project |
|
|
22 | (13) |
|
|
27 | (1) |
|
Android Project Structure |
|
|
27 | (6) |
|
Building and Running a Project |
|
|
33 | (2) |
|
|
35 | (6) |
|
|
35 | (1) |
|
Creating a New Android Virtual Device |
|
|
36 | (4) |
|
|
40 | (1) |
|
Migrating Projects from Eclipse |
|
|
41 | (2) |
|
|
43 | (2) |
Chapter 3 Android Application Development With Android Studio |
|
45 | (36) |
|
|
46 | (10) |
|
Creating a New Android Project |
|
|
46 | (6) |
|
Creating a Project with Multiple Target Devices |
|
|
52 | (2) |
|
Launching Android Applications |
|
|
54 | (2) |
|
|
56 | (13) |
|
|
58 | (1) |
|
Adding Template Activities to Android Projects |
|
|
58 | (1) |
|
|
59 | (4) |
|
|
63 | (1) |
|
|
64 | (5) |
|
|
69 | (3) |
|
Adding a Service Template with Android Studio |
|
|
69 | (3) |
|
Add Assets for Android Project |
|
|
72 | (4) |
|
|
73 | (1) |
|
|
74 | (1) |
|
|
75 | (1) |
|
Adding XML Files to an Android Project |
|
|
76 | (1) |
|
|
76 | (2) |
|
|
78 | (1) |
|
|
79 | (2) |
Chapter 4 Android Studio In Depth |
|
81 | (34) |
|
Android Studio Menu Items |
|
|
82 | (9) |
|
|
82 | (1) |
|
|
83 | (1) |
|
|
84 | (2) |
|
|
86 | (1) |
|
|
86 | (2) |
|
|
88 | (1) |
|
|
88 | (1) |
|
|
89 | (1) |
|
|
89 | (1) |
|
|
90 | (1) |
|
|
90 | (1) |
|
|
90 | (1) |
|
|
90 | (1) |
|
|
91 | (1) |
|
Android Studio Tool Views |
|
|
92 | (8) |
|
|
93 | (1) |
|
Android Studio Project Structure |
|
|
94 | (2) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
97 | (1) |
|
|
97 | (1) |
|
Gradle and Gradle Console |
|
|
98 | (1) |
|
|
98 | (1) |
|
|
99 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
100 | (2) |
|
|
101 | (1) |
|
Commenting Out Code Blocks |
|
|
101 | (1) |
|
|
101 | (1) |
|
Navigating Inside the Editor |
|
|
101 | (1) |
|
|
102 | (1) |
|
Android Studio Live Templates |
|
|
102 | (5) |
|
Inserting a Live Template |
|
|
103 | (1) |
|
|
104 | (3) |
|
Code Refactoring in Android Studio |
|
|
107 | (5) |
|
Creating a Signing Key for Android Applications in Android Studio |
|
|
112 | (2) |
|
Building APKs in Android Studio |
|
|
114 | (1) |
|
|
114 | (1) |
Chapter 5 Layouts With Android Studio |
|
115 | (28) |
|
Layouts with Android Studio |
|
|
116 | (4) |
|
|
116 | (2) |
|
Layout Design Structure in Android Studio |
|
|
118 | (2) |
|
|
120 | (3) |
|
|
120 | (1) |
|
Previewing Virtual Device Views |
|
|
121 | (1) |
|
Previewing on Different Android SDK Versions |
|
|
121 | (1) |
|
|
122 | (1) |
|
Designing Layouts with Android Studio |
|
|
123 | (4) |
|
|
127 | (4) |
|
|
127 | (1) |
|
|
127 | (2) |
|
|
129 | (1) |
|
|
130 | (1) |
|
|
130 | (1) |
|
|
131 | (3) |
|
|
131 | (2) |
|
|
133 | (1) |
|
|
134 | (7) |
|
|
141 | (2) |
Chapter 6 Android Build System |
|
143 | (16) |
|
|
144 | (3) |
|
|
144 | (3) |
|
Dependency Management with Gradle |
|
|
147 | (3) |
|
|
147 | (2) |
|
|
149 | (1) |
|
Legacy Maven Dependencies |
|
|
149 | (1) |
|
Android Plugin for Gradle |
|
|
150 | (5) |
|
Configuring Android Plugin for Gradle |
|
|
150 | (1) |
|
|
151 | (1) |
|
|
151 | (1) |
|
|
152 | (1) |
|
|
153 | (2) |
|
|
155 | (1) |
|
|
155 | (2) |
|
Writing Your Own Gradle Plugin |
|
|
155 | (1) |
|
Extending Android Plugin for Gradle |
|
|
156 | (1) |
|
|
157 | (2) |
Chapter 7 Multi-Module Projects |
|
159 | (36) |
|
Adding Modules to Android Project |
|
|
160 | (1) |
|
|
161 | (3) |
|
|
164 | (3) |
|
Working with Android Libraries |
|
|
165 | (2) |
|
|
167 | (2) |
|
|
169 | (4) |
|
Running and Debugging an Android Wear Module |
|
|
170 | (3) |
|
Building APKs with Android Wear Support |
|
|
173 | (1) |
|
|
173 | (6) |
|
|
179 | (3) |
|
|
182 | (2) |
|
|
184 | (5) |
|
|
189 | (3) |
|
Importing a Gradle Project |
|
|
189 | (1) |
|
Importing an Eclipse ADT Project |
|
|
190 | (1) |
|
Importing a JAR/AAR Package |
|
|
191 | (1) |
|
Removing Modules from a Project |
|
|
192 | (1) |
|
|
193 | (2) |
Chapter 8 Debugging And Testing |
|
195 | (50) |
|
|
196 | (10) |
|
|
196 | (1) |
|
|
197 | (1) |
|
|
198 | (8) |
|
|
206 | (10) |
|
|
209 | (1) |
|
|
210 | (3) |
|
|
213 | (1) |
|
|
214 | (1) |
|
|
215 | (1) |
|
|
216 | (6) |
|
Android Virtual Device Extended Controls |
|
|
222 | (3) |
|
|
225 | (1) |
|
Testing Android Code and Application Uls |
|
|
226 | (18) |
|
|
230 | (2) |
|
|
232 | (3) |
|
|
235 | (6) |
|
|
241 | (1) |
|
|
242 | (2) |
|
|
244 | (1) |
Chapter 9 Using Source Control: GIT |
|
245 | (36) |
|
|
246 | (2) |
|
|
246 | (1) |
|
|
247 | (1) |
|
|
248 | (1) |
|
|
249 | (10) |
|
Using Git in Android Studio |
|
|
259 | (7) |
|
|
266 | (13) |
|
|
279 | (2) |
Chapter 10 Continuous Integration |
|
281 | (28) |
|
What Is Continuous Integration? |
|
|
281 | (1) |
|
Integrating Android Projects with a Continuous Integration Server |
|
|
282 | (1) |
|
|
283 | (8) |
|
|
291 | (7) |
|
|
298 | (8) |
|
|
306 | (3) |
Chapter 11 Using Android Ndk With Android Studio |
|
309 | (22) |
|
Introduction to Android NDK |
|
|
310 | (1) |
|
Android Studio NDK Integration |
|
|
310 | (5) |
|
Android NDK Installation on Linux |
|
|
311 | (1) |
|
Android NDK Installation on Windows 10 |
|
|
312 | (1) |
|
Android NDK Installation on Mac OS X |
|
|
313 | (2) |
|
Android NDK with Android Studio Projects |
|
|
315 | (13) |
|
Importing a Sample NDK Project |
|
|
316 | (6) |
|
Migrating an Existing NDK Project |
|
|
322 | (4) |
|
Building Android NDK Projects |
|
|
326 | (2) |
|
Android NDK Projects Release and Deployment |
|
|
328 | (2) |
|
Multi vs. Fat Android Application APKs |
|
|
329 | (1) |
|
|
330 | (1) |
Chapter 12 Writing Your Own Plugin |
|
331 | (32) |
|
IntelliJ Idea Plugin Architecture |
|
|
332 | (28) |
|
|
332 | (9) |
|
|
341 | (1) |
|
|
342 | (1) |
|
|
342 | (9) |
|
|
351 | (3) |
|
|
354 | (6) |
|
Packaging and Distribution |
|
|
360 | (2) |
|
|
362 | (1) |
Chapter 13 Third-Party Tools |
|
363 | (42) |
|
|
363 | (11) |
|
Intel's Android Software Tools |
|
|
374 | (8) |
|
|
374 | (3) |
|
|
377 | (1) |
|
Intel Integrated Performance Primitives (Intel IPP) |
|
|
378 | (1) |
|
Intel Thread Building Blocks (Intel TBB) |
|
|
379 | (1) |
|
|
379 | (2) |
|
|
381 | (1) |
|
|
382 | (5) |
|
Intel Tamper Protection Toolkit |
|
|
382 | (1) |
|
|
382 | (2) |
|
Intel Context Sensing SDK |
|
|
384 | (3) |
|
Qualcomm Android Software Tools |
|
|
387 | (14) |
|
Snapdragon LLVM Compiler for Android |
|
|
388 | (1) |
|
|
388 | (1) |
|
Qualcomm FastCV Computer Vision SDK |
|
|
389 | (4) |
|
Snapdragon SDK for Android |
|
|
393 | (4) |
|
Qualcomm AllPlay Click SDK |
|
|
397 | (2) |
|
|
399 | (2) |
|
|
401 | (3) |
|
|
404 | (1) |
Index |
|
405 | |