ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Android System Programming: Porting, customizing, and debugging Android HAL

دانلود کتاب برنامه نویسی سیستم اندروید: انتقال، سفارشی سازی و اشکال زدایی اندروید HAL

Android System Programming: Porting, customizing, and debugging Android HAL

مشخصات کتاب

Android System Programming: Porting, customizing, and debugging Android HAL

ویرایش:  
نویسندگان:   
سری:  
ISBN (شابک) : 178712536X, 9781787125360 
ناشر: Packt Publishing 
سال نشر: 2017 
تعداد صفحات: 464 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 8 مگابایت 

قیمت کتاب (تومان) : 52,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 7


در صورت تبدیل فایل کتاب Android System Programming: Porting, customizing, and debugging Android HAL به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب برنامه نویسی سیستم اندروید: انتقال، سفارشی سازی و اشکال زدایی اندروید HAL نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب برنامه نویسی سیستم اندروید: انتقال، سفارشی سازی و اشکال زدایی اندروید HAL



سامانه اندروید خود را بسازید، سفارشی کنید و اشکال‌زدایی کنید

ویژگی‌های کلیدی

  • برنامه‌نویسی در سطح سیستم Android با یکپارچه‌سازی، سفارشی‌سازی، و گسترش پروژه‌های منبع باز محبوب
  • از شبیه‌سازهای اندروید برای کشف پتانسیل واقعی سخت‌افزار خود استفاده کنید
  • تکنیک‌های اشکال‌زدایی کلید را برای ایجاد یک محیط توسعه بدون دردسر مسلط کنید

توضیحات کتاب

برنامه نویسی سیستم اندروید شامل دانش سخت افزاری و نرم افزاری برای کار بر روی برنامه نویسی در سطح سیستم است. توسعه دهندگان باید از تکنیک های مختلفی برای اشکال زدایی اجزای مختلف در دستگاه های هدف استفاده کنند. با تمام چالش ها، معمولاً برای تسلط بر دانش مرتبط در این زمینه، منحنی یادگیری عمیقی دارید. این کتاب نه تنها دانش کلیدی مورد نیاز برای درک برنامه نویسی سیستم اندروید را در اختیار شما قرار می دهد، بلکه شما را در حین انجام پروژه ها و کسب مهارت های اشکال زدایی که می توانید در پروژه های آینده خود استفاده کنید، آماده می کند.

شما با کاوش در تنظیمات اولیه AOSP و ساخت و آزمایش یک تصویر شبیه ساز شروع خواهید کرد. در پروژه اول با نحوه سفارشی سازی و گسترش شبیه ساز اندروید آشنا می شوید. سپس به سراغ چالش واقعی خواهید رفت – ساختن سیستم اندرویدی خود در VirtualBox. خواهید دید که چگونه فرآیند init را اشکال زدایی کنید، مشکل بوت لودر را حل کنید و رابط های سخت افزاری مختلف را فعال کنید. هنگامی که یک سیستم کامل دارید، یاد خواهید گرفت که چگونه آن را از طریق بازیابی وصله و ارتقا دهید. در سرتاسر کتاب، با نکات مفیدی در مورد نحوه ادغام و استفاده مجدد از پروژه‌های منبع باز موجود مانند LineageOS (CyanogenMod)، Android-x86، Xposed و GApps در سیستم خود آشنا خواهید شد.

چیزی که شما دارید یاد خواهد گرفت

  • محیط توسعه اندروید را راه اندازی کنید و مخازن کد منبع را سازماندهی کنید
  • با معماری سیستم اندروید آشنا شوید
  • شبیه ساز اندروید را از درخت منبع AOSP
  • چگونگی فعال کردن وای فای را در شبیه ساز اندروید بیابید
  • فرآیند راه اندازی را با استفاده از یک Ramdisk سفارشی شده اشکال زدایی کنید
  • سیستم اندروید خود را به یک سیستم جدید منتقل کنید پلتفرم با استفاده از VirtualBox
  • دریابید که بازیابی چیست و نحوه فعال کردن آن را در ساخت AOSP ببینید
  • پکیج های OTA را آماده و آزمایش کنید

جدول مطالب

  1. مقدمه ای بر برنامه نویسی سیستم اندروید
  2. تنظیم محیط توسعه
  3. کشف هسته، HAL و سخت افزار مجازی
  4. سفارشی سازی شبیه ساز Android
  5. فعال کردن مترجم ARM و معرفی Native Bridge
  6. اشکال زدایی فرآیند بوت با استفاده از یک Ramdisk سفارشی
  7. فعال کردن Wi-Fi در شبیه ساز اندروید
  8. li>
  9. ایجاد دستگاه خود در VirtualBox
  10. راه اندازی x86vbox با استفاده از PXE/NFS
  11. فعال کردن گرافیک
  12. فعال کردن رابط های سخت افزاری خاص VirtualBox
  13. معرفی بازیابی
  14. ایجاد بسته های OTA
  15. سفارشی سازی و رفع اشکال بازیابی

