深入理解Android

出版時間:2012-8  出版社:機(jī)械工業(yè)出版社  作者:鄧凡平  頁數(shù):440  
Tag標(biāo)簽:無  

前言

前言:本書主要內(nèi)容及特色    本書是筆者“深入理解Android”系列的第二本,這一本將關(guān)注重點(diǎn)放在了Android Framework的Java層。在眾多可供分析的知識點(diǎn)中,筆者另辟蹊徑,選擇了SystemServer中的服務(wù)(Service)作為主人公。這些Service大體可由圖1來表示。  圖1  SystemServer中的服務(wù)    由圖1可知,SystemServer中的服務(wù)可劃分為7大類共43項(xiàng)(包括Watchdog在內(nèi)):    位于第一大類的是Android的核心服務(wù),如ActivityManagerService、WindowManager-Service等。    位于第二大類的是和通信相關(guān)的服務(wù),如Wifi的相關(guān)服務(wù)、Telephone的相關(guān)服務(wù)。    位于第三大類的是和系統(tǒng)功能相關(guān)的服務(wù),如AudioService、MountService、UsbService等。    位于第四大類的是BatteryService、VibratorService等服務(wù)。    位于第五大類的是EntropyService、DiskStatsService、Watchdog等相對獨(dú)立的服務(wù)。    位于第六大類的是藍(lán)牙服務(wù)。    位于第七大類的是UI方面的服務(wù),如狀態(tài)欄服務(wù)、通知管理服務(wù)等。    以上這些服務(wù)就是Android Framework Java層的核心。毫不夸張地說,它們也是Android系統(tǒng)的基石。另外,這些服務(wù)的內(nèi)容遠(yuǎn)非一本書所能囊括。作為Android Java層Framework分析的先頭部隊,本書涵蓋了以下內(nèi)容:    第1章,介紹了閱讀本書需要做的一些準(zhǔn)備工作,包括Android 4.0源碼的下載和編譯、Eclipse開發(fā)環(huán)境的搭建,以及Android系統(tǒng)進(jìn)程(system_process)的調(diào)試等。    第2章,介紹了Java Binder和MessageQueue的實(shí)現(xiàn)。    第3章,介紹了SystemServer,并分析了圖1中第五類包含的服務(wù)的工作原理。這些服務(wù)包括EntropyService、DropBoxManagerService、DiskStatsService、DeviceStorageMonitorService、SamplingProfilerService和ClipboardService。    第4章,分析了PackageManagerService,該服務(wù)負(fù)責(zé)Android系統(tǒng)中的Package信息查詢和APK安裝、卸載、更新等方面的工作。    第5章,講解了PowerManagerService,它是Android中電源管理的核心服務(wù)。本章對其中的WakeLock、Power按鍵處理、BatteryStatsService和BatteryService都做了一番較為深入的分析。    第6章,以ActivityManagerService為分析重點(diǎn),該服務(wù)是Android 的核心服務(wù)。本章對ActivityManagerService的啟動、Activity的創(chuàng)建和啟動、BroadcastReceiver的工作原理、Android中的進(jìn)程管理等內(nèi)容進(jìn)行了較為深入的研究。    第7章,對ContentProvider的創(chuàng)建和啟動、SQLite相關(guān)知識、Cursor query和close的實(shí)現(xiàn)等進(jìn)行了較為深入的分析。    第8章,以ContentService和AccountManagerService為分析對象,介紹了數(shù)據(jù)更新通知機(jī)制的實(shí)現(xiàn)、賬戶管理和數(shù)據(jù)同步等方面的知識。    圖1中的其他服務(wù)將會在“深入理解Android”系列的其他書中詳細(xì)分析。該系列書的規(guī)劃請見本書最后面的“深入理解Android系列圖書路線圖”。    本書以直接剖析源碼的方式進(jìn)行講解,旨在引領(lǐng)讀者一步步深入于Android系統(tǒng)中相關(guān)模塊的內(nèi)部原理,去理解它們是如何實(shí)現(xiàn)、如何工作的。在分析過程中,筆者根據(jù)個人研究Android代碼的心得,采用了精簡流程和逐個擊破的方法。同時,筆者還提出了一些難度不大的知識點(diǎn)、相關(guān)的補(bǔ)充閱讀資料,甚至筆者在實(shí)際項(xiàng)目中遇到的開放式問題,留給讀者自行研究和探討??傊P者希望讀者在閱讀完本書后,至少能有以下兩個收獲:    能從“基于Android并高于Android”的角度來看待和分析Android。    能初步具有大型復(fù)雜代碼的分析能力。讀者對象    適合閱讀本書的讀者包括:    (1)Android應(yīng)用開發(fā)工程師    雖然應(yīng)用開發(fā)工程師平常接觸的多是Android SDK,但是只有更深入地理解了Android系統(tǒng)運(yùn)行原理,才能寫出更健壯、更高效的模塊。    (2)Android系統(tǒng)開發(fā)工程師    系統(tǒng)開發(fā)工程師常常需要深入理解系統(tǒng)的運(yùn)轉(zhuǎn)過程,而本書所涉及的內(nèi)容正是他們在工作和學(xué)習(xí)中最想了解的。那些對具體服務(wù)(如ActivityManagerService、PackageManagerService)感興趣的讀者,也可以單刀直入,閱讀本書相關(guān)章節(jié)。    (3)對Android系統(tǒng)運(yùn)行原理感興趣的讀者    這部分讀者需要具有基本的Android開發(fā)知識基礎(chǔ)。如何閱讀本書    本書是針對Android源碼進(jìn)行分析的,而源碼文件所在的路徑一般都很長,例如,文件AndroidRuntime.cpp的真實(shí)路徑是frameworks/base/core/jni/AndroidRuntime.cpp。為了行文方便,在各章節(jié)開頭,均把本章涉及的源碼路徑全部列出,而在具體分析源碼時,則只列出該源碼的文件名。例如:    [-->AndroidRuntime.cpp]    //這里是源碼和一些注釋    另外,本書在描述類之間的關(guān)系及函數(shù)調(diào)用流程上,使用了UML的靜態(tài)類圖及序列圖。UML是一個強(qiáng)大的工具,但它的建模規(guī)范過于煩瑣,為更簡單清晰地描述事情的本質(zhì),本書并未完全遵循UML的建模規(guī)范。這里僅舉一例,如圖2所示。 圖2  UML示例圖    在圖2中:    外部類內(nèi)部的方框用于表示內(nèi)部類。另外,“外部類A.內(nèi)部類B”也用于表示內(nèi)部類。    接口和普通類用同一種框圖表示。    本書所使用的UML圖都比較簡單,讀者不必花費(fèi)大量時間專門學(xué)習(xí)UML。    這里有必要提醒一下,要閱讀此書,應(yīng)具有Java基本知識。    另外,本書和《深入理解Android 卷I》(簡稱“卷I”)部分章節(jié)有一定聯(lián)系,主要集中在Binder和MessageQueue部分。讀者可將“卷I中”這部分內(nèi)容作為補(bǔ)充閱讀資料來學(xué)習(xí)。卷I部分內(nèi)容的電子版下載地址為:    http://download.csdn.net/detail/hzbooks/3677793。    本書涉及的Android 4.0源碼以及一些開發(fā)工具的下載地址為:http://115.com/folder/fauqpj0t#Android-ICS-SOURCE-CODE??闭`和支持    由于作者的水平有限,加之寫作時間倉促,書中難免會出現(xiàn)一些錯誤或不準(zhǔn)確的地方,懇請讀者批評和指正。若有問題,可通過郵箱或在博客上留言與筆者共同討論。筆者的聯(lián)系方式是:    郵箱:fanping.deng@gmail.com    博客:blog.csdn.net/innost、cnblogs.net/innost和http://my.oschina.net/innost/blog致謝    本書即將付梓!首先要感謝楊福川編輯的大力支持。另外,要感謝本書的審稿編輯姜影。    再一次感謝我所在的中科創(chuàng)達(dá)(ThunderSoft)公司。有幸工作在這樣一個互相信任、互相鼓勵、平等和開放式的環(huán)境中,我才能完成本書。公司領(lǐng)導(dǎo)所給予的機(jī)會和挑戰(zhàn),時時鞭策著我保持虛心學(xué)習(xí)的心態(tài)。此外,我所在團(tuán)隊的各位同仁也給予了我不少支持和幫助。本書出版之日,將是我們團(tuán)隊為之努力奮斗的Android系統(tǒng)高效、穩(wěn)定運(yùn)行于客戶手機(jī)之時!    一如既往地感謝妻子和家人,他們是我奮斗的動力。    謝謝在人生和職業(yè)道路上曾給予我指導(dǎo)的諸位師長。    當(dāng)然,最應(yīng)感謝的還是肯花費(fèi)寶貴時間和精力關(guān)注本書的讀者,你們的意見和建議,將會使我獲得巨大的精神財富!鄧凡平  于北京,  中科創(chuàng)達(dá)(ThunderSoft)公司

