John Wiley & Sons Expert Android Studio Cover Expert Android Programming is packed with best practices and advanced tips and techniques on Android.. Product #: 978-1-119-08925-4 Regular price: $52.24 $52.24 Auf Lager

Expert Android Studio

Yener, Murat / Dundar, Onur

Cover

1. Auflage Oktober 2016
456 Seiten, Softcover
Praktikerbuch

ISBN: 978-1-119-08925-4
John Wiley & Sons

Kurzbeschreibung

Expert Android Programming is packed with best practices and advanced tips and techniques on Android tools, architecture, UI design, testing, and performance. You'll discover how to create sophisticated applications, build new skills, and combine your newly gained knowledge with your own expertise to create innovative, exciting net applications. Through it all, advanced APIs and libraries offer you access to new programming opportunities.
* Discover the basics of working in Android Studio and Gradle, as well as the application architecture of the latest Android platform
* Understand the application backend, and work with the Native Development Kit and media while integrating Google services and leveraging the new camera API
* Explore Android connectivity features and sensors, as well as the Android Support Library and user experience
* Optimize battery usage, leverage connectivity features, consider device management and administration tactics, and test your Android applications

Jetzt kaufen

Preis: 55,90 €

Preis inkl. MwSt, zzgl. Versand

Weitere Versionen

epubpdf

Take your Android programming skills to the next level by unleashing the potential of Android Studio

Expert Android Studio bridges the gap between your Android programing skills with the provided tools including Android Studio, NDK, Gradle and Plugins for IntelliJ Idea Platform. Packed with best practices and advanced tips and techniques on Android tools, development cycle, continuos integration, release management, testing, and performance, this book offers professional guidance to experienced developers who want to push the boundaries of the Android platform with the developer tools. You'll discover how to use the tools and techniques to unleash your true potential as a developer.
* Discover the basics of working in Android Studio and Gradle, as well as the application architecture of the latest Android platform
* Understand Native Development Kit and its integration with Android Studio
* Complete your development lifecycle with automated tests, dependency management, continuos integration and release management
* Writing your own Gradle plugins to customize build cycle
* Writing your own plugins for Android Studio to help your development tasks.

Expert Android Studio is a tool for expert and experienced developers who want to learn how to make use of the tools while creating Android applications for use on mobile devices.

FOREWORD xxiii

INTRODUCTION xxv

CHAPTER 1: GETTING STARTED 1

System Requirements for Windows, Mac OS X, and Linux 1

Installing Java 3

Installing Java for Windows OS 3

Installing Java for MacOS X 7

Installing Java for Linux 8

Installing Android Studio 9

Installing Android Studio for Microsoft Windows 10 10

Installing Android Studio for Mac OS X 12

Installing Android Studio for Linux 16

Launching Android Studio for the First Time 18

Welcome to Android Studio 18

Standalone SDK Installation 18

Summary 19

CHAPTER 2: ANDROID STUDIO BASICS 21

Creating a New Sample Project 22

Using Different SDKs 27

Android Project Structure 27

Building and Running a Project 33

Android Emulator 35

Installing HAXM 35

Creating a New Android Virtual Device 36

Using ADB 40

Migrating Projects from Eclipse 41

Summary 43

CHAPTER 3: ANDROID APPLICATION DEVELOPMENT WITH ANDROID STUDIO 45

Android Projects 46

Creating a New Android Project 46

Creating a Project with Multiple Target Devices 52

Launching Android Applications 54

Android Activities 56

The Intent Event Handler 58

Adding Template Activities to Android Projects 58

Adding a Blank Activity 59

Android Fragments 63

Adding a Tabbed Activity 64

Android Services 69

Adding a Service Template with Android Studio 69

Add Assets for Android Project 72

Adding Images Assets 73

Adding Sound Assets 74

Adding Video Assets 75

Adding XML Files to an Android Project 76

Android Manifest File 76

Android Modules 78

Summary 79

CHAPTER 4: ANDROID STUDIO IN DEPTH 81

Android Studio Menu Items 82

Android Studio 82

File 83

Edit 84

View 86

Navigate 86

Code 88

Analyze 88

Refactor 89

Build 89

Run 90

Tools 90

Version Control System 90

Window and Help Menu 90

Android Studio Shortcuts 91

Android Studio Tool Views 92

Messages 93

Android Studio Project Structure 94

Favorites 96

Android Monitor 96

Structure 97

Android Model 97

Gradle and Gradle Console 98

Run 98

Debug 99

Event Logs 100

Terminal 100

Android Studio Editor 100

Code Assist 101

Commenting Out Code Blocks 101

Moving Code Blocks 101

Navigating Inside the Editor 101

Refactoring 102

Android Studio Live Templates 102

Inserting a Live Template 103

Creating Live Templates 104

Code Refactoring in Android Studio 107

Creating a Signing Key for Android Applications in Android Studio 112

Building APKs in Android Studio 114

Summary 114

CHAPTER 5: LAYOUTS WITH ANDROID STUDIO 115

Layouts with Android Studio 116

Adding a New Layout File 116

Layout Design Structure in Android Studio 118

Layout Previews 120

Layout Rendering Options 120

Previewing Virtual Device Views 121

Previewing on Different Android SDK Versions 121

Selecting Themes 122

Designing Layouts with Android Studio 123