توضیحاتی درمورد کتاب به خارجی

Build, customize, and debug your own Android system

Key Features

  • Master Android system-level programming by integrating, customizing, and extending popular open source projects
  • Use Android emulators to explore the true potential of your hardware
  • Master key debugging techniques to create a hassle-free development environment

Book Description

Android system programming involves both hardware and software knowledge to work on system level programming. The developers need to use various techniques to debug the different components in the target devices. With all the challenges, you usually have a deep learning curve to master relevant knowledge in this area. This book will not only give you the key knowledge you need to understand Android system programming, but will also prepare you as you get hands-on with projects and gain debugging skills that you can use in your future projects.

You will start by exploring the basic setup of AOSP, and building and testing an emulator image. In the first project, you will learn how to customize and extend the Android emulator. Then you'll move on to the real challenge―building your own Android system on VirtualBox. You'll see how to debug the init process, resolve the bootloader issue, and enable various hardware interfaces. When you have a complete system, you will learn how to patch and upgrade it through recovery. Throughout the book, you will get to know useful tips on how to integrate and reuse existing open source projects such as LineageOS (CyanogenMod), Android-x86, Xposed, and GApps in your own system.

What you will learn

  • Set up the Android development environment and organize source code repositories
  • Get acquainted with the Android system architecture
  • Build the Android emulator from the AOSP source tree
  • Find out how to enable WiFi in the Android emulator
  • Debug the boot up process using a customized Ramdisk
  • Port your Android system to a new platform using VirtualBox
  • Find out what recovery is and see how to enable it in the AOSP build
  • Prepare and test OTA packages

Table of Contents

  1. Introduction to Android System Programming
  2. Setting up the Development Environment
  3. Discovering Kernel, HAL and Virtual Hardware
  4. Customizing the Android Emulator
  5. Enabling ARM Translator and Introducing Native Bridge
  6. Debugging the Boot up Process Using a Customized Ramdisk
  7. Enabling Wi-Fi in the Android Emulator
  8. Creating Your Own Device on VirtualBox
  9. Booting Up x86vbox Using PXE/NFS
  10. Enabling Graphics
  11. Enabling VirtualBox-Specific Hardware Interfaces
  12. Introducing Recovery
  13. Creating OTA Packages
  14. Customizing and Debugging Recovery


فهرست مطالب

Cover
Copyright
Credits
About the Author
About the Reviewers
About the Reviewers
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Introduction to Android System Programming
	What is system programming?
	What is the scope of this book?
	Overview of the Android system
		Kernel
		HAL
		Android system services
		Binder IPC
		Application framework
		Recovery
	The third-party open source projects derived from AOSP
		LineageOS (CyanogenMod)
		Android-x86
		CWM/CMR/TWRP
	Strategy of integration
	Virtual hardware reference platforms
		Introduction to the x86-based Android emulator
		Introduction to ranchu
		VirtualBox-based Android emulators
	Summary
Chapter 2: Setting Up the Development Environment
	Summary of Android versions
	Installing Android SDK and setting up an Android Virtual Device
		Creating AVD in an older version of SDK
		Creating AVD in the latest version of SDK
		Testing the goldfish emulator
		Testing ranchu emulator
	The AOSP build environment and the Android emulator build
		The AOSP build environment
			Installing the required packages
			Installing Open JDK 7 and 8
			Downloading the AOSP source
			Installing repo
			Initializing a repo client and downloading the AOSP source tree
		Building AOSP Android emulator images
		Testing AOSP images
	Creating your own repository mirror
		Repo and manifest
		Using a local mirror for AOSP
		Creating your own mirror of GitHub
		Fetching Git repositories outside GitHub
		Creating your own manifest for client download
	Summary
Chapter 3: Discovering Kernel, HAL, and Virtual Hardware
	What is inside the AOSP?
	Android emulator HAL
		Calling sequence
		Goldfish lights HAL
		The system service and hardware manager
	Android emulator kernel and hardware
		Android emulator hardware
			Goldfish platform bus
			QEMU pipe device
			Goldfish audio device
			Goldfish serial port
		Goldfish kernel
			QEMU pipe
	Summary
Chapter 4: Customizing the Android Emulator
	Why customize the Android emulator
	Understanding build layers
	Build variants
	Creating a new x86emu device
		Checking out from the AOSP
		Checking out from a local mirror
		Creating x86emu device
		AndroidProducts.mk
		BoardConfig.mk
		device.mk
	Building and testing x86emu
		Building x86emu
		Testing x86emu
		Integrating with Eclipse
	Summary
Chapter 5: Enabling the ARM Translator and Introducing Native Bridge
	Introducing Native Bridge
		Setting up Native Bridge as part of the ART initialization
		Pre-initializing Native Bridge
		Initializing Native Bridge
		Loading a native library
	Integrating Houdini to the x86emu device
		Changing the configuration of the x86emu build
		Extending the x86emu device
			Changes to BoardConfig.mk
			Changes to x86emu_x86.mk
			Changes to device.mk
		Using the Android-x86 implementation
			Analyzing libnb.so
			Using binfmt_misc
	Building and testing
		Testing the command-line application
		Testing the Android JNI application
	Summary