內(nèi)容概要

  《深入理解Android:卷2》是“深入理解Android”系列的第2本,第1本書上市后獲得廣大讀者高度評價,在Android開發(fā)者社群內(nèi)口口相傳。本書不僅繼承了第1本書的優(yōu)點(diǎn)并改正了其在細(xì)微處存在的一些不足,而且還在寫作的總體思想上進(jìn)行了創(chuàng)新,更強(qiáng)調(diào)從系統(tǒng)設(shè)計者的角度去分析Android系統(tǒng)中各個模塊內(nèi)部的實(shí)現(xiàn)原理和工作機(jī)制。從具體內(nèi)容上講,本書的重點(diǎn)是Android
Framework的Java層,對Java層涉及的核心模塊和服務(wù)進(jìn)行了深入而細(xì)致的分析。通過本書,讀者不僅能對Android系統(tǒng)本身有更深入的理解,而且還能掌握分析大型復(fù)雜源代碼的能力。
  《深入理解Android:卷2》一共8章:第1章介紹了閱讀本書所需要做的準(zhǔn)備工作,包括Android
4.0源碼的下載和編譯、Eclipse環(huán)境的搭建,以及Android系統(tǒng)進(jìn)程(system_process)的調(diào)試等;第2章對Java
Binder和MessageQueue的實(shí)現(xiàn)進(jìn)行了深入分析;第3章仔細(xì)剖析了SystemServer的工作原理,這些服務(wù)包括EntropyService、DropboxManagerService、DiskStatsService、DeviceStorageMonitorService、SamplingProfilerService和ClipboardService;第4章對系統(tǒng)中負(fù)責(zé)Package信息查詢和APK安裝、卸載、更新等工作的服務(wù)PackageManagerService進(jìn)行了詳細(xì)分析;第5章則對Android系統(tǒng)中負(fù)責(zé)電源管理的核心服務(wù)
PowerManagerService的原理進(jìn)行了一番深入的分析;第6章以ActivityManagerService為分析重點(diǎn),它的啟動、Activity的創(chuàng)建和啟動、BroadcastReceiver的工作原理、Android中的進(jìn)程管理等內(nèi)容展開了較為深入的研究;第7章對ContentProvider的創(chuàng)建和啟動、SQLite、Cursor
query和close的實(shí)現(xiàn)等進(jìn)行了深入分析;第8章以ContentService和AccountManagerService為分析對象,介紹了數(shù)據(jù)更新通知機(jī)制的實(shí)現(xiàn),以及賬戶管理和數(shù)據(jù)同步等相關(guān)知識。

