Skip to:Content
|
Bottom
Cover image for Microsoft smartphone programming
Title:
Microsoft smartphone programming
Personal Author:
Publication Information:
Indianapolis, IN : Wiley Publishing, 2007
ISBN:
9780471762935

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010135691 TK6570.M6 Y36 2006 Open Access Book Book
Searching...
Searching...
30000010145987 TK6570.M6 Y36 2006 Open Access Book Book
Searching...

On Order

Summary

Summary

"Professor Yang and Dr. Zheng are two of the passionate young researchers in the field with a lot of hands-on experience. Professor Ni, on the other hand, is a veteran in wireless technologies, 2.5G/3G cellular phones, and embedded systems. The energy, the hands-on experience, and the long-term vision ensure that the book is of highest quality."
--From the foreword by Ya-Qin Zhang, Corporate Vice President for Research, Microsoft China

The second-generation Smartphone applications are exclusively designed to leverage the advantages of mobility and ubiquitous wireless access. This book provides you with an in-depth look at software development issues and design guidelines, and helps you gain the skills you need to develop your own efficient and feature-rich Smartphone applications that utilize the latest cutting-edge technologies.

Complete with code and examples, the book first walks you through the Microsoft Smartphone platform from a software developer's perspective. It next uncovers the .NET Compact Framework as well as the Smartphone programming environment. You'll then find detailed information on Microsoft Smartphone-related application design and programming topics in the domains of the .NET Compact Framework (managed code). Plus, you'll explore advanced development topics such as security and performance considerations that you'll be able to incorporate into your own applications.

What you will learn from this book
* How to use the programming framework and classes available in Windows Mobile and Smartphone SDK
* The fundamentals of .NET Compact Framework 2.0
* Techniques for developing your own robust Smartphone applications
* Steps for customizing components and P/Invoke
* How to enhance data and communication security
* Ways to improve the performance of your applications
* Fundamental techniques for supporting world-ready applications

Who this book is for

This book is for software architects and developers working in the area of mobile application development as well as professionals who want a quick and thorough overview of the Microsoft Smartphone software development platform.

Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.


Author Notes

Baijian Yang is an assistant professor in the Computer Technology program at Ball State University. He became a Microsoft Certified Systems Engineer (MCSE) in 1998 and was one of the core software designers/developers for etang.com. He received his Ph.D. in Computer Science from Michigan State University in 2002. He is now engaged in research and development in the area of wireless networks and distributed systems.

Pei Zheng received his Ph.D. in Computer Science from Michigan State University in 2003. He joined Microsoft as a software engineer in 2005. Before that he was an assistant professor of Computer Science at Arcadia University, and a member of the technical staff at Bell Laboratories, Lucent Technologies. His research interests include distributed systems, network simulation and emulation, and mobile computing.

Lionel M. Ni is Chair Professor, Head of the Computer Science and Engineering Department, and Director of the Digital Life Research Center at the Hong Kong University of Science and Technology. Dr. Ni earned his Ph.D. in electrical and computer engineering from Purdue University in 1980. He has been involved in many projects related to wireless technologies, 2.5G/3G cellular phones, and embedded systems. He is co-author of the book Interconnection Networks: An Engineering Approach (Morgan Kaufmann, 2002), and Smart Phone and Next Generation Mobile Computing (Morgan Kaufmann, 2006).


Table of Contents

