Beställningsvara. Skickas inom 7-10 vardagar. Fri frakt för medlemmar vid köp för minst 249 kr.
Create applications for all major smartphone platforms Creating applications for the myriad versions and varieties of mobile phone platforms on the market can be daunting to even the most seasoned developer. This authoritative guide is written in such as way that it takes your existing skills and experience and uses that background as a solid foundation for developing applications that cross over between platforms, thereby freeing you from having to learn a new platform from scratch each time. Concise explanations walk you through the tools and patterns for developing for all the mobile platforms while detailed steps walk you through setting up your development environment for each platform. Covers all the major options from native development to web application developmentDiscusses major third party platform development acceleration tools, such as Appcelerator and PhoneGapZeroes in on topics such as developing applications for Android, IOS, Windows Phone 7, and BlackberryProfessional Mobile Cross Platform Development shows you how to best exploit the growth in mobile platforms, with a minimum of hassle.
Jeff McWherter is the Director of Development at Gravity Works Design and Development. He is a founding member and current Vice President for the Greater Lansing Users for .NET. Scott Gowell is a senior developer at Gravity Works Design and Development. He develops mobile applications for clients and speaks at local user groups.
Introduction xxiiiChapter 1: Preliminary Considerations 1Why You Might Be Here 2Competition 2Quality vs. Time to Market 2Legacy System Integration 2Mobile Web vs. Mobile App 3Cost of Development 3Hardware 3Software 4Licenses and Developer Accounts 5Documentation and APIs 5The Bottom Line 6Importance of Mobile Strategies in the Business World 6Why is Mobile Development Difficult? 6Mobile Development Today 8Mobile Myths 8Third-Party Frameworks 9Appcelerator Titanium Mobile Framework 9Nitobi PhoneGap 10MonoDroid and MonoTouch 10Summary 10Chapter 2: Diving into Mobile: App or Website? 11Mobile Web Presence 12Mobile Content 13Mobile Browsers 14Mobile Applications 17You’re a Mobile App If . . . 17When to Create an App 18Benefits of a Mobile App 22Marketing 24Quick Response Codes 25The Advertising You Get from the App Market 26Third-Party Markets 32Your App as a Mobile Web App 33Summary 36Chapter 3: Creating Consumable Web Services for Mobile Devices 37What is a Web Service? 37Examples of Web Services 38Advantages of Web Services 39Web Services Languages (Formats) 40eXtensible Markup Language (XML) 40JavaScript Object Notation (JSON) 42Transferring Nontextual Data 42Creating an Example Web Service 42Using the Microsoft Stack 43Using the Linux Apache MySQL PHP (LAMP) Stack 77Debugging Web Services 83Tools 83Advanced Web Service Techniques 85Summary 86Chapter 4: Mobile User Interface Design 89Effective Use of Screen Real Estate 90Embrace Minimalism 90Use a Visual Hierarchy 90Stay Focused 90Understanding Mobile Application Users 91Proximity 91Closure 91Continuity 92Figure and Ground 92Similarity 92The Social Aspect of Mobile 92Usability 93Accessibility 94Understanding Mobile Information Design 96Information Display 96Design Patterns 96Content Structure and Usage 107Understanding Mobile Platforms 109Android 110iOS 110BlackBerry OS 111Windows Phone 7 112Mobile Web Browsers 112Using the Tools of Mobile Interface Design 113User Acceptance Testing 113Information Design Tools 114Summary 115Chapter 5: Mobile Websites 117Choosing a Mobile Web Option 118Why Do People Use Your Website on Mobile Devices? 118What Can Your Current Website Accommodate? 118How Much Do You Want to Provide for Mobile Users? 119Adaptive Mobile Websites 120Get Your Queries in Place 121Add Mobile Styles 125Dedicated Mobile Websites 140Mobile Web Apps with HTML5 143What Exactly is HTML5? 143And What Exactly is a Mobile Web App? 144How Do You Use HTML5 in a Mobile Web App? 144Make Your Mobile Web App Even More Native 148Summary 150Chapter 6: Getting Started with Android 151Why Target Android? 152Who Supports Android? 152Android as Competition to Itself 152Multiple Markets and Market Locks 152Getting the Tools You Need 153Downloading and Installing JDK 153Downloading and Installing Eclipse 153Downloading and Installing the Android SDK 154Downloading and Configuring the Eclipse ADT Plug-in 155Installing Additional SDK Components 157Development 158Connecting to the Google Play 172Getting an Android Developer Account 172Signing Your Application 172Android Development Practices 172Android Fundamentals 172Fragments as UI Elements 173Ask for Permission 173Mind the Back Stack 174Building the Derby App in Android 174Common Interactions 174Offline Storage 176Web Service 177GPS 180Accelerometer 181Summary 182Chapter 7: Getting Started with iOS 183The iPhone Craze 183Apple in Its Beauty 184Apple Devices 185Getting the Tools You Need 187Hardware 187xCode and the iOS SDK 191The iOS Human Interface Guideline 193iOS Project 193Anatomy of an iOS App 194Getting to Know the xCode IDE 195Debugging iOS Apps 199The iOS Simulator 199Debugging Code 200Instruments 204Objective-C Basics 204Classes 205Control Structures 206Try Catch 207Hello World App 208Creating the Project 208Creating the User Interface 211Building the Derby App in iOS 214User Interface 215Team Roster 217Details 219Leagues and Team Names 220Other Useful iOS Things 223Offline Storage 223GPS 224Summary 227Chapter 8: Getting Started with Windows Phone 7 229New Kid on the Block 229Metro 230Application Bar 230Tiles 232Tombstoning 233Getting the Tools You Need 234Hardware 234Visual Studio and Windows Phone SDK 234Windows Phone 7 Project 236Silverlight vs. Windows Phone 7 236Anatomy of a Windows Phone 7 App 237The Windows Phone 7 Emulator 238Building the Derby App in Windows Phone 7 239Creating the Project 239User Interface 240Derby Names 241Leagues 243Distribution 244Other Useful Windows Phone Things 245Offline Storage 245Notifications 247GPS 249Accelerometer 250Web Services 252Summary 252Chapter 9: Getting Started with BlackBerry 253The BlackBerry Craze 254BlackBerry Devices 254BlackBerry Playbook 259Getting the Tools You Need 259BlackBerry Developer Program 259Code Signing Keys 260BlackBerry Java Development Environment 260Implementing the Derby App with BlackBerry for Java 265BlackBerry Eclipse Specifics 269BlackBerry Development with WebWorks 270Other Useful BlackBerry Things 276Offline Storage 277Location Services 278BlackBerry Distribution 280Summary 280Chapter 10: Getting Started with Appcelerator Titanium 283Why Use Titanium? 284Who is Using Titanium? 284NBC 285GetGlue 286Getting the Tools You Need 287Installing Titanium Studio 287Downloading the Kitchen Sink 290Development 291Connecting Titanium to the Markets 294Versioning Your App 296Building the Derby App in Titanium 297Common UI Patterns 297Offline Storage 301Web Service 302GPS 305Accelerometer 306Summary 308Chapter 11: Getting Started with PhoneGap 309History of PhoneGap 309Why Use PhoneGap? 310Who is Using PhoneGap? 310METAR Reader 310Logitech Squeezebox Controller 311Wikipedia 311Differences between PhoneGap and HTML5 311Getting the Tools You Need 312Installing PhoneGap for iOS 312Installing PhoneGap for Android 314Installing PhoneGap for Windows Phone 7 317PhoneGap Tools and IDE 319PhoneGap Project 323Anatomy of a PhoneGap Application 323Creating User Interfaces 324Debugging 324Useful JavaScript Libraries 325Building the Derby App in PhoneGap 330Other Useful Phone Gap Things 335Pickers 336Offline Storage 337GPS 339Accelerometer 340Connecting PhoneGap to the Markets 341Summary 341Chapter 12: Getting Started with MonoTouch and Mono for Android 343The Mono Framework 343MonoTouch 344Mono for Android 345Assemblies 346Why MonoTouch/Mono for Android? 347Downsides 347Xamarin Mobile 348Getting the Tools You Need 350Mono Framework 350MonoTouch 351Mono for Android 352Getting to Know MonoDevelop 353Debugging 354MonoTouch Specifics 355Mono for Android Specifics 356Mono Projects 357Anatomy of a MonoTouch App 358Anatomy of a Mono for Android App 361Building the Derby App with Mono 362MonoTouch 362Mono for Android 368Other Useful MonoTouch/Mono Features 374Local Storage 374GPS 375Summary 377Index 379