作者簡介

  鄧凡平,資深A(yù)ndroid開發(fā)工程師和系統(tǒng)工程師,熱衷于Android源代碼的研究,對Android的架構(gòu)設(shè)計和實(shí)現(xiàn)原理有非常深刻的認(rèn)識和理解,經(jīng)驗(yàn)十分豐富。《深入理解Android:卷I》的作者,同時也是“深入理解Android”系列圖書的總策劃。目前就職于國內(nèi)領(lǐng)先的Android企業(yè)中科創(chuàng)達(dá)(ThunderSoft),負(fù)責(zé)Android
Framework的開發(fā)和維護(hù)。喜歡鉆研,樂于分享,活躍于CSDN、51CTO和開源中國等專業(yè)技術(shù)社區(qū),撰寫的Android
Framework源碼分析的系列文章深受讀者歡迎。此外,他對Linux內(nèi)核、C/C++/Python相關(guān)的技術(shù),以及高性能網(wǎng)絡(luò)服務(wù)器和多核并行開發(fā)等也有一定的研究。

書籍目錄

前言
第1章 搭建Android源碼工作環(huán)境
1.1 Android系統(tǒng)架構(gòu)
1.2 搭建開發(fā)環(huán)境
1.2.1 下載源碼
1.2.2 編譯源碼
1.2.3 利用Eclipse調(diào)試system_process
1.3 本章小結(jié)
第2章 深入理解Java Binder和MessageQueue
2.1 概述
2.2 Java層中的Binder架構(gòu)分析
2.2.1 Binder架構(gòu)總覽
2.2.2 初始化Java層Binder框架
2.2.3 addService實(shí)例分析
2.2.4 Java層Binder架構(gòu)總結(jié)
2.3 心系兩界的MessageQueue
2.3.1 MessageQueue的創(chuàng)建
2.3.2 提取消息
2.3.3 nativePollOnce函數(shù)分析
2.3.4 MessageQueue總結(jié)
2.4 本章小結(jié)
第3章 深入理解SystemServer
3.1 概述
3.2 SystemServer分析
3.2.1 main函數(shù)分析
3.2.2 Service群英會
3.3 EntropyService分析
3.4 DropBoxManagerService分析
3.4.1 DBMS構(gòu)造函數(shù)分析
3.4.2 dropbox日志文件的添加
3.4.3 DBMS和settings數(shù)據(jù)庫
3.5 DiskStatsService和DeviceStorageMonitorService分析
3.5.1 DiskStatsService分析
3.5.2 DeviceStorageManagerService分析
3.6 SamplingProfilerService分析
3.6.1 SamplingProfilerService構(gòu)造函數(shù)分析
3.6.2 SamplingProfilerIntegration分析
3.7 ClipboardService分析
3.7.1 復(fù)制數(shù)據(jù)到剪貼板
3.7.2 從剪切板粘貼數(shù)據(jù)
3.7.3 CBS中的權(quán)限管理
3.8 本章小結(jié)
第4章 深入理解PackageManagerService
4.1 概述
4.2 初識PackageManagerService
4.3 PKMS的main函數(shù)分析
4.3.1 構(gòu)造函數(shù)分析之前期準(zhǔn)備工作
4.3.2 構(gòu)造函數(shù)分析之掃描Package
4.3.3 構(gòu)造函數(shù)分析之掃尾工作
4.3.4 PKMS構(gòu)造函數(shù)總結(jié)
4.4 APK Installation分析
4.4.1 adb install分析
4.4.2 pm分析
4.4.3 installPackageWithVerification函數(shù)分析
4.4.4 APK 安裝流程總結(jié)
4.4.5 Verification介紹
4.5 queryIntentActivities分析
4.5.1 Intent及IntentFilter介紹
4.5.2 Activity信息的管理
4.5.3 Intent 匹配查詢分析
4.5.4 queryIntentActivities總結(jié)
4.6 installd及UserManager介紹
4.6.1 installd介紹
4.6.2 UserManager介紹
4.7 本章學(xué)習(xí)指導(dǎo)
4.8 本章小結(jié)
第5章 深入理解PowerManagerService
5.1 概述
5.2 初識PowerManagerService
5.2.1 PMS構(gòu)造函數(shù)分析
5.2.2 init分析
5.2.3 systemReady分析
5.2.4 BootComplete處理
5.2.5 初識PowerManagerService總結(jié)
5.3 PMS WakeLock分析
5.3.1 WakeLock客戶端分析
5.3.2 PMS acquireWakeLock分析
5.3.3 Power類及LightService類介紹
5.3.4 WakeLock總結(jié)
5.4 userActivity及Power按鍵處理分析
5.4.1 userActivity分析
5.4.2 Power按鍵處理分析
5.5 BatteryService及BatteryStatsService分析
5.5.1 BatteryService分析
5.5.2 BatteryStatsService分析
5.5.3 BatteryService及BatteryStatsService總結(jié)
5.6 本章學(xué)習(xí)指導(dǎo)
5.7 本章小結(jié)
第6章 深入理解ActivityManagerService
6.1 概述
6.2 初識ActivityManagerService
6.2.1 ActivityManagerService的main函數(shù)分析
6.2.2 AMS的 setSystemProcess分析
6.2.3 AMS的 installSystemProviders函數(shù)分析
6.2.4 AMS的 systemReady分析
6.2.5 初識ActivityManagerService總結(jié)
6.3 startActivity分析
6.3.1 從am說起
6.3.2 AMS的startActivityAndWait函數(shù)分析
6.3.3 startActivityLocked分析
6.4 Broadcast和BroadcastReceiver分析
6.4.1 registerReceiver流程分析
6.4.2 sendBroadcast流程分析
6.4.3 BROADCAST_INTENT_MSG消息處理函數(shù)
6.4.4 應(yīng)用進(jìn)程處理廣播分析
6.4.5 廣播處理總結(jié)
6.5 startService之按圖索驥
6.5.1 Service知識介紹
6.5.2 startService流程圖
6.6 AMS中的進(jìn)程管理
6.6.1 Linux進(jìn)程管理介紹
6.6.2 關(guān)于Android中的進(jìn)程管理的介紹
6.6.3 AMS進(jìn)程管理函數(shù)分析
6.6.4 AMS進(jìn)程管理總結(jié)
6.7 App的 Crash處理
6.7.1 應(yīng)用進(jìn)程的Crash處理
6.7.2 AMS的handleApplicationCrash分析
6.7.3 AppDeathRecipient binderDied分析
6.7.4 App的Crash處理總結(jié)
6.8 本章學(xué)習(xí)指導(dǎo)
6.9 本章小結(jié)
第7章 深入理解ContentProvider
7.1 概述
7.2 MediaProvider的啟動及創(chuàng)建
7.2.1 Context的getContentResolver函數(shù)分析
7.2.2 MediaStore.Image.Media的query函數(shù)分析
7.2.3 MediaProvider的啟動及創(chuàng)建總結(jié)
7.3 SQLite創(chuàng)建數(shù)據(jù)庫分析
7.3.1 SQLite及SQLiteDatabase家族
7.3.2 MediaProvider創(chuàng)建數(shù)據(jù)庫分析
7.3.3 SQLiteDatabase創(chuàng)建數(shù)據(jù)庫的分析總結(jié)
7.4 Cursor 的query函數(shù)的實(shí)現(xiàn)分析
7.4.1 提取query關(guān)鍵點(diǎn)
7.4.2 MediaProvider 的query分析
7.4.3 query關(guān)鍵點(diǎn)分析
7.4.4 Cursor query實(shí)現(xiàn)分析總結(jié)
7.5 Cursor close函數(shù)實(shí)現(xiàn)分析
7.5.1 客戶端close的分析
7.5.2 服務(wù)端close的分析
7.5.3 finalize函數(shù)分析
7.5.4 Cursor close函數(shù)總結(jié)
7.6 ContentResolver openAssetFileDescriptor函數(shù)分析
7.6.1 openAssetFileDescriptor之客戶端調(diào)用分析
7.6.2 ContentProvider的 openTypedAssetFile函數(shù)分析
7.6.3 跨進(jìn)程傳遞文件描述符的探討
7.6.4 openAssetFileDescriptor函數(shù)分析總結(jié)
7.7 本章學(xué)習(xí)指導(dǎo)
7.8 本章小結(jié)
第8章 深入理解ContentService和AccountManagerService
8.1 概述
8.2 數(shù)據(jù)更新通知機(jī)制分析
8.2.1 初識ContentService
8.2.2 ContentResovler 的registerContentObserver分析
8.2.3 ContentResolver的 notifyChange分析
8.2.4 數(shù)據(jù)更新通知機(jī)制總結(jié)和深入探討
8.3 AccountManagerService分析
8.3.1 初識AccountManagerService
8.3.2 AccountManager addAccount分析
8.3.3 AccountManagerService的分析總結(jié)
8.4 數(shù)據(jù)同步管理SyncManager分析
8.4.1 初識SyncManager
8.4.2 ContentResolver 的requestSync分析
8.4.3 數(shù)據(jù)同步管理SyncManager分析總結(jié)
8.5 本章學(xué)習(xí)指導(dǎo)
8.6 本章小結(jié)
“深入理解Android”系列書籍的規(guī)劃路線圖