Chapter 6: Debugging the Boot Up Process Using a Customized ramdisk
	Analyzing the Android start up process
		Bootloader and the kernel
		Analyzing the init process and ramdisk
			Actions
			Services
			Device-specific actions and services
	Source code and manifest changes
	The Android-x86 start up process
		The first-stage boot using initrd.img
			Inside initrd.img
			Inside install.img
	Building x86emu with initrd.img
	Creating a filesystem image
	Kernel changes
	Booting a disk image on the Android emulator
	Summary
Chapter 7: Enabling Wi-Fi on the Android Emulator
	Wi-Fi on Android
		The Wi-Fi architecture
		QEMU networking and wpa_supplicant in Android
	Adding Wi-Fi to the emulator
		Enabling wpa_supplicant in BoardConfig.mk
		Providing a proper wpa_supplicant configuration
		Creating services in init scripts
			Initializing network interface eth1
			Starting up wpa_supplicant
	Building the source code
		Getting the source code
		Enabling boot with initrd.img
	Testing Wi-Fi on an emulator
		Booting an Android emulator using initrd.img
		Booting an Android emulator using ramdisk.img
		Debugging Wi-Fi start up processes
	Summary
Chapter 8: Creating Your Own Device on VirtualBox
	HAL of x86vbox
		The manifest for x86vbox
	Creating a new x86vbox device
		Product definition Makefile of x86vbox
		Board configuration of x86vbox
		Common x86 devices
		Getting the source code and building the x86vbox device
	Boot up process and device initialization
		Device initialization before Android start-up
		HAL initialization during the Android start-up
	Summary
Chapter 9: Booting Up x86vbox Using PXE/NFS
	Setting up a PXE boot environment
		Preparing PXE Boot ROM
			Downloading and building the LAN Boot ROM
			Fixing up the ROM image
			Configuring the virtual machine to use the LAN Boot ROM
		Setting up the PXE boot environment
	Configuring and testing the PXE boot
		Setting up the virtual machine
		Using VirtualBox internal PXE booting with NAT
		Configuring pxelinux.cfg
			pxelinux.cfg/default
		Setting up a serial port for debugging
	NFS filesystem
		Preparing the kernel
		Setting up the NFS server
	Configuring the PXE boot menu
		Booting to NFS installation
		Booting from a hard disk
		Booting to recovery
	Summary
Chapter 10: Enabling Graphics
	Introduction to the Android graphics architecture
	Delving into graphics HAL
		Loading the Gralloc module
		Initializing GPU
		Initializing framebuffer
		Allocating and releasing the graphic buffer
			Allocating from framebuffer
			Allocating from system memory
			Releasing graphic buffers
		Rendering framebuffer
	Graphics HAL of the Android emulator
		Overview of hardware GLES emulation
		Initializing GPU0 and FB0 in GLES emulation
		GPU0 device implementation
		FB0 device implementation
	Summary
Chapter 11: Enabling VirtualBox-Specific Hardware Interfaces
	OpenGL ES and graphics hardware initialization
		Loading OpenGL ES libraries
			Analyzing the loading process
			Loading the driver
			Creating the rendering engine
		The uvesafb framebuffer driver
			What is uvesafb?
			Testing the uvesafb framebuffer driver
			Initializing uvesafb in x86vbox
	Integrating VirtualBox Guest Additions
		Building VirtualBox Guest Additions
		Integrating vboxsf
		Integrating vboxvideo
		Building and testing images with VirtualBox Guest Additions
	Summary
Chapter 12: Introducing Recovery
	Recovery introduction
		Android device partitions
	Analyzing recovery
		BCB
		Cache partition
		Main flow of recovery
		Retrieving arguments from BCB and cache files
		Factory data reset
		OTA update
	Building recovery for x86vbox
		Building configuration
		Changes to x86vbox
		Changes to recovery
		Changes to newinstaller
		Testing recovery
	Summary
Chapter 13: Creating OTA Packages
	What is inside an OTA package
		Updater
		The updater script
		Edify functions
			Built-in functions
			Installation functions
			Block image functions
			Device extensions
	Preparing an OTA package for x86vbox
	Removing dependencies on /system
		Hardware initialization in recovery
		Minimum execution environment in recovery
	Building and testing
	Summary
Chapter 14: Customizing and Debugging Recovery
	Debugging and testing native Android applications
		Debugging with GDB
		Integration with Eclipse
	Extending recovery and the updater
		Extending recovery
		Extending the updater
		Extending the Python module
		Building and testing the extended recovery and updater
	Supporting the third-party recovery packages
		Xposed recovery package
		Opening GApps
	Summary
Index




نظرات کاربران