TOP
0
0
三民出版.新書搶先報|最速、最優惠的新鮮貨報給你知!
Android核心原理與系統級應用高效開發(簡體書)
滿額折

Android核心原理與系統級應用高效開發(簡體書)

商品資訊

人民幣定價:59 元
定價
:NT$ 354 元
優惠價
87308
海外經銷商無庫存,到貨日平均30天至45天
下單可得紅利積點:9 點
名人/編輯推薦
目次
書摘/試閱
相關商品

名人/編輯推薦

《Android核心原理與系統級應用高效開發》為Android系統級別的開發者系統化而有條理性地展示了龐大的Android系統的軟件結構,點明開發思路;Android應用程式的開發者可以通過《Android核心原理與系統級應用高效開發》加深認識,拓展開發手段;從事Android硬體移植的開發者可以通過《Android核心原理與系統級應用高效開發》加深對系統全局的瞭解。

目次

第1篇 Android核心框架層開發
第1章 Android系統框架
1.1 Android系統基礎結構
1.2 Android的開發環境
1.2.1 開發環境
1.2.2 源代碼獲取
1.2.3 編譯Android源代碼
1.2.4 模擬器運行
1.2.5 使用工具
1.3 系統結構和代碼結構
1.3.1 軟件系統結構
1.3.2 源代碼結構
第2章 編譯結構和各種構建
2.1 Android的系統構建
2.1.1 編譯環境要求
2.1.2 構建流程
2.1.3 環境設置
2.1.4 系統構建結果
2.2 各種部件的構建
2.2.1 Android.mk的語法
2.2.2 各種部件的構建方式
2.2.3 預編譯內容的安裝
2.3 Android編譯的板級支持
2.3.1 支持一個板的工作
2.3.2 buildspec.mk檔的作用
2.3.3 vendersetup.sh和lunch命令
2.3.4 BoardConfig.mk檔的作用
2.3.5 AndroidProducts.mk文件
2.3.6 AndroidBoard.mk檔
2.3.7 編譯中的層疊加
第3章 本地層基礎部分
3.1 本地層基礎部分結構
3.2 C語言基礎:Bionic
3.2.1 Bionic各個部分的結構
3.2.2 Bionic的頭檔
3.2.3 內存洩露的檢查庫
3.2.4 屬性系統的支持
3.3 C語言底層庫
3.3.1 Log庫
3.3.2 C語言工具庫libcutils
3.3.3 屬性和套接字支援
3.4 init可執行程式和相關腳本
3.4.1 init可執行程式的結構
3.4.2 啟動腳本init.rc
3.4.3 init的內建動作和初始化
3.4.4 init的循環
3.4.5 設備管理功能
3.5 shell工具
3.5.1 shell程式sh
3.5.2 命令工具箱toolbox
3.6 Android屬性和套接字機制
3.6.1 屬性機制
3.6.2 套接字機制
第4章 本地層框架部分
4.1 本地層框架部分結構
4.2 框架層的工具庫libutils
4.2.1 libutils的結構
4.2.2 基本的定義和類型
4.2.3 數據結構和容器類
4.2.4 工具類
4.2.5 引用計數和強弱引用指針
4.2.6 線程類及相關輔助功能
4.2.7 檔操作的監聽循環
4.3 作為全局守護進程的可執行程式
4.3.1 app_process
4.3.2 keystore
4.3.3 installd
4.3.4 vold
4.3.5 netd
4.4 Binder的IPC機制結構
4.4.1 Android Binder機制的層次結構
4.4.2 具體Binder的實現
4.5 Binder庫以及相關內容
4.5.1 具體Binder的實現
4.5.2 Binder庫的核心功能
4.5.3 Binder框架和具體IPC結構的實現
4.5.4 IServiceManager相關
4.5.5 Binder庫中的其他部分
4.6 servicemanager可執行程式和服務的實現
4.6.1 服務管理器可執行程式和進程
4.6.2 在系統中實現"服務"
4.6.3 servicemanager對服務的管理
4.6.4 Android中本地服務的層次結構
第5章 本地的啟動流程、調試和設計結構
5.1 Android啟動流程的本地階段
5.1.1 啟動流程概述
5.1.2 BootLoader運行及加載內核
5.1.3 Linux內核運行和加載根文件系統
5.1.4 運行用戶空間的第一個進程
5.1.5 掛接各個文件系統
5.1.6 系統各個進程的運行
5.1.7 啟動圖
5.2 Android本地部分的調試
5.2.1 標準Linux調試方法
5.2.2 使用log的方法
5.2.3 Android的特殊調試工具
5.3 本地程式的結構設計
5.3.1 目標和設計思路
5.3.2 守護進程+保留Socket的設計結構
5.3.3 守護進程+本地層Binder的設計結構
第6章 Java運行環境
6.1 Dalvik虛擬機和相關工具
6.1.1 Dalvik的概述
6.1.2 虛擬機的實現和運行
6.1.3 Dalvik工具
6.1.4 nativehelper庫
6.2 Java基礎庫libcore
6.2.1 libcore的源代碼結構
6.2.2 luni目錄中的內容
6.2.3 libcore中的其他內容
第7章 Java框架層
7.1 Java框架層結構
7.2 Android的Java層的API
7.2.1 Java框架層API的含義
7.2.2 API的描述檔
7.2.3 被隱藏的內容
7.2.4 不贊成使用的(過時的)API
7.3 Java框架庫framework.jar
7.3.1 框架庫的組成和作用
7.3.2 框架庫的API
7.3.3 框架庫的編譯結構
7.3.4 框架庫的各個部分
7.3.5 屬性機制
7.3.6 套接字機制
7.4 Java服務庫services.jar
7.4.1 服務庫的組成和作用
7.4.2 服務管理器
7.4.3 主要的服務功能
7.4.4 啟動結束的處理
7.5 資源包framework—res.apk
7.5.1 資源包的組成和作用
7.5.2 作為API的資源id
7.5.3 資源包AndroidManifest.Xml檔
7.6 策略庫
7.6.1 策略庫的組成和作用
7.6.2 策略庫的功能和使用
7.7 Java層的Binder機制
7.7.1 Java Binder的框架
7.7.2 Java框架層的Binder使用
7.7.3 Binder中參數和返回值的類型
第8章 Java本地調用
8.1 Android的Java本地調用
8.1.1 JNI的基本概念
8.1.2 Android的JNI實現基礎
8.1.3 Android中JNI的存在方式
8.2 在框架中使用JNI
8.2.1 框架層使用JNI的結構
8.2.2 框架層JNI的實現
8.3 在應用套裝程式中使用JNI
8.3.1 應用套裝程式的JNI部分
8.3.2 應用套裝程式中JNI的典型實現方式
8.3.3 結構上的幾種變化
8.4 JNI的高級使用
8.4.1 JNI的雙向調用
8.4.2 線程的處理
8.4.3 JNIHelp中的特殊處理
第9章 Java啟動流程、調試和程式結構
9.1 Java部分的啟動流程
9.1.1 啟動流程概述
9.1.2 Java系統的守護進程
9.1.3 ZygoteInit類的執行
9.1.4 系統服務器部分
9.1.5 Java應用程式部分的啟動
9.2 Java部分的調試
9.2.1 在Java中使用Log
9.2.2 Java層的命令行程式
9.2.3 代碼內容相關的調試
9.2.4 DDMS工具
9.2.5 HierarchyViewer工具
9.3 Java層程式的結構設計
9.3.1 目標和設計思路
9.3.2 在系統服務器中服務的設計結構
9.3.3 Service組件的設計結構
第10章 GUI系統和應用程式管理
10.1 GUI系統的結構和模塊關系
10.2 UI框架庫及相關
10.2.1 基本類型方面
10.2.2 顯示相關
10.2.3 按鍵和事件的處理
10.2.4 其他內容
10.3 Surface圖層系統
10.3.1 Surface系統的結構
10.3.2 Surface本地的介面部分
10.3.3 Surface本地實現部分
10.3.4 Surface的JNI代碼
10.3.5 Surface的Java部分
10.42D圖形系統
10.4.12D圖形系統的結構
10.4.2 Skia底層庫
10.4.3 圖形系統的JNI介面
10.4.42D圖形包
10.53D圖形系統
10.5.1 OpenGL系統的結構
10.5.2 OpenGL的本地代碼
10.5.3 OpenGL的JNI代碼
10.5.4 OpenGL的Java類
10.6 視窗和視圖部分
10.6.1 視窗和視圖部分的結構
10.6.2 視窗管理的底層實現
10.6.3 視圖實現和上層的視窗管理器的實現
10.7 活動和應用程式管理
10.7.1 活動和應用程式管理的結構
10.7.2 活動介面的實現
10.7.3 應用程式管理的實現
第2篇 Android系統級應用開發要點
第11章 Android應用層介面結構與安全
11.1 Android應用層介面結構
11.1.1 標準應用程式和源代碼開發的應用程式
11.1.2 第三方應用程式和預置應用程式
11.2 Android的安全系統
11.2.1 安全機制概述
11.2.2 Linux的用戶和組
11.2.3 Android的許可
11.3 程式簽名問題
11.3.1 Android應用簽名的概念
11.3.2 Android應用簽名的流程
11.3.3 不同的程式簽名
11.3.4 證書生成工具
11.4 安全策略
11.4.1 安全策略的幾個方面
11.4.2 安全策略的實現
11.4.3 安全策略的定制
第12章 應用層的本地內容和NDK開發
12.1 本地應用的標準化
12.2 NDK環境
12.2.1 NDK的基本概念
12.2.2 從幾個方面理解NDK的不同含義
12.3 NDK的組成結構
12.3.1 NDK環境的結構
12.3.2 NDK中包含的內容
12.4 NDK開發基礎
12.4.1 編譯流程
12.4.2 NDK編程要點
12.4.3 開發結構
12.5 使用JNI的方式
12.5.1 NDK中使用JNI工程結構
12.5.2 在本地操作Bitmap位圖
12.5.3 在本地使用OpenGL ES繪制
12.5.4 程式實現
12.6 在本地構建應用
12.6.1 本地應用介面基礎
12.6.2 實現本地活動的輔助庫: android_native_app_glue
12.6.3 程式實現
第13章 預置的應用程式層
13.1 預置應用層程式概述
13.2 預置綜合應用程式
13.2.1 主螢幕
13.2.2 設置
13.2.3 聯系人和電話
13.2.4 短資訊和彩信
13.2.5 瀏覽器和郵件
13.2.6 音樂
13.2.7 照相機和錄音機
13.2.8 畫廊
13.2.9 搜索
13.2.10 時鐘、計算器和日歷
13.3 預置內容提供者
13.3.1 聯系人資訊提供者
13.3.2 媒體資訊提供者
13.3.3 電話資訊提供者
13.3.4 下載資訊提供者
13.4 預置輸入法
13.5 活動墻紙系統
13.5.1 活動墻紙選擇器
13.5.2 幾個具體的活動墻紙
13.6 實現框架功能的應用套裝程式
13.6.1 系統介面
13.6.2 設置信息提供者
13.6.3 幾個主體為Service組件的應用套裝程式
第14章 Android系統定制
14.1 Android系統定制概述
14.2 普通應用程式的定制
14.2.1 普通應用定制的方面
14.2.2 預置的應用程式的組件可見性
14.2.3 組件的intent—filter
14.3 桌面的定制
14.3.1 桌面程式的入口和功能
14.3.2 桌面程式細節
14.3.3 在桌面之前執行的程式
14.4 系統資源的定制
14.4.1 定義資源的概念和原則
14.4.2 一些配置的數值
14.4.3 可繪制內容的定制
14.4.4 樣式和主題的定制
14.4.5 內部佈局的定制
14.5 框架內部組件和介面的定制
14.5.1 內部組件
14.5.2 內部介面
14.6 狀態欄介面的定制
14.6.1 狀態欄介面的功能和佈局
14.6.2 狀態欄介面
14.7 鎖屏介面的定制
14.7.1 鎖屏介面的功能
14.7.2 鎖屏介面
14.8 開機動畫的定制
第15章 系統級的調試和測試
15.1 調試
15.1.1 命令行調試工具
15.1.2 介面上的輔助工具
15.2 測試系統和工具
15.2.1 測試系統的結構
15.2.2 Monkey.
15.2.3 MonkeyRunner
15.3 代碼級別的測試
15.3.1 代碼測試框架
15.3.2 代碼測試方式
15.4 相容性及相容性測試
15.4.1 Android相容性
15.4.2 CTS相容性驗證
15.4.3 CTS的相關源代碼和原理
……
附錄A Android版本演進和Android 4.x