章節(jié)摘錄

版權(quán)頁:   插圖:   2.IntentFilter介紹 “求職方”需要填寫IntentFilter來表達(dá)自己的訴求。Android規(guī)定了3項(xiàng)內(nèi)容。 Action:“求職方”支持的Intent動作(和Intent中的Action對應(yīng))。 Category:“求職方”支持的Intent種類(和Intent的Category對應(yīng))。 Data:求職方支持的Intent數(shù)據(jù)(和Intent的Data對應(yīng),包括URI和MIME類型)。 至此,獵頭公司已有了需求,現(xiàn)在又有了求職者的信息,馬上要做的工作就是匹配查詢。在Android中,該工作被稱為Intent Resolution。由于現(xiàn)在及未來人才都是最寶貴的資源,因此獵頭公司在做匹配工作時,將以Intent Filter列出的3項(xiàng)內(nèi)容為參考標(biāo)準(zhǔn),具體步驟如下: 首先匹配IntentFilter的Action,如果Intent設(shè)置的Action不滿足IntentFilter的Action,則匹配失敗。如果IntentFilter未設(shè)定Action,則匹配成功。 然后檢查IntentFilter的Category,匹配方法同Action的匹配,唯一有些例外的是Category為CATEGORY_DEFAULT的情況。 最后檢查Data。Data的匹配過程比較煩瑣,因?yàn)樗虸ntentFilter設(shè)置的Data內(nèi)容有關(guān),見接下來的介紹。 IntentFilter中的Data可以包括兩個內(nèi)容。 URI:完整格式為“scheme://host:port/path”,包含4個部分,scheme、host、port和path。其中host和port合起來標(biāo)識URI authority,用于指明服務(wù)器的網(wǎng)絡(luò)地址(IP加端口號)。由于uri最多可包含4個部分,因此要根據(jù)情況相應(yīng)部分做匹配檢查。Date type:指定數(shù)據(jù)的MIME類型。 要特別注意的是,uri中也可以攜帶數(shù)據(jù)的類型信息,所以在匹配過程中,還需要考慮uri中指定的數(shù)據(jù)類型。 提示關(guān)于具體的匹配流程,請讀者務(wù)必閱讀SDK docs/guide/topics/intents/intents-filters.html中的說明。 4.5.2 Activity信息的管理 前面在介紹PKMS掃描APK時提到,PKMS將解析得到的package私有的Activity信息加入到自己的數(shù)據(jù)結(jié)構(gòu)mActivities中保存。