Managing Resources 127

Using Strings 127

Using Styles 127

Using Dimens 129

Using Colors 130

Using Drawables 130

Using Layout Tools 131

Translation 131

Activity Association 133

Asset Management 134

Summary 141

CHAPTER 6: ANDROID BUILD SYSTEM 143

Using Gradle 144

Anatomy of Gradle 144

Dependency Management with Gradle 147

External Dependencies 147

Local Dependencies 149

Legacy Maven Dependencies 149

Android Plugin for Gradle 150

Configuring Android Plugin for Gradle 150

Build Configuration 151

Build Tasks 151

Flavors 152

ProGuard 153

Automated Tests 155

Gradle Plugins 155

Writing Your Own Gradle Plugin 155

Extending Android Plugin for Gradle 156

Summary 157

CHAPTER 7: MULTI-MODULE PROJECTS 159

Adding Modules to Android Project 160

Phone & Tablet Module 161

Android Libraries 164

Working with Android Libraries 165

Java Libraries 167

Android Wear Module 169

Running and Debugging an Android Wear Module 170

Building APKs with Android Wear Support 173

Android TV Module 173

Glass Module 179

Android Auto Module 182

Google Cloud Module 184

Importing Modules 189

Importing a Gradle Project 189

Importing an Eclipse ADT Project 190

Importing a JAR/AAR Package 191

Removing Modules from a Project 192

Summary 193

CHAPTER 8: DEBUGGING AND TESTING 195

Debugging Android Code 196

Android Debug Bridge 196

Wireless Debugging 197

Start Debugging 198

Android Monitor 206

Using logcat 209

Using Memory Monitor 210

Using CPU Monitor 213

Using GPU Monitor 214

Using Network Monitor 215

Android Device Monitor 216

Android Virtual Device Extended Controls 222

Using Lint 225

Testing Android Code and Application UIs 226

Unit Tests 230

Integration Tests 232

UI Tests 235

Performance Testing 241

Performance Tests Task 242

Summary 244

CHAPTER 9: USING SOURCE CONTROL: GIT 245

Introduction to Git 246

Understanding Git 246

Installing Git 247

Using Git 248

Using the GitHub Client 249

Using Git in Android Studio 259

Git Flow 266

Summary 279

CHAPTER 10: CONTINUOUS INTEGRATION 281

What Is Continuous Integration? 281

Integrating Android Projects with a Continuous Integration Server 282

Installing Jenkins 283

Creating Build Jobs 291

Release Management 298

Summary 306

CHAPTER 11: USING ANDROID NDK WITH ANDROID STUDIO 309

Introduction to Android NDK 310

Android Studio NDK Integration 310

Android NDK Installation on Linux 311

Android NDK Installation on Windows 10 312

Android NDK Installation on Mac OS X 313

Android NDK with Android Studio Projects 315

Importing a Sample NDK Project 316

Migrating an Existing NDK Project 322

Building Android NDK Projects 326

Android NDK Projects Release and Deployment 328

Multi vs. Fat Android Application APKs 329

Summary 330

CHAPTER 12: WRITING YOUR OWN PLUGIN 331

IntelliJ Idea Plugin Architecture 332

Actions 332

Threading 341

File System 342

Projects and Components 342

Editors 351

Wizards 354

Packaging and Distribution 360

Summary 362

CHAPTER 13: THIRD-PARTY TOOLS 363

Android Studio Plugins 363

Intel's Android Software Tools 374

Intel System Studio 374

Intel C++ Compiler 377

Intel Integrated Performance Primitives (Intel IPP) 378

Intel Thread Building Blocks (Intel TBB) 379

Intel VTune Amplifier 379

Intel GPA 381

Intel INDE 382

Intel Tamper Protection Toolkit 382

Intel Multi-OS Engine 382

Intel Context Sensing SDK 384

Qualcomm Android Software Tools 387

Snapdragon LLVM Compiler for Android 388

Qualcomm Adreno GPU SDK 388

Qualcomm FastCV Computer Vision SDK 389

Snapdragon SDK for Android 393

Qualcomm AllPlay Click SDK 397

Qualcomm Profilers 399

NVIDIA Software Tools 401

Summary 404

INDEX 405
Murat Yener is a Developer at Intel, a regular JavaOne speaker, and a popular blogger. Murat is a code geek and open source committer with extensive experience on developing Java, Web, JavaEE and OSGi applications in addition to teaching courses and mentoring. Murat is an Eclipse committer and one of the initial committers of Eclipse Libra project. Besides developing native Android apps, he is also working on building HTML5 apps and Hybrid mobile apps with mGWT. He has been a user group leader at GDG Istanbul since 2009. Murat is a regular speaker at conferences like JavaOne, EclipseCon and user group meetings.

Onur Dundar is a software engineer who graduated from the Computer Engineering Department of Bogazici University. He started working on embedded systems while he was at the university, and in his senior year project, he worked with wireless sensor networks for security and health monitoring. Onur started his career at JPMorgan Chase & Co. Then, he worked at Intel Corporation for 4 years as a software application engineer. He has specialized in embedded Linux and mostly worked on IPTV platforms, Android, as well as IoT platforms, such as Intel Galileo and Edison, and has developed applications for them. He has also helped software developers enhance their applications on these platforms.