Embedded Android: Porting, Extending, and Customizing

Embedded Android: Porting, Extending, and Customizing

Karim Yaghmour

Language: English

Pages: 412

ISBN: 1449308295

Format: PDF / Kindle (mobi) / ePub

Embedded Android: Porting, Extending, and Customizing

Karim Yaghmour

Language: English

Pages: 412

ISBN: 1449308295

Format: PDF / Kindle (mobi) / ePub


Looking to port Android to other platforms such as embedded devices? This hands-on book shows you how Android works and how you can adapt it to fit your needs. You’ll delve into Android’s architecture and learn how to navigate its source code, modify its various components, and create your own version of Android for your particular device. You’ll also discover how Android differs from its Linux roots.

If you’re experienced with embedded systems development and have a good handle on Linux, this book helps you mold Android to hardware platforms other than mobile devices.

  • Learn about Android’s development model and the hardware you need to run it
  • Get a quick primer on Android internals, including the Linux kernel and Dalvik virtual machine
  • Set up and explore the AOSP without hardware, using a functional emulator image
  • Understand Android’s non-recursive build system, and learn how to make your own modifications
  • Use evaluation boards to prototype your embedded Android system
  • Examine the native user-space, including the root filesystem layout, the adb tool, and Android’s command line
  • Discover how to interact with—and customize—the Android Framework

Clearly Visual Basic: Programming with Microsoft Visual Basic 2012 (3rd Edition)

Exploring Everyday Things with R and Ruby: Discover the World Around You Through Programming

Design and Prototyping for Drupal

Beginning JavaScript (5th Edition)

 

 

 

 

 

 

 

 

 

 

 

are not visible on the filesystem. [30] This file’s naming is similar to that of the /init..rc we saw earlier. [31] Remember that you’ll need to run build/envsetup.sh and lunch before the paths are properly set to use host tools built as part of the AOSP. Chapter 7. Android Framework Ultimately, your goal is to get your embedded system to run the Android environment users and developers are accustomed to, not simply the native user-space we just covered. That includes

/dev/ashmem/dalvik-heap 6980K 6980K 3218K 2896K system_server [61] 5208K 5208K 1371K 1048K com.android.launcher [124] 5272K 5272K 1343K 1012K com.android.phone [121] ... ------ BINDER FAILED TRANSACTION LOG (/sys/kernel/debug/binder/failed_transactio n_log) ------ *** /sys/kernel/debug/binder/failed_transaction_log: No such file or directory ------ BINDER TRANSACTION LOG (/sys/kernel/debug/binder/transaction_log) ------ *** /sys/kernel/debug/binder/transaction_log: No such file or directory

against each other in quite a few countries. Microsoft is also rumored to be contacting various manufacturers to request royalties for the use of Android; as evidenced by some of the filings made by Barnes & Noble with the courts after it was sued by Microsoft for refusing to pay. How any of this might affect your own product is difficult to say. As always, consult with competent legal counsel as needed. Usually it’s a question of volume. So if your product is for a niche market, you’re probably

through /dev/binder, which will be covered later in this chapter. App developers, however, do not use the Binder mechanism directly. Instead, they must define and interact with interfaces using Android’s Interface Definition Language (IDL). Interface definitions are usually stored in an .aidl file and are processed by the aidl tool to generate the proper stubs and marshaling/unmarshaling code required to transfer objects and data back and forth using the Binder mechanism. Framework Intro

can see, the market is increasingly offering dual-core Android devices, and quad-core devices are just around the corner. Manufacturers are “out-coring” themselves as fast as they can. That doesn’t mean your embedded Android system needs to have that much firepower, but chances are that component pricing will bring the cost of a multicore SoC within your design’s reach in the foreseeable future. Table 5-1. SoC lineup SoC Manufacturer CPU Speed GPU OMAP3 Texas Instruments (TI) ARM Cortex-A8

Download sample

Download