媒體關(guān)注與評論

市面上關(guān)于Android源碼分析的書非常多,但是沒有一本書的分析粒度像本書這樣細(xì)致。Android系統(tǒng)本身非常龐大,源代碼錯綜復(fù)雜,的確很難想象僅靠一本書就能透徹分析整個系統(tǒng)的原理?!吧钊肜斫釧ndroid”系列圖書考慮到了這一點(diǎn),于是每一本書只專注于一個大的主題,卷I和卷II關(guān)注的都是Android的框架層,卷I針對的是Native Framework,卷II針對的是Java Framework。如果想從Android系統(tǒng)設(shè)計者的角度徹底理解整個系統(tǒng)的架構(gòu)思想和設(shè)計原理,以及系統(tǒng)中各個服務(wù)和模塊之間錯綜復(fù)雜的關(guān)系,“深入理解Android”系列圖書應(yīng)該是目前最好的選擇之一!——51CTO移動開發(fā)頻道“深入理解Android”系列的卷I上市后,既叫好,又叫座,在Android開發(fā)者圈子里反響強(qiáng)烈。從Android源代碼分析的角度來講,該系列書從內(nèi)容和分析方法上確實(shí)值得稱道,不僅能體現(xiàn)作者的技術(shù)水準(zhǔn),而且能看出作者的用心良苦。在內(nèi)容細(xì)節(jié)和作者自己對Android系統(tǒng)的認(rèn)識深入程度上,卷II在卷I更上一層樓,內(nèi)容更加精彩。不僅深入地分析了Java Framework層各種服務(wù)和模塊的工作原理和實(shí)現(xiàn)機(jī)制,而且還理清了它們之間的關(guān)系。對于想提高Android開發(fā)水平的讀者來說,本書值得反復(fù)研讀!——開源中國社區(qū)

