Android quickly became almost ubiquitous. With the world transitioning from feature phones to
smartphones, and then discovering that tablets are, after all, devices we can hardly live without,
application developers today have a choice between mostly two platforms: Android and iOS.
Android lowered, some may even say broke, the barrier of entry for application developers,
because all you need to write Android applications is a computer (and of course some
programming knowledge). Tools are free, and almost anyone can now write applications
reaching millions of customers. With Android now spreading to a variety of devices, from tablets
to televisions, it is important to make sure your applications can not only run well on all these
devices but also run better than competing applications. After all, the barrier of entry was lowered
for all application developers and you will in many cases find yourself competing for a slice of the
ever-growing Android applications market. Whether you write applications to make a living,
achieve stardom, or simply make the world a better place, performance will be one of the their
This book assumes you already have some familiarity with Android application development
but want to go one step further and explore what can make your applications run faster. Although
the Android tools and online documentation make it easy to create applications, performance
optimization is sometimes more of an art than a science and is not documented as thoroughly. I
wrote Pro Android Apps Performance Optimization to help you find easy ways to achieve good
performance on virtually all Android devices, whether you are trying to optimize an existing
application or are writing an application from scratch. Android allows developers to use Java,
C/C++, and even assembly languages, and you can implement performance optimizations in
many different ways, from taking advantage of the CPU features to simply using a different
language more tailored to a specific problem.
Today's Android apps developers are often running into the need to refine, improve and optimize their apps performances. As more complex apps can be created, it is even more important for developers to deal with this critical issue.
Android allows developers to write apps using Java, C or a combination of both with the Android SDK and the Android NDK. Pro Android Apps Performance Optimization reveals how to fine-tune your Android apps, making them more stable and faster. In this book, you'll learn the following:
How to optimize your Java code with the SDK, but also how to write and optimize native code using advanced features of the Android NDK such as using ARM single instruction multiple data (SIMD) instructions (in C or assembly)
How to use multithreading in your application, how make best use of memory and how to maximize battery life
How to use to some OpenGL optimizations and to Renderscript, a new feature in Android 3.0 (Honeycomb) and expanded in Android 4.0 (Ice Cream Sandwich).
After reading and using this book, you'll be a better coder and your apps will be better-coded. Better-performing apps mean better reviews and eventually, more money for you as the app developer or your indie shop.
What you’ll learn
How to optimize your applications in Java
How to optimize your applications using the NDK
How to best use memory to maximize performance
How to maximize battery life
How and when to use multi-threading
How to benchmark and profile your code
How to optimize OpenGL code and use Renderscript
Who this book is for
Android developers already familiar with Java and Android SDK, who want to go one step further and learn how to maximize performance.