Acknowledgmentsp. ix
Forewordp. xix
Introductionp. xxi
Part I Smartphone and .NETp. 1
Chapter 1 Introduction to Microsoft Smartphonep. 3
What Is a Smartphone?p. 3
Smartphone Applications and Servicesp. 4
Mobile Commercep. 5
Mobile Enterprisep. 5
Mobile Data Service and Entertainmentp. 6
Challenges of Smartphone Application Developmentp. 6
Introducing Microsoft Windows Mobilep. 7
Windows Mobile 5.0p. 7
Microsoft Smartphone from a User's Perspectivep. 8
Summaryp. 10
Chapter 2 .NET Compact Framework Fundamentalsp. 11
Introducing the Microsoft .NET Frameworkp. 11
The Common Language Runtimep. 12
.NET Framework Class Librariesp. 13
Visual Studio 2005p. 14
Introducing the .NET Compact Frameworkp. 15
CLR of the .NET Compact Frameworkp. 15
.NET Compact Framework Class Librariesp. 15
Platform Invokep. 16
Smartphone Development Toolsp. 17
.NET Compact Framework Type Systemp. 18
Typesp. 19
Attributes and Reflectionp. 21
Genericsp. 21
Exception Handlingp. 21
A Quick Review of C#p. 22
Value Typesp. 23
Reference Typesp. 24
Operatorsp. 25
String and objectp. 26
Classes and Interfacesp. 28
Polymorphismp. 32
Arrays and Collectionsp. 33
Summaryp. 35
Part II Smartphone Application Developmentp. 37
Chapter 3 Developing Your First Smartphone Applicationp. 39
Required Toolsp. 39
Visual Studio 2005p. 40
Windows Mobile 5.0 SDK for Smartphonep. 41
Smartphone Device Emulatorp. 41
ActiveSyncp. 42
All-In-One Packagep. 43
Building Your First Smartphone Applicationp. 43
Creating a Smartphone Projectp. 43
Adding Code to the Formp. 49
Project Filesp. 51
Testing and Debugging Applicationsp. 52
Packaging and Deploying Applicationsp. 56
Packaging Applicationsp. 56
Signing Applicationsp. 59
Delivering and Installing Applicationsp. 61
Summaryp. 62
Chapter 4 User Interface and Inputp. 63
UI Design with Forms and Controlsp. 63
Supported Controlsp. 64
Control Behaviorsp. 65
Smartphone UI Designp. 85
Soft Keysp. 86
The Home and Back Keysp. 86
General UI Flow of Smartphone Applicationsp. 87
Creating an Application with Multiple Formsp. 88
Keyboard Input and Input Modep. 96
Input Modep. 96
Soft Key Functionalityp. 101
Additional UI Considerationsp. 102
Auto-Savep. 102
DPI and QVGA Issuesp. 102
Performancep. 103
Summaryp. 103
Chapter 5 Data Storage and File I/Op. 105
Overview of Smartphone Data Storagep. 105
The System.IO Namespacep. 107
Creating a File Directory Browserp. 113
Implementing a Memo Applicationp. 120
Summaryp. 129
Chapter 6 Data Access with SQL Server Mobilep. 131
ADO.NET Overviewp. 132
Microsoft SQL Server 2005 Mobile Editionp. 134
SQL Server Mobile Architecturep. 135
Installing SQL Server Mobilep. 136
Setting Up the SQL Server Mobile Server Environmentp. 138
Installing SQL Server Mobile Toolsp. 138
Creating a Database and Tables from SQL Server 2005p. 138
Creating a Publicationp. 142
Configuring Web Synchronizationp. 145
Creating a SQL Server Mobile Databasep. 147
Creating Subscriptions in SQL Server Mobilep. 148
Writing SQL Server Mobile Applicationsp. 151
A Simple Application with the DataGrid Controlp. 151
The SqlServerCe Namespacep. 157
Summaryp. 163
Chapter 7 Networkingp. 165
An Overview of Smartphone Networkingp. 165
Emulator Networkingp. 166
Web Accessp. 167
The HttpWebRequest and HttpWebResponse Classesp. 168
Creating HTTP Requestp. 169
TCP Servers and Clientsp. 176
The IPEndPoint Classp. 176
The IPAddress and IPHostEntry Classesp. 176
Network and Host Byte Order Conversionp. 177
The TcpListener and TcpClient Classesp. 178
An Example of TcpListener and TcpClientp. 180
Network Socketsp. 187
TCP Socketsp. 188
UDP Socketsp. 196
Nonblocking Mode and Asynchronous Methodsp. 198
Summaryp. 199
Chapter 8 E-mail, SMS, and PIM Datap. 201
Pocket Outlook Object Model (POOM)p. 201
The WindowsMobile.PocketOutlook Namespacep. 203
Creating E-mail Applications with Managed APIsp. 205
Creating a Simple E-mail Applicationp. 208
Creating an E-mail Application with Attachmentsp. 210
Accessing PIM Datap. 216
Using SMSp. 220
Summaryp. 226
Chapter 9 XML and Web Servicesp. 227
Overview of XML and Web Servicesp. 227
XML Support in .NET Compact Frameworkp. 229
XML Syntaxp. 229
An XML Example: Customizing the Home Screenp. 231
XML Schemap. 233
XML-Related Classesp. 234
XmlDocument and XmlTextReaderp. 235
XmlNodeReader and DataSetp. 240
An XML Processing Sample Applicationp. 242
Building a Smartphone XML Web Service Applicationp. 248
Adding a Web Referencep. 248
Consuming Web Servicesp. 249
Summaryp. 253
Chapter 10 Platform Invokep. 255
Managed and Unmanaged Codep. 255
Building Unmanaged DLLsp. 257
Using P/Invoke in the .NET Compact Frameworkp. 260
Declaring and Calling an Unmanaged Code Functionp. 261
Error Handlingp. 262
Marshaling Datap. 263
An Example of a P/Invoke Applicationp. 271
Optimizing P/Invoke Performancep. 278
Summaryp. 279
Chapter 11 Exception Handling and Debuggingp. 281
Exceptions and Exception Handlingp. 281
Exceptionsp. 282
The try...catch Statementp. 282
The finally Statementp. 283
The throw Statementp. 285
Exception Stack Tracep. 286
The Exception Classp. 288
The SystemException Classp. 289
The ApplicationException Classp. 290
Best Practices of Exception Handlingp. 292
Debugging in Visual Studio 2005p. 293
Debugging Windowsp. 293
Debugging Settingp. 294
Deploying and Debugging in Visual Studiop. 294
Defining Symbolsp. 294
Limitations of Debuggingp. 295
Multithreaded Debuggingp. 296
Managed Threadsp. 296
Race Conditionp. 298
Deadlockp. 300
Summaryp. 304
Part III Advanced Topicsp. 305
Chapter 12 Device and Application Securityp. 307
Mobile Threatsp. 307
Glossary of Termsp. 309
Digital Signatures, Certificates, and Application Signingp. 309
Privileged and Unprivileged Applications and Certificate Storesp. 310
Trusted and Normal Applicationsp. 310
Security Policies and Rolesp. 311
Windows Mobile 5.0 Security Modelsp. 312
Certificate Management in Windows Mobile 5.0p. 314
Obtaining Certificatesp. 314
Signing Applications with Certificatesp. 315
Managing Certificatesp. 319
Security Policiesp. 322
An Example Codep. 325
Perimeter Securityp. 330
Physical Access Controlp. 330
Antivirus Considerationsp. 331
Summaryp. 332
Chapter 13 Data and Communication Securityp. 333
Data Protectionp. 334
Data Encryptionp. 334
Database Encryption and Password Protectionp. 341
Securing Communication Channelsp. 346
Network Authenticationp. 346
Secure Sockets Layer (SSL)p. 347
Virtual Private Networksp. 350
Wi-Fip. 353
Securing Web Services with SOAP Headersp. 353
Server Sidep. 354
Client Sidep. 360
Summaryp. 362
Chapter 14 Globalization and Localizationp. 363
Globalization and Localization Supportp. 363
Culturep. 364
The CultureInfo Classp. 365
Developing a World-Ready Applicationp. 366
Creating Localized Resourcesp. 366
A Sample Application with a Localized Satellite Assemblyp. 370
Localizing Datap. 377
Dates, Time, and Calendarsp. 377
Numbers and Currencyp. 379
Stringsp. 381
Best Practicesp. 382
Summaryp. 383
Chapter 15 Graphicsp. 385
.NET Compact Framework Graphicsp. 386
The Graphics Classp. 386
Creating a Graphics Objectp. 387
The Color, Pen, and Brush Objectsp. 387
Vector Graphicsp. 389
Drawing Textp. 397
Working with Fontsp. 399
Drawing Imagesp. 400
Drawing Bitmapsp. 402
Embedded Resourcesp. 408
Summaryp. 409
Chapter 16 Performancep. 411
General Principlesp. 411
Using .NET Compact Framework Performance Countersp. 412
CLR Performancep. 417
Garbage Collectionp. 417
Call Overheadp. 418
Mathp. 423
Reflectionp. 423
Genericsp. 423
Class Library Guidelinesp. 424
BCL Collectionsp. 424
StringBuilder versus Stringp. 426
Regular Expressionp. 427
XML and Data Accessp. 428
XMLReader and XMLWriterp. 428
XML Schemap. 428
XML Serializationp. 429
Data Accessp. 429
Windows Formsp. 430
Form Loading Performancep. 430
Form Layoutp. 431
BeginUpdate and EndUpdatep. 433
Summaryp. 434
Appendix A New Features in .NET Compact Framework 2.0p. 437
Appendix B A Glance at the .NET Compact Framework 2.0 Class Libraryp. 441
Appendix C The Smartphone Bootstrapping Processp. 459
Indexp. 465
Go to:Top of Page