編輯推薦

《深入理解Android:卷2》編輯推薦:經(jīng)典暢銷書《深入理解Android:卷I》姊妹篇,51CTO移動開發(fā)頻道和開源中國社區(qū)一致鼎力推薦!從系統(tǒng)設(shè)計者的角度對Java Framework包含的重要模塊和服務(wù)的源代碼進(jìn)行細(xì)致剖析,深刻揭示其實(shí)現(xiàn)原理和工作機(jī)制。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    深入理解Android PDF格式下載


用戶評論 (總計85條)

 
 

  •   Android深入理解第二卷,很經(jīng)典的一套書。
  •   書的內(nèi)容很不錯,很適合研究android framework的人。
  •   適合有android開發(fā)基礎(chǔ)的人
  •   是針對android4.0代碼講解的,不錯!好書。
  •   這是一本對了解Framework層非常實(shí)用的一本書,當(dāng)當(dāng)?shù)奈锪饕卜浅??,昨天下班才下的訂單,上午就到了?/li>
  •   想深入了解系統(tǒng)的可以看看
  •   講的比較細(xì),適合想深入了解的同學(xué); 其它的不說了,買了自己看吧,很不錯的
  •   學(xué)習(xí)andoird framework的好資料
  •   內(nèi)容詳細(xì),但門檻較高,需要有一定的基礎(chǔ)知識才能理解。
  •   適合看完一卷后再看
  •   這本書是基于安卓4.0講解的,與我現(xiàn)在的工作比較吻合
  •   卷1寫得很好,卷2應(yīng)當(dāng)不錯,只是尚未翻閱,不便評論。
  •   還在看卷一,但是卷一不錯卷二也應(yīng)該可以吧~書的質(zhì)量很好
  •   剛?cè)腴T 等多做幾個小項(xiàng)目練習(xí)后在研究研究
  •   很好的一本書。正在研究。
  •   想擴(kuò)展自己的研究層面的一本書
  •   經(jīng)典中的經(jīng)典, 安卓必看
  •   這本書講得比較深 要有基礎(chǔ)才看得懂
  •   適合希望提高水平成為高手的開發(fā)者
  •   書不錯,內(nèi)容灰常好,有幫助,就是書的質(zhì)量稍微差點(diǎn)~ 總體很不錯,值得入手~加油
  •   準(zhǔn)備閱讀準(zhǔn)備閱讀
  •   很好,認(rèn)真閱讀中...
  •   需要點(diǎn)時間來閱讀
  •   沒有直徑,不懂E文,只有靠看走在技術(shù)前沿的書。
  •   如果沒有接觸過底層,可以看看,講的還是比較清晰的,雖然有一部分我也沒太看懂
  •   書是正版,很滿意,享用中
  •   紙張和內(nèi)容還不錯。
  •   正在看,內(nèi)容非常好
  •   這個作為工具用書 感覺很好 發(fā)貨也快 一直選擇當(dāng)當(dāng)網(wǎng)
  •   還是能學(xué)到不少東西的,建議購買
  •   剛收到就來確認(rèn)了,書不錯,當(dāng)當(dāng)物流也很滿意,全5分,沒的說。
  •   too much copy
  •   是正版,很好,上午10點(diǎn)訂的,下午3點(diǎn)就到了,真TM快
  •   幫LG買的工具書,希望對他有幫助。
  •   看了第一冊感覺還好
  •   Famewok必看
  •   第一本很好,就買了第二本老大要求必須看的書,所以還是買了!
  •   書非常好,就是有點(diǎn)深奧。
  •   書不錯哦,印刷差點(diǎn)
  •   聽別人說很好,買來先收藏。
  •   說實(shí)在的,學(xué)習(xí)android這種開源的東西,如果有比較好的功底,還是研究源碼比較好,自己研究了,自己才能理解。
  •   當(dāng)當(dāng)服務(wù)真的是很到位,然后評價一下這書,這書android講得深了些,對于初級朋友看,建議不太適合。
  •   對于android底層開發(fā)人員有很大幫助
  •   詳細(xì)介紹了framework層的內(nèi)容
  •   對基礎(chǔ)服務(wù)的運(yùn)行過程進(jìn)行了分析。
  •   還不錯吧,比較深入,部分內(nèi)容不太好懂
  •   準(zhǔn)備入手學(xué)習(xí)Andoid。這個書介紹的不錯。只有了解系統(tǒng)運(yùn)作,才能更好地用好Andoid
  •   這次都是服務(wù)類的
  •   挺好的,適合有一定開發(fā)基礎(chǔ)的人購買。
  •   紙張沒有卷一來的好,感覺看起來不是很舒服.快遞倒是很快.晚上訂的隔天早上就來了
  •   慕名買的,看過卷一,卷二應(yīng)該也不錯
  •   書忒難了,自以為工作3年,可以自如的看懂,發(fā)現(xiàn)自己對這底層無比陌生。得慢慢沉下心來消化了
  •   沒仔細(xì)看,不過覺得內(nèi)容挺不錯。
  •   內(nèi)容較深!適合搞研究!
  •   看完后再做詳細(xì)評論
  •   終于拿到這本書了,粗略瀏覽了下正是想要了解的內(nèi)容,真心不錯
  •   有深度,需要一定基礎(chǔ) 適合細(xì)細(xì)研讀
  •   需要更深層次了解的,才需要看
  •   內(nèi)容夠深,紙質(zhì)略差
  •   內(nèi)容整體還是滿意,就是印刷紙張有點(diǎn)差,
  •   還不錯,再看中....
  •   買了很久了,一直沒時間看
  •   書寫的不錯,學(xué)習(xí)引導(dǎo)
  •   送貨員態(tài)度不怎么樣
  •   書的紙張看著還可以!
  •   我訂單上寫的清清楚楚,貨到付款,POS機(jī)刷卡,當(dāng)我領(lǐng)書的時候卻告知要現(xiàn)金。又要專門去取一次(之前就估算好日期,等著發(fā)了工資一起取的)
  •   書不錯,開始看
  •   第二卷明顯沒多少內(nèi)容。 讓我對這個作者很失望。都急著撈錢。
  •   大概粗略的看了一遍,就是把源碼加了一點(diǎn)注釋。想看的關(guān)鍵代碼都沒有怎么講,都是講了些邊邊角角的內(nèi)容,
  •   全是講C++,深奧點(diǎn)了,沒有做到淺顯易懂,不建議看。
  •   此卷2主要講了android系統(tǒng)的幾個服務(wù),內(nèi)容較少不夠充實(shí),跟卷1比,差距比很大。沖著卷1的好評買的,但是這個卷2比較失望。
  •   對于我來說有些困難了,主要是沒時間細(xì)讀
  •   基本上就是簡單的帶讀者瀏覽下源代碼,簡單解釋下實(shí)現(xiàn),這些實(shí)現(xiàn),即使自己看也能看懂的,不難,多花些時間而已,所謂深入應(yīng)該是知其所以然,也就是說說架構(gòu)上為啥要這樣設(shè)計,好處到底有哪些,剖析其好處和弊端以及對系統(tǒng)層和一個用層的影響,單純的瀏覽源代碼,總覺得算不上深入
  •   卷1的補(bǔ)充。寫的還可以,但不如卷1。
  •   書還不錯,可惜沒有附帶光盤。
  •   紙張不錯,賣的比1貴,內(nèi)容比1少。
  •   這本不錯。。。。。。。
  •   自己水平有限,寫的很深奧啊,過段時間在讀
  •   雖然是同事,但是書籍確實(shí)很一般
  •   不錯的書,推薦,很給力
  •   還不錯,書本新,送貨快
  •   s深入理解android
  •   這是一本android產(chǎn)品開發(fā)的好書。
  •   挺好的,他的第一本我也買了。
  •   Android mechanic
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7