Best Practices for Android and PHP development
Best Practices for Android and PHP development
Basic information
Author: Huang
Book Name: Mobile Application Development Technology Series
Publishing house: Mechanical Industry Press
isbn:9787111410508
Last Date: 2013-3-6
Publication date: March 2013
Folio: 16 Open
Page: 1
Edition: 1-1
Category: Computer
More about "Android and PHP development Best practices"
Content Introduction
Computer Books
"Best Practices for Android and PHP development" is the first classic in China that also tells about Android client development and PHP server development.
The best practices for Android and PHP development take a complete example of Weibo application projects as the main line, explaining the ideas and techniques of Android client development and PHP server development. From the early stage of product design, architecture design, to client and server-side coding implementation, to performance testing and system optimization, as well as the final packaging release, a complete introduction of mobile Internet application development process. At the same time, the book also introduces the features of the Android system, such as Google Maps, lbs features, sensors, cameras, multimedia and voice function use. In addition, the book introduces the development of the Android NDK and the development of Android games, including the use of OpenGL, popular game engine cocos2d-x and Unity 3d.
Android and PHP development best practices are suitable for all readers interested in Android and PHP technology. Both the client and the server developer can get a lot of useful experience from this book. In addition, it is worth mentioning that most of the examples of the book are derived from real projects, the reference value is very high.
Directory
Best Practices for Android and PHP development
Objective
First article of preparation
1th Pre-school must read 1
1.1 Advent of the mobile Internet era 1
1.2 Why Choose android and PHP 2
1.3 How to learn Android and PHP 3
1.3.1 How to learn Android 3
1.3.2 How to learn PHP 4
1.3.3 Learn Android and PHP 4 at the same time
1.4 Summary 5
2nd Android Development Preparation 6
2.1 Android Background Knowledge 6
2.2 Android System Framework 8
2.3 Android Application Framework 11
2.3.1 Activity 12
2.3.2 Message (Intent) 14
2.3.3 (view) 16
2.3.4 Tasks (Task) 17
2.4 Android system four components 19
.2.4.1 Activities (activity) 20
2.4.2 Services (Service) 21
2.4.3 Broadcast receiver (broadcast receiver) 23
2.4.4 Content Provider (contents Provider) 24
2.5 Android Context 25
2.5.1 Interface Context (activity context) 25
2.5.2 Application Context (application context) 27
2.6 Android Data Storage 28
2.6.1 application configuration (shared preferences) 28
2.6.2 local file (files) 29
2.6.3 Database (SQLite) 30
2.7 Android App Interface 31
2.7.1 Control Properties 31
2.7.2 Layouts (layout) 33
2.7.3 Events (Event) 37
2.7.4 Menus (menu) 39
2.7.5 Theme (theme) 41
2.7.6 dialog Box (dialog) 42
2.8 Android Graphics Interface 43
2.8.1 Brush (Paint) 43
2.8.2 Canvas (Canvas) 44
2.8.3 Basic Geometry 46
2.8.4 Common Graphics Transformations 47
2.9 Android Animation effect 50
2.9.1 Frame Animation (frame animation) 50
2.9.2 Motion Tween (tween animation) 51
2.10 Android Development Environment 52
Construction of 2.10.1 development environment 53
2.10.2 First Android Project 58
2.10.3 using the Ddms debugging tool 63
2.11 Summary 64
3rd PHP Development Preparation 65
3.1 PHP Development Fundamentals 65
3.1.1 PHP Language Introduction 65
3.1.2 PHP Syntax Introduction 66
3.1.3 PHP Development started 68
3.1.4 PHP Object-oriented Programming 75
3.1.5 PHP Session 78
3.2 PHP Development Environment 80
Construction of 3.2.1 Development Environment 80
3.2.2 Installation Configuration XAMPP 81
3.2.3 Management Apache 83
3.2.4 managing MySQL 84
3.3 Using JSON communication 87
3.4 Common PHP Development Framework 88
3.5 Understanding Smarty Template Engine 90
3.6 Introduction to the development Framework 93
Features and benefits of the 3.6.1 Framework 94
3.6.2 Framework's underlying directory structure 94
3.6.3 Framework MVC Ideas explained 97
3.6.4 Framework MVC Example Analysis 99
3.7 Summary 108
The second practical article
The 4th chapter of the example product design 109
4.1 Why Choose Weibo 109
4.2 Pre-development preparation 110
4.2.1 Select development Mode 110
4.2.2 Understanding Project Planning 111
4.2.3 Understanding prototype Design 112
4.3 Function Module Design 112
4.4 Application Interface Design 114
4.5 Application Architecture Design 115
4.6 Communication Protocol Definition 116
4.7 Database Structure Design 118
4.8 Summary 120
5th Chapter Program Architecture Design 121
5.1 Service-side program Architecture Design 121
5.1.1 Basic Frame Design 122
5.1.2 Debug Frame Design 127
5.1.3 Core Class library design 130
5.1.4 MVC and SOA on the service side 136
5.2 Client program Architecture design 136
5.2.1 Basic Frame Design 137
5.2.2 Core Class package design 138
5.2.3 MVC 142 for Android apps
5.3 Client Interface Architecture Design 142
5.3.1 Interface Frame Design 143
5.3.2 Main interface Design 144
5.4 Summary 146
6th. Server Development 147
6.1 Introduction to Development 147
6.1.1 Interface Program Development 147
6.1.2 Debug Framework Development 151
6.1.3 Generating Interface Documentation 155
6.2 Verifying the Interface 156
6.2.1 User Login Interface 156
6.2.2 User Logout Interface 160
6.3 User Interface 162
6.3.1 New User Interface 162
6.3.2 Update user Information interface 164
6.3.3 viewing user Information Interface 165
6.3.4 adding fan Interface 167
6.3.5 Remove Fan Interface 171
6.4 Microblogging Interface 172
6.4.1 Publishing Microblogging Interface 172
6.4.2 viewing micro-blogging interface 174
6.4.3 Weibo list Interface 176
6.5 Reviews Interface 180
6.5.1 Comment Interface 180
6.5.2 Comment List Interface 182
6.6 Picture Interface 184
6.6.1 User Avatar Interface 185
6.6.2 Avatar List Interface 188
6.7 Notification Interface 189
6.8 Web Edition Interface 192
6.8.1 Web UI Interface (jquery mobile) 193
6.8.2 Web Edition Map interface 195
6.9 Summary 196
7th Client Development 198
7.1 Introduction to Development 198
7.1.1 Development Thinking Carding 198
7.1.2 Mastering Application Profiles 200
7.1.3 General Program development and commissioning 211
7.2 Interface layout and Behavior control 221
7.2.1 Using layout layouts 221
7.2.2 using the Merge integration interface 224
7.2.3 using event to control user behavior 226
7.2.4 switching using the intent control Interface 228
7.3 Network Communication Module 231
7.3.1 using httpclient for network communication 231
7.3.2 Support Cmwap Network access mode 237
7.3.3 decoding messages using the JSON library 240
7.3.4 using Toast message tip 245
7.4 Asynchronous Task Module 247
7.4.1 Processes and Threads 247
7.4.2 Task Creating thread 249
7.4.3 Task Handling Handler 255
7.4.4 using asynchronous Tasks Asynctask 257
7.5 Global Function Module 259
7.5.1 Global UI base class 259
7.5.2 global Menu Menu 264
7.5.3 Global Dialog Window 265
7.5.4 using service to get notifications 266
7.5.5 using notification to display notifications 270
7.6 User Login Interface 273
7.6.1 Interface Program Logic 273
7.6.2 using TextView 273
7.6.3 using EditText 274
7.6.4 using button 276
7.6.5 using shape and selector 277
7.6.6 Using the checkbox 279
7.6.7 using Sharedpreference 280
7.7 Weibo list Interface 281
7.7.1 Interface Program Logic 281
7.7.2 using the ListView 286
7.7.3 using ImageView 290
7.7.4 using Draw9patch 292
7.7.5 retrieving remote pictures asynchronously 294
7.7.6 using SDcard to cache pictures 297
7.7.7 using SQLite to cache data 300
7.8 My Weibo list 303
7.8.1 Interface Program Logic 303
7.8.2 using ScrollView 309
7.8.3 using a custom microblog list 310
7.9 Weibo article Interface 313
7.9.1 Interface Program Logic 313
7.9.2 Interface Layout Advanced (using UI controls in general) 319
7.9.3 Comment Function Implementation 322
7.9.4 Publishing Weibo features for 326
7.10 User Configuration Interface 328
7.10.1 Interface Program Logic 328
7.10.2 using the Custom Options list 333
7.10.3 Modifying the signature feature implementation 334
7.10.4 change avatar Feature for 334
7.11 Web Interface Development 340
7.11.1 Interface Program Logic 340
7.11.2 using WebView 341
7.11.3 using ProgressDialog 343
7.11.4 rewrite and callback using WebView 346
7.11.5 Web Map Example Analysis 348
7.12 Summary 349
The third optimization chapter
8th Chapter Performance Analysis 351
8.1 About Performance Testing 351
8.1.1 Service-Side pressure test 352
8.1.2 Client Performance Test 359
8.2 Bottleneck 364
8.2.1 Service-Side bottleneck analysis 365
8.2.2 Client Bottleneck Analysis 366
8.3 Ideas for Optimization 366
8.4 Summary 367
9th. Service-Side optimization 368
9.1 Optimizing PHP Programs 368
9.1.1 Optimizing PHP Code 368
9.1.2 Optimization session mechanism 371
9.1.3 Using cache middleware 373
9.1.4 Using APC Acceleration 376
9.2 Optimizing data Transfer 377
9.2.1 Optimization JSON Protocol 377
9.2.2 using gzip compression 379
9.3 Other Optimizations 380
9.3.1 Server Optimization 380
9.3.2 Database Optimization 383
9.3.3 Network Optimization 386
9.4 Summary 386
10th Client Optimization 387
10.1 Optimizing Android Programs 387
10.1.1 Optimizing Java Code 387
10.1.2 Retrieving data asynchronously 391
10.1.3 File Resource Cache 391
10.1.4 Database Cache 392
10.2 Avoiding memory leaks 392
10.2.1 Android Memory Management 392
10.2.2 how to determine memory leaks 393
10.2.3 Common memory leak handling 395
10.3 Optimizing Android UI 396
10.3.1 Template code Optimization 396
10.3.2 About layout Optimization 397
10.3.3 using the Hierarchy Viewer tool 402
10.4 Other Optimizations 403
10.4.1 Optimization Picture 403
10.4.2 Optimizer APK Pack 403
10.4.3 using Keytool and Jarsigner signatures 404
10.4.4 using Zipalign Optimization 407
10.5 Summary 408
Fourth Advanced article
11th Android Featured feature Development 409
11.1 Using the Google Map API 409
11.2 Using LBS function 414
11.3 Using the Sensor 419
11.4 Using the camera 422
11.5 Multi-media development 431
11.6 Speech recognition 439
11.7 Summary 441
12th Chapter Android NDK Development 442
12.1 NDK Development Fundamentals 442
Why 12.1.1 uses the NDK 442
12.1.2 using the NDK to call C or C + + 443
12.1.3 Android.mk and Application.mk 445
12.2 NDK Development Primer 448
12.2.1 Development Environment Construction 448
12.2.2 First NDK Project 449
12.3 Summary 456
13th Android Game Development 457
13.1 Hand Tour Development Basics 457
13.1.1 Hand Tour Development Thinking 457
13.1.2 Snake and spaceship game example 462
13.1.3 know Android game engine 464
13.1.4 using OpenGL and OpenGL ES 466
13.1.5 using Renderscript 472
13.2 Hand Tour Development Advanced 474
13.2.1 Know Cocos2d-x 475
13.2.2 erecting cocos2d-x development environment 475
13.2.3 First Cocos2d-x Item 475
13.2.4 Know Unity 3d 487
13.3 Summary 489
Appendix A hush Framework instance source deployment 490
Appendix B Weibo application example source deployment 495
The source of book Information: China Interactive Publishing Network