Grin logo
en de es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Software

Implementation of an Android Framework for USB storage access without root rights

Title: Implementation of an Android Framework for USB storage access without root rights

Bachelor Thesis , 2014 , 81 Pages , Grade: 1,0

Autor:in: Magnus Jahnen (Author)

Computer Science - Software
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

This bachelor thesis describes the implementation of an Android framework to access mass storage devices over the USB interface of a smartphone. First the basics of USB (i.e. interfaces, endpoints and USB On the go) and accessing USB devices via the official Android API are discussed. Next the USB mass storage class is explained, which was designed by the USB-IF to access mobile mass storage like USB pen drives or external HDDs.

For communication with mass storage devices, most important are the bulk-only transfer and the SCSI transparent command set. Furthermore file systems, for accessing directories and files, are described. This thesis focuses on the FAT32 file system from Microsoft, because it is the most commonly used file system on such devices.

After the theory part it is time to look at the implementation of the framework. In this section, the first concern is the purpose in general. Then the architecture of the framework and the actual implementation are presented. Important parts are discussed in detail. The thesis finishes with an overview of the test results on various Android devices, a short conclusion and an outlook to future developments. Moreover the current status of the developed framework is visualized.

Excerpt


Inhaltsverzeichnis (Table of Contents)

  • Acknowledgements
  • Abstract
  • Outline of the Thesis
  • Acronyms
  • I. Introduction and Theory
    • 1. Introduction
    • 2. Basics about USB
      • 2.1. Client device hierarchy
      • 2.2. Endpoints
      • 2.3. USB On the go
    • 3. USB on Android
      • 3.1. USB Host API
      • 3.2. Enumerating devices
      • 3.3. Requesting permission for communication
      • 3.4. Communication
      • 3.5. Tearing down the communication
      • 3.6. Listening to attach and detach events
        • 3.6.1. Via BroadcastReceiver
        • 3.6.2. Via AndroidManifest.xml
    • 4. USB Mass storage class
      • 4.1. Bulk-only Transport
      • 4.2. SCSI transparent command set
      • 4.3. SCSI commands
        • 4.3.1. INQUIRY
        • 4.3.2. TEST UNIT READY
        • 4.3.3. READ CAPACITY
        • 4.3.4. READ(10) and WRITE(10)
        • 4.3.5. REQUEST SENSE
    • 5. File systems
      • 5.1. General
        • 5.1.1. Examples
        • 5.1.2. Partition table
      • 5.2. The FAT32 file system
        • 5.2.1. General layout
        • 5.2.2. Boot Sector and FS Information Structure
        • 5.2.3. File Allocation Table
        • 5.2.4. Directories and files
        • 5.2.5. Subdirectories
        • 5.2.6. Long File Name entries
  • II. Implementation
    • 6. Purpose and Overview
      • 6.1. Using the Framework
    • 7. Inside the packages
      • 7.1. The driver package
      • 7.2. The partition package
      • 7.3. The file system package
  • III. Quality Management
    • 8. Testing
      • 8.1. Overview
        • 8.1.1. Testing criteria
      • 8.2. Results
        • 8.2.1. Native support
        • 8.2.2. Performance test
  • IV. Results
    • 9. Summary
      • 9.1. Current status
      • 9.2. Conclusion
    • 10. Outlook

Zielsetzung und Themenschwerpunkte (Objectives and Key Themes)

This bachelor thesis examines the implementation of an Android framework for accessing mass storage devices via the USB interface of a smartphone. The primary objective is to create a framework that enables access to these devices without requiring root privileges on the Android device. The thesis explores the underlying principles of USB communication, including the USB Host API, the USB mass storage class, and the FAT32 file system.

  • USB communication protocols and standards
  • Android framework development and USB Host API
  • USB mass storage class and SCSI commands
  • FAT32 file system structure and implementation
  • Performance and security considerations for USB storage access

Zusammenfassung der Kapitel (Chapter Summaries)

The thesis begins with an introduction to the subject and a discussion of the fundamental concepts of USB communication, including device hierarchy, endpoints, and USB On the Go. Chapter 3 focuses on the USB Host API in Android, outlining the steps involved in enumerating devices, requesting communication permissions, and managing data transfers. Chapter 4 delves into the USB mass storage class, explaining the bulk-only transport mechanism and the SCSI transparent command set used to interact with mass storage devices. Chapter 5 presents an overview of file systems, with a specific emphasis on the FAT32 file system, its structure, and its role in accessing files and directories on USB storage devices.

Chapter 6 provides a detailed overview of the implemented framework, including its purpose, architecture, and key components. Chapter 7 examines the individual packages within the framework, focusing on the driver, partition, and file system packages. Chapter 8 discusses the testing process, outlining the criteria used to evaluate the framework's performance and functionality. Finally, Chapter 9 presents a summary of the framework's current status, draws conclusions about its effectiveness, and outlines potential areas for future development.

Schlüsselwörter (Keywords)

This bachelor thesis focuses on the development of an Android framework for USB storage access, utilizing the USB Host API, the USB mass storage class, and the FAT32 file system. The key themes include: Android framework development, USB communication protocols, mass storage access, file system management, and security considerations. The thesis investigates methods to provide access to USB mass storage devices without requiring root privileges on the Android device.

Excerpt out of 81 pages  - scroll top

Details

Title
Implementation of an Android Framework for USB storage access without root rights
College
Technical University of Munich
Grade
1,0
Author
Magnus Jahnen (Author)
Publication Year
2014
Pages
81
Catalog Number
V335634
ISBN (eBook)
9783668265875
ISBN (Book)
9783668265882
Language
English
Tags
android usb mass storage usb drive bulk root
Product Safety
GRIN Publishing GmbH
Quote paper
Magnus Jahnen (Author), 2014, Implementation of an Android Framework for USB storage access without root rights, Munich, GRIN Verlag, https://www.grin.com/document/335634
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • https://cdn.openpublishing.com/images/brand/1/preview_popup_advertising.jpg
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  81  pages
Grin logo
  • Grin.com
  • Payment & Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint