Thinking Beyond Your Application Boundaries

If the device on which your app is running is also downloading a large file in the background while playing music from an online radio application, will these heavy network-bound activities affect the application in any way? Or if your app needs a connection to the Internet and for some reason can't get to the Internet, will it crash? What will happen? Knowing the answers to questions like these is what I refer to as thinking beyond your application boundaries.

Not all apps are created equal — and trust me, I've seen some good ones and some really bad ones. Before building or releasing your first Android application, you need to make sure that you know the ins and outs of your application and anything that could affect the application. You need to make sure that your app doesn't crash when users perform routine tap events and screen navigation.

Building applications on embedded devices (mobile phones, tablets, and so on) is much different than doing so on a PC or Mac, and the reason is simple: Your resources (memory, processor, and so on) are very limited. To deal with these limitations, Android devices prioritize their duties. If the Android device is a phone, its main purpose is to perform phone-like duties such as recognizing an incoming call, keeping a signal, sending and receiving text messages, and so on. When a phone call is in progress, the Android system treats that process as vital, and other processes — such as downloading ...

Get Android™ Tablet Application Development For Dummies® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.