|
|
|
xiii | |
|
|
|
xxi | |
| Preface |
|
xxiii | |
| Acknowledgments |
|
xxv | |
| Author Biographies |
|
xxvii | |
|
Section I Mobile App Design and Development Skills |
|
|
|
Chapter 1 Overview of Mobile App and Mobile Interface |
|
|
3 | (20) |
|
|
|
4 | (2) |
|
1.2 Mobile Interface and Applications |
|
|
6 | (3) |
|
1.2.1 Optimizations in Mobile Systems |
|
|
8 | (1) |
|
1.2.2 Mobile Embedded System |
|
|
8 | (1) |
|
|
|
9 | (12) |
|
1.3.1 Big Data Application in Mobile Systems |
|
|
10 | (1) |
|
1.3.2 Data Security and Privacy Protection in Mobile Systems |
|
|
11 | (2) |
|
1.3.3 Concept of Mobile Apps |
|
|
13 | (1) |
|
1.3.4 Brief Introduction of Android and Its Framework |
|
|
14 | (1) |
|
1.3.4.1 A Brief History of Android |
|
|
14 | (2) |
|
1.3.4.2 Android Device Distribution |
|
|
16 | (1) |
|
|
|
16 | (5) |
|
|
|
21 | (2) |
|
Chapter 2 Quick Start on Android |
|
|
23 | (14) |
|
|
|
23 | (1) |
|
2.2 Installing Integrate Development Environment |
|
|
24 | (1) |
|
2.3 Installing Android Sdk |
|
|
25 | (1) |
|
2.4 Creating An Android Application |
|
|
26 | (1) |
|
2.5 Android Virtual Device |
|
|
27 | (8) |
|
|
|
35 | (2) |
|
Chapter 3 Introduction of Key Concepts of Android |
|
|
37 | (12) |
|
|
|
38 | (3) |
|
|
|
38 | (1) |
|
|
|
38 | (1) |
|
|
|
39 | (1) |
|
|
|
39 | (2) |
|
|
|
41 | (1) |
|
|
|
42 | (4) |
|
|
|
43 | (1) |
|
|
|
44 | (1) |
|
3.3.3 Declaring Class Names |
|
|
44 | (1) |
|
|
|
44 | (1) |
|
|
|
45 | (1) |
|
|
|
45 | (1) |
|
|
|
46 | (3) |
|
|
|
46 | (1) |
|
|
|
47 | (2) |
|
Chapter 4 2-D Graphics and Multimedia in Android |
|
|
49 | (28) |
|
4.1 Introduction of 2-D Graphics Techniques |
|
|
50 | (9) |
|
|
|
50 | (2) |
|
|
|
52 | (1) |
|
|
|
52 | (1) |
|
|
|
53 | (1) |
|
|
|
54 | (4) |
|
|
|
58 | (1) |
|
|
|
59 | (5) |
|
|
|
59 | (3) |
|
|
|
62 | (1) |
|
|
|
63 | (1) |
|
4.3 Overview of Multimedia in Android |
|
|
64 | (2) |
|
4.3.1 Understanding the MediaPlayer Class |
|
|
64 | (1) |
|
4.3.2 Life Cycle of the MediaPlayer State |
|
|
65 | (1) |
|
4.4 Audio Implementations in Android |
|
|
66 | (1) |
|
4.5 Executing Video in Android |
|
|
67 | (5) |
|
|
|
72 | (5) |
|
|
|
72 | (2) |
|
|
|
74 | (3) |
|
Section II Advanced Mobile App Optimizations |
|
|
|
Chapter 5 Mobile Embedded System Architecture |
|
|
77 | (32) |
|
|
|
78 | (3) |
|
5.1.1 Embedded Systems Overview |
|
|
78 | (3) |
|
5.2 Scheduling Algorithms |
|
|
81 | (15) |
|
|
|
81 | (1) |
|
5.2.2 First-Come, First-Served Scheduling Algorithm |
|
|
82 | (2) |
|
5.2.3 Shorted-Job-First Scheduling Algorithm |
|
|
84 | (1) |
|
|
|
85 | (3) |
|
5.2.5 Priority Scheduling Algorithm |
|
|
88 | (3) |
|
5.2.6 ASAP and ALAP Scheduling Algorithm |
|
|
91 | (2) |
|
|
|
93 | (1) |
|
|
|
94 | (2) |
|
|
|
96 | (1) |
|
5.4 Mobile Embedded Systems |
|
|
97 | (5) |
|
5.4.1 Embedded Systems in Mobile Devices |
|
|
97 | (1) |
|
5.4.2 Embedded Systems in Android |
|
|
98 | (2) |
|
5.4.3 Power Management of Android |
|
|
100 | (1) |
|
5.4.4 Embedded Systems in Mobile Apps |
|
|
101 | (1) |
|
5.5 Messaging and Communication Mechanisms |
|
|
102 | (4) |
|
|
|
103 | (1) |
|
5.5.2 Communication Mechanisms |
|
|
104 | (2) |
|
|
|
106 | (3) |
|
Chapter 6 Data Storage and SQLite Operations |
|
|
109 | (22) |
|
|
|
110 | (8) |
|
6.1.1 Internal and External Storage |
|
|
110 | (1) |
|
6.1.2 Save a File on Internal Storage |
|
|
111 | (2) |
|
6.1.3 Save a File on External Storage |
|
|
113 | (3) |
|
|
|
116 | (1) |
|
|
|
117 | (1) |
|
|
|
118 | (8) |
|
|
|
119 | (1) |
|
|
|
119 | (5) |
|
6.2.3 Usage of SQLite Techniques |
|
|
124 | (2) |
|
|
|
126 | (2) |
|
|
|
128 | (3) |
|
|
|
128 | (1) |
|
|
|
129 | (2) |
|
Chapter 7 Mobile Optimization by Dynamic Programming |
|
|
131 | (36) |
|
7.1 Introduction Of Heterogeneous Embedded Systems and Dynamic Programming |
|
|
133 | (1) |
|
|
|
134 | (9) |
|
7.2.1 Heterogeneous Assignment |
|
|
134 | (2) |
|
7.2.2 Minimizing Costs by Scheduling |
|
|
136 | (7) |
|
7.3 Probabilistic Time Model |
|
|
143 | (18) |
|
7.3.1 Introduction of Probabilistic Time Model |
|
|
143 | (4) |
|
7.3.2 Solutions to Heterogeneous Assignment Problems |
|
|
147 | (1) |
|
7.3.3 Generating a D Table |
|
|
147 | (2) |
|
7.3.4 Example of Generating a D Table |
|
|
149 | (12) |
|
7.4 Nondeterministic Polynomial-Time Problems |
|
|
161 | (1) |
|
|
|
161 | (1) |
|
|
|
162 | (3) |
|
7.5.1 Fundamental Questions |
|
|
162 | (1) |
|
7.5.2 Practical Questions |
|
|
163 | (2) |
|
|
|
165 | (2) |
|
Chapter 8 Mobile Optimizations by Loop Scheduling |
|
|
167 | (28) |
|
|
|
168 | (1) |
|
8.2 Basic Graph Models and Techniques |
|
|
169 | (4) |
|
8.2.1 Data-Flow Graph in Loop Scheduling |
|
|
169 | (2) |
|
8.2.2 Retiming and Unfolding |
|
|
171 | (2) |
|
8.3 Fundamental Timing Optimizations |
|
|
173 | (4) |
|
8.4 Time and Power Optimizations with Loop Scheduling |
|
|
177 | (9) |
|
8.4.1 Probabilistic Data-Flow Graph |
|
|
177 | (3) |
|
8.4.2 Loop Scheduling and Parallel Computing |
|
|
180 | (6) |
|
|
|
186 | (1) |
|
|
|
187 | (3) |
|
8.6.1 Fundamental Questions |
|
|
187 | (1) |
|
8.6.2 Practical Questions |
|
|
188 | (2) |
|
|
|
190 | (5) |
|
Section III Mobile App Techniques in Emerging Technologies |
|
|
|
Chapter 9 Mobile Cloud Computing in Mobile Applications Deployment |
|
|
195 | (26) |
|
|
|
196 | (1) |
|
9.2 Concepts of Mobile Cloud Computing |
|
|
197 | (11) |
|
9.2.1 Technological Structure of Mobile Cloud Computing |
|
|
197 | (1) |
|
9.2.2 Differences between Cloud Computing and Mobile Cloud |
|
|
198 | (2) |
|
|
|
200 | (1) |
|
|
|
201 | (1) |
|
9.2.4.1 Wireless Local Area Networks (WLANs) |
|
|
202 | (3) |
|
9.2.4.2 Comparison between Wireless Local Area Networks and Wireless Fidelity |
|
|
205 | (1) |
|
9.2.4.3 Wireless Wide Area Network |
|
|
205 | (1) |
|
|
|
206 | (2) |
|
9.3 Main Techniques of Mobile Cloud Computing |
|
|
208 | (4) |
|
|
|
208 | (2) |
|
9.3.2 Parallel Programming Model |
|
|
210 | (1) |
|
9.3.3 Mass Distributed Storage |
|
|
211 | (1) |
|
9.4 Mobile Cloud Computing Architecture |
|
|
212 | (2) |
|
|
|
214 | (1) |
|
9.5.1 Fundamental Questions |
|
|
214 | (1) |
|
9.5.2 Practical Questions |
|
|
215 | (1) |
|
|
|
215 | (6) |
|
Chapter 10 Efficient Data Synchronization on Mobile Devices in Big Data |
|
|
221 | (34) |
|
10.1 Overview of Big Data |
|
|
222 | (3) |
|
10.1.1 Understanding Data Type |
|
|
222 | (1) |
|
10.1.2 Categorizing Big Data Models |
|
|
223 | (1) |
|
10.1.3 Current Challenges in Big Data |
|
|
224 | (1) |
|
|
|
225 | (8) |
|
|
|
227 | (1) |
|
10.2.1.1 Supervised Learning |
|
|
227 | (4) |
|
10.2.1.2 Unsupervised Learning |
|
|
231 | (2) |
|
10.2.1.3 Semisupervised Learning |
|
|
233 | (1) |
|
10.3 Mobile Big Data Storage |
|
|
233 | (13) |
|
10.3.1 Introduction and Basic Concepts |
|
|
233 | (2) |
|
10.3.2 Heterogeneous Memory Architecture |
|
|
235 | (2) |
|
10.3.3 Multi-dimensional Dynamic Programming Data Allocation |
|
|
237 | (9) |
|
10.4 Security and Privacy Issues |
|
|
246 | (4) |
|
|
|
250 | (1) |
|
|
|
251 | (4) |
|
10.6.1 Fundamental Questions |
|
|
251 | (1) |
|
10.6.2 Practical Questions |
|
|
252 | (3) |
|
|
|
|
|
|
255 | (2) |
|
|
|
255 | (1) |
|
|
|
255 | (1) |
|
|
|
255 | (1) |
|
|
|
256 | (1) |
|
|
|
257 | (4) |
|
|
|
257 | (1) |
|
|
|
257 | (1) |
|
|
|
257 | (1) |
|
|
|
257 | (4) |
|
Appendix 3 BirthProvider.java. Codes |
|
|
261 | (8) |
|
Birthprovider.Java. Codes |
|
|
261 | (8) |
| Bibliography |
|
269 | |