O'Reilly logo

Application Security for the Android Platform by Jeff Six

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 2. Android Architecture

Mobile platforms have both advantages and disadvantages in relation to traditional desktop and server platforms. On the disadvantage side, mobile platforms typically have much less computing power at their disposal, less memory, fewer processor capabilities, and less mass storage. However, on the advantage side, they benefit from designers having learned from decades of experience. In addition, users expect very different things from the mobile and desktop worlds. Basically, mobile platforms and desktop (or server) platforms are distinct environments for application development.

One of the primary differences between desktop platforms and mobile platforms is the context under which applications run. On desktop platforms such as Microsoft Windows and Linux, applications typically run as the user who starts them. (Yes, there are provisions in both environments to run applications as separate user accounts, but this is the exception for desktop environments.) So if you install a game and run it, it runs with the same set of permissions that you have. That game would be allowed by the operating system to access your financial files, your Internet history, and your photo library just because it runs as you and gets to act as you, from the operating system’s perspective. This can be especially harmful since Windows users have traditionally run as Administrator, with full privileges on the system.

In the Android world, things work somewhat differently. Each ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required