發表於2024-11-09
學習為企業係統構建數據驅動的Android應用程序
Android設備已經跨越消費應用範疇,進入企業領域。如果你準備著手構建與企業係統集成的數據驅動型Android應用程序,那麼本書無疑是理想之選。 Android數據庫應用編程——為企業開發數據驅動Android應用 透徹講述如何使用內容提供器共享數據、使用適配器顯示數據以及使用Web服務傳輸數據,介紹集成應用程序和現有企業係統、保護數據以及同步數據的方法。通過閱讀本書,你將深入理解如何創建當今企業所需的數據密集型應用程序。
《Android數據庫應用編程:為企業開發數據驅動Android應用》主要內容
◆ 重點討論為基於REST的應用程序創建和使用簡單數據庫以便緩存和同步結果
◆ 介紹內容提供器、REST、並發和網絡
◆ 詳解使用Hibernate創建REST風格的Web服務以及將其連接到Android
◆ 通過避免在Internet上執行CRUD操作來提高性能
◆ 開始編寫連接到Android的後端雲服務
◆ 介紹新的開源和通用同步框架(專門與Android API集成)
◆ 解決應用程序實現中的安全問題
Zigurd Mednieks,是一位Android係統開發顧問,曾撰寫多本Android軟件開發書籍。
G. Blake Meike,是一位工程師、作傢和教師,從Java和Android誕生之初,便開始使用這些技術。
Laird Dornin,擔任一傢重要無綫運營商的架構師,曾參與構建移動Java操作係統,已與他人閤著兩本Android開發書籍。
Zane Pan,先後在多傢大公司(包括DEC、Intuit、EMC及最近的Nokia)擔任架構師。
第1章 Android平闆和智能手機開發 1
1.1 Android是一個Java操作係統 2
1.2 工具和第一個Android應用程序 2
1.2.1 前提條件和準備工作 2
1.2.2 工具鏈測試驅動 4
1.3 一個代碼庫適應所有設備類型 4
1.3.1 以代碼框架示例為起點 5
1.3.2 自動適應屏幕尺寸 10
1.4 組件、視圖和生命周期 10
1.4.1 銷毀並重建組件 11
1.4.2 MainActivity類 11
1.4.3 活動:用戶交互的基本單元 11
1.4.4 Fragment:組織代碼和UI的工具 16
1.4.5 PickFragment類 17
1.4.6 ItemFragment類 21
1.4.7 ItemDetailFragment類 24
1.5 整閤Activity、Fragment和Action Bar 24
1.5.1 TabbedActivity類 25
1.5.2 針對大平闆電腦的Main.xml文件 27
1.5.3 針對較小屏幕的main.xml和Subsidiary活動 28
1.5.4 TabActivity類 29
1.6 Android任務和進程模型 33
1.6.1 啓動Dalvik實例 33
1.6.2 死亡,但沒有變形 34
1.6.3 跨應用程序和進程的任務 35
1.7 多處理、安全性以及生命周期 35
1.8 聲明應用程序屬性 36
1.9 本章小結 37
第2章 關係模型和SQLite 39
2.1 數據庫和關係模型 40
2.1.1 RDBMS的曆史 40
2.1.2 關係模型 41
2.1.3 DBMS的其他功能 43
2.1.4 SQL語言 44
2.2 SQLite入門 48
2.2.1 SQLite命令行 48
2.2.2 SQLite數據庫示例 53
2.3 本章小結 57
第3章 Android數據庫支持 59
3.1 Java中的SQL:SQLiteDatabase類 59
3.1.1 基本的SQL嵌入 60
3.1.2 SQL語法 61
3.1.3 創建數據庫:SQLiteOpenHelper類 67
3.1.4 管理數據庫 71
3.2 遊標、加載器和適配器 73
3.2.1 遊標 73
3.2.2 適配器和視圖綁定器 75
3.2.3 加載器 78
3.3 本章小結 81
第4章 內容提供器 83
4.1 使用內容提供器 84
4.1.1 名為URI的虛擬數據集 84
4.1.2 內容解析器:客戶和提供器之間的聯係 85
4.1.3 內容觀察者:完成循環 86
4.1.4 IPC:係統範圍可訪問性 89
4.2 閤約:URI和類型 89
4.2.1 授權 91
4.2.2 虛擬錶的URI 92
4.2.3 返迴值的MIME類型 93
4.2.4 權限 94
4.2.5 發布閤約 94
4.3 實現內容提供器 94
4.3.1 創建內容提供器 95
4.3.2 返迴類型和URI匹配器 96
4.3.3 寫數據庫 97
4.3.4 數據庫查詢 100
4.3.5 再論內容觀察者 104
4.4 權限和注冊 105
4.5 內容提供器和文件 107
4.6 本章小結 112
第5章 REST、內容提供器、並發性、網絡和同步適配器 113
5.1 REST基礎 114
5.1.1 使用REST的理由 114
5.1.2 HTTP協議中REST的應用 116
5.1.3 REST API示例 118
5.1.4 聯係人錶示方式 118
5.1.5 聯係方法和URI 119
5.1.6 聯係人事務 120
5.2 Android網絡 123
5.2.1 Apache庫 123
5.2.2 java.net庫 124
5.2.3 權限 125
5.3 考慮並發性和生命周期 126
5.3.1 Android並發性架構 126
5.3.2 原生請求 127
5.4 健壯網絡的架構 128
5.4.1 方法1:以服務為中心 129
5.4.2 方法2:以內容提供器為中心 131
5.4.3 方法3:以同步適配器為中心 132
5.4.4 Android內部的REST 133
5.4.5 restfulCachingProviderContacts項目:一個客戶端示例 133
5.4.6 添加聯係人 135
5.5 使用同步適配器 140
5.5.1 Android賬戶管理 140
5.5.2 創建同步適配器 151
5.6 本章小結 160
第6章 服務開發 163
6.1 服務開發的選擇 164
6.1.1 請求的生命周期 164
6.1.2 三層服務架構 165
6.1.3 服務開發背景 166
6.2 為contacts構建REST風格的服務 168
6.2.1 一個傳統的軟件架構 168
6.2.2 編寫示例:Spring Contacts服務及其同步變體 170
6.2.3 示例代碼:Spring同步聯係人服務 191
6.3 本章小結 198
第7章 移動和雲計算 201
7.1 雲性能和可伸縮性 202
7.1.1 移動的規模 202
7.1.2 雲計算的持久性:從SQL到NoSQL 204
7.1.3 數據庫文件格式 206
7.1.4 NoSQL的持久性 208
7.2 可擴展持久性的設計考慮事項 210
7.3 查看主流的雲服務供應商 213
7.3.1 Amazon AWS 213
7.3.2 榖歌應用程序引擎 214
7.3.3 Joyent:托管MongoDB + node.js 214
7.3.4 Red Hat OpenShift 214
7.4 探討代碼示例 215
7.4.1 再論聯係人DAO接口 215
7.4.2 編寫代碼:Amazon Contacts Service 216
7.4.3 編寫代碼:Google App Engine聯係人 230
7.5 本章小結 238
第8章 基於設備的復雜數據:Android Contacts 241
8.1 PIM數據庫:史前智能手機的化石 242
8.2 Android的Contacts提供器 242
8.3 ContactsContract API 242
8.4 Contacts提供器瀏覽器 243
8.4.1 用於瀏覽數據庫的代碼 245
8.4.2 Contacts提供器瀏覽器的源代碼 245
8.5 本章小結 258
第9章 通用數據同步:Migrate項目和WebData API 259
9.1 WebData和Migrate項目介紹 260
9.1.1 Migrate項目的工作原理 260
9.1.2 Migrate項目如何簡化移動端連接到企業的過程 261
9.1.3 詳述 WebData API 262
9.1.4 WebData API REST風格的協議 262
9.2 Migrate項目的細節 272
9.2.1 Migrate項目Android WebData客戶端 272
9.2.2 Android Migrate項目特性 273
9.3 WebData內容提供器Android API 274
9.3.1 Android內置提供器API 274
9.3.2 Migrate提供器API 275
9.4 本章小結 275
第10章 WebData應用程序 277
10.1 Migrate客戶端 278
10.2 創建一個Migrate項目 279
10.2.1 步驟1:導入項目 279
10.2.2 步驟2:啓用該項目作為一個Migrate客戶端 279
許多麵嚮企業的應用程序都采用一種主流模式:它們使用一個或多個REST風格的API訪問數據。它們將數據顯示給用戶,允許用戶修改數據,並更新服務器上的數據。本書正是一本專注於此類應用程序的書籍。
目標讀者
如果你是一位經驗豐富的Java或JavaScript程序員,可能對REST風格的應用程序的工作原理已經有所理解。你能正確地認為Android是一個Java操作係統:使用Java編寫應用程序,然後將它們部署到在某些方麵非常類似於Java虛擬機的環境中。這些應用程序使用REST風格的API進行通信來獲取數據,並呈現給用戶。
但是,對於Android軟件開發的許多方麵,先瞭解Android是如何設計的再著手開發將大有裨益。本書旨在讓你在應用現有的經驗,使用REST風格的應用程序與API來創建各種的高效、功能齊全的和響應式的Android應用程序之前做好實質性準備。你將避免因為假設Android編程就像是使用Oracle的類庫的Web編程或客戶端Java編程而導緻的陷阱,並一開始就能高效地使用Android API完成任務。
如果你是一位Android編程新手,並且沒有太多的iOS或Java經驗,或者如果你不確定REST風格的應用程序是不是你需要學習的內容,應該先簡單瞭解Android。初學者將會喜歡Reto Meier的優秀書籍Professional Android 4 Application Development (John Wiley & Sons, 2012)或developer.android.com的在綫教程,相比Android的初期,在綫文檔已經得到很大的改進和完善。
如果你有興趣將開發視野擴大到服務端,那麼本書將賦予你處理應用程序網絡兩端的數據的能力。
涵蓋的內容
本書以創建一個麵嚮企業的Android應用程序的基礎知識開始講解,這些應用程序可以運行在手機和平闆電腦上。但它不是一本麵嚮初學者的圖書。在閱讀本書前,你應該至少閱讀瞭榖歌的Android開發者網站上的在綫教程。
Android使用SQLite,而本書相當深入地講解SQL和SQLite,你將會瞭解數據如何存儲在Android係統的SQLite數據庫中。
Android以數據庫類包裝SQLite,而本書涵蓋瞭這些類,並且對這些類的討論也足夠深入。
當應用程序使用Android環境中的數據時,它們往往使用一個專門的服務組件,稱為ContentProvider。這個類以及相關的ContentResolver類提供瞭一個類似REST的接口,用於訪問Android設備內的數據。使用這些類在構建應用程序時具有其他優點,即使用觀察者模式。
使你能實現一個端到端的觀察者模式是本書的一個要素。你的數據駐留在服務器上的REST風格API背後的數據庫中。在本地,數據很可能存儲在ContentProvider組件的SQLite數據庫中。本書將介紹如何確保呈現給用戶的數據是一緻並且最新的。
簡單也很重要。JSON是錶示具有簡單性和靈活性數據的一種簡單方式,否則,就需要復雜的數據庫設計。本書展示如何使用JSON與SQLite以保持實現的簡潔,也展示一個復雜的Android數據庫和ContentProvider接口,其使用傳統的數據庫設計方法實現。
當使用本書中的示例時,你將為前端應用程序創建和部署服務器。特彆是,在第6章的末尾,第5章和第6章一起形成一個端到端的示例,它涵蓋瞭本書中的技巧。在第7章中你會將此服務部署到亞馬遜和榖歌的雲資源上。
你不會花太多時間的一件事情是加載指標(loading indicator)。網絡應用程序應該盡可能和“本地”應用程序的響應一樣靈敏。創建、更新與刪除(CRUD)不應該在用戶和用戶需要的數據之間介入。本書一個非常重要的部分介紹如何使CRUD脫離網絡和用戶的使用方式,方法是使用一個輕量級但功能強大的同步協議。本書通過引入一個封裝瞭這個方法的開源框架,而完成瞭這一做法。
本書最後深入討論Android安全性。
組織結構
本書書名源於其主旨是獲取、展示和更新設備上的數據,以及使用雲資源,這是大多數企業應用程序的核心。
本書開始快速介紹Android編程,從而引導你入門,創建一個顯示數據的應用程序。這是一個盡可能快速的介紹,如果你需要通過Android文檔的在綫教程更深入地瞭解一些基本知識,那麼不要驚訝。
之後,你將沉浸在本書的核心主題:數據上。本書自底嚮上介紹:如何在本地存儲數據,如何進行查詢,如何從REST API得到它並提供服務,在Android中如何實現觀察者模式,如何更新它,以及在有、無連接時如何處理上述這一切,並有最好的性能錶現。本書後麵涵蓋更多麵嚮呈現數據的UI編程。本書最後一章介紹Android安全。
要使用本書,你需要什麼
本書是關於Android軟件開發的,因此其示例需要使用Android軟件開發工具包(SDK),可以從developer.android.com下載該工具包。該SDK與三種最流行的桌麵操作係統兼容:Windows、Mac OS X和Linux。你可能更願意使用Android設備來運行代碼示例,但你可以使用模擬器,它包含在SDK中,並可以在颱式機上運行。
要運行本書中的示例服務,需要下載每一章中的軟件包,其中包括:Apach Android數據庫應用編程:為企業開發數據驅動Android應用 [Enterprise Android: Programming Android Database A] 下載 mobi epub pdf txt 電子書 格式
Android數據庫應用編程:為企業開發數據驅動Android應用 [Enterprise Android: Programming Android Database A] 下載 mobi pdf epub txt 電子書 格式 2024
Android數據庫應用編程:為企業開發數據驅動Android應用 [Enterprise Android: Programming Android Database A] 下載 mobi epub pdf 電子書挺不錯,活動買的,超值入手,希望活動多一些。
評分做項目需要,多看看書有好處
評分京東忠實粉絲,東西性價比很高,很喜歡,沒有什麼問題我就不具體描述瞭,自己看商品詳情就行~
評分京東忠實粉絲,東西性價比很高,很喜歡,沒有什麼問題我就不具體描述瞭,自己看商品詳情就行~
評分首先,書的印刷質量不錯,內容清晰,排版乾淨;第二,對於具有開發基礎的人來說內容比較實用
評分正在看,書看起來不錯。…………
評分要不斷的學習,發貨速度很快!
評分買來看瞭一半瞭,有基礎的看起來會比較輕鬆,寫的也挺詳細。雖然是報銷但是貴瞭些吧
評分買來看瞭一半瞭,有基礎的看起來會比較輕鬆,寫的也挺詳細。雖然是報銷但是貴瞭些吧
Android數據庫應用編程:為企業開發數據驅動Android應用 [Enterprise Android: Programming Android Database A] mobi epub pdf txt 電子書 格式下載 2024