Unboxing Android USB [electronic resource] : A hands on approach with real world examples /
Regupathy, Rajaram.author.
Unboxing Android USB focuses on apps that use USB. This book covers everything starting from simple tasks like managing media with USB to complex tasks like Android ADB and developing application which exploit the potential of USB framework. With use cases that help developers build real world apps in real-time utilizing the advanced features of USB framework Unboxing Android USB tries to cover every single aspect of the app development cycle in totality. Unboxing Android USB helps you learn newly introduced android open accessory protocol with unique examples such as using USB Keyboard with Android device without USB host mode enabled and switching from MTP to MSC. The book is organized based on the USB functions, with each chapter explaining different USB classes available in Android. The functionalities are explained by starting from the USB specification followed by block diagrams that explain different blocks available in that USB class, followed by sequence diagram that elucidates flow of control and data. Each chapter has a unique sample Android application that uses the particular USB function.
Contents at aGlance; Introduction; Chapter 1: Getting Started: The Android USB Framework; Android CDD - USB; USB Device Mode; USB Host Mode; USB Accessory Mode; Android USB Architecture; USB Service; USB Function; android.hardware.usb; Other Infra; USB Service; USB Function; libusbhost; Kernel USB File System; Other Infra; Android USB Packages; android.hardware.usb; UsbAccessory; UsbDevice; UsbManager; UsbDeviceConnection; UsbInterface; UsbEndpoint; UsbRequest; Conclusion; Chapter 2: Discovering and Managing USB Within Android; USB Device Management; USB Host Management; USB Service
USB Device ManagerUSB Function Configuration; Android Gadget Driver uevents; Case 1: Discovering USB Device State Changes; Case 2: Managing USB Device Mode Functionality; USB Host Manager; Stage 1: Discovering a Device; Stage 2: Communicating with a Device; Stage 3: Terminating Communication with a Device; Sample 1: USBView; Design and Flow; Conclusion; Chapter 3: USB Storage; USB Mass Storage (UMS) Overview; Command Block Wrapper (CBW); Command Status Wrapper (CSW); Android Mass Storage Framework; Android USB Mass Storage Device Framework; Sharing the Storage
Android USB Mass Storage Host FrameworkUSB Media Transfer Protocol (MTP) Overview; Media Transfer Protocol Specification Overview; Android MTP Responder Framework; MTP Responder: Command/Response Sequence; Android MTP Initiator Framework; MTP Initiator: Discovering and Managing an MTP Device; Example 1: Switching MTP to UMS; Design and Flow; To Switch to UMS Mode; To Switch to MTP Mode; Example 2: MTP Initiator Application; Design and Flow; Conclusion; Chapter 4: USB Tethering; RNDIS Specification Overview; Android USB Tethering Framework; Enabling USB Tethering
Example: Reverse Tethering Over USBDesign and Flow; Host Setup; Device Setup; Chapter 5: USB Accessory; Android Open Accessory Protocol; Getting Accessory Protocol Version; Managing HID; Switching to Accessory Mode; Informational Requests; USB HID Specification; Android Open Accessory Framework; Detecting an AOA Device; Communicating with AOA in Accessory Mode; Registering and Communicating in HID Mode; Example: Android Open Accessory NFC Reader Using Cypress Fx3; Design and Flow; Conclusion; Chapter 6: USB Audio; USB Audio Specification; Android USB Audio; Intent for DEVICE_OUT_USB_ACCESSORY
Intent for DEVICE_OUT_USB_DEVICEUSB Host Audio; Example: How to Play Audio Over a USB Headset from an Android Device; USB Device Audio; Switching to Accessory Device Audio Mode; Example: Android Accessory Audio Dock Using Cypress FX3; Conclusion; Chapter 7: Android Debug Bridge (ADB); Setting Up ADB; Windows; Linux; ADB Protocol; Client  Server Protocol; Server  ADB Daemon Protocol; Android ADB Architecture; Example 1: Using JDB with ADB; Example 2: Backing Up Your Phone with ADB; Chapter 8:Battery Charging Using USB; Types of USB Chargers; Wall Charger; Personal Computer
USB Battery Specification Overview
Includes index.
Unboxing Android USB focuses on apps that use USB. This book covers everything starting from simple tasks like managing media with USB to complex tasks like Android ADB and developing application which exploit the potential of USB framework. With use cases that help developers build real world apps in real-time utilizing the advanced features of USB framework Unboxing Android USB tries to cover every single aspect of the app development cycle in totality. Unboxing Android USB helps you learn newly introduced android open accessory protocol with unique examples such as using USB Keyboard with Android device without USB host mode enabled and switching from MTP to MSC. The book is organized based on the USB functions, with each chapter explaining different USB classes available in Android. The functionalities are explained by starting from the USB specification followed by block diagrams that explain different blocks available in that USB class, followed by sequence diagram that elucidates flow of control and data. Each chapter has a unique sample Android application that uses the particular USB function.
Mobile computing.
Application software.
Software engineering.
Mobile Computing.
Computer Applications.
Software Engineering/Programming and Operating Systems.