書摘/試閱



1.活動管理器服務(ActivityManagerService)
活動管理服務定義了系統組件層次的管理功能,是服務庫各個功能模塊中比較復雜的一個。
am子目錄主要負責活動管理功能,其中的主文件是ActivityManagerService.java。活動管理器服務的主要ActivityManagerService類繼承了ActivityManagerNative,實際上繼承了以下檔中的介面:frameworks/base/core/java/android/app/IActivityManager.java。
活動管理器服務提供的主要功能如下所示。
● 各個組件的注冊和許可(包括Uri許可)的檢查。
● Activity組件的啟動、返回結果的處理,使用觀測者(IActivityWatcher)。
● Service組件的啟動、停止、綁定、解除綁定。
● BoardcastReceiver組件的注冊、注銷,廣播的發送。
● 處理應用程式的狀態(進程資訊的設置獲取、殺死進程、應用的錯誤、崩潰)。
● 關機、喚醒和睡眠等操作。
● 安裝系統級別的ContentProvider。
相比其他服務,ActivityManagerService偏重於更上層、綜合性的內容。其管是表示應用程式的Application(包括其運行的進程上下文),Activity、Service、BoardcastReceiver和ContentProvider4種組件,以及相關的Permission。
2.視窗管理器服務(WindowManagerService)
視窗管理器服務的主文件是WindowManagerService.java,負責應用程式中視窗相關內容的處理。WindowManagerService的實現Android GUI系統的運行密切相關。
WindowManagerService類實現了以下檔中定義的介面:
frameworks/base/core/java/android/view/IWindowManager.aidl
frameworks/base/core/java/android/view/IWindowSession.aidl
WindowManagerService提供的主要功能如下所示。
● 視窗和View的構建和行為的管理。
● 輸入事件的處理。
● 窗口旋轉、動畫等處理。
● 鎖屏介面等特殊螢幕的處理。
3.包管理器服務(PackageManagerService)
包管理器服務的主文件是PackageManagerService.java,主要負責系統apk包安裝和卸載的相關處理。

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 308
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區