Synopses & Reviews
What people are saying about Building iPhone Apps w/ HTML, CSS, and JavaScript
"The future of mobile development is clearly web technologies like CSS, HTML and JavaScript. Jonathan Stark shows you how to leverage your existing web development skills to build native iPhone applications using these technologies."
--John Allsopp, author and founder of Web Directions
"Jonathan's book is the most comprehensive documentation available for developing web applications for mobile Safari. Not just great tech coverage, this book is an easy read of purely fascinating mobile tidbits in a fun colloquial style. Must have for all PhoneGap developers."
-- Brian LeRoux, Nitobi Software
It's a fact: if you know HTML, CSS, and JavaScript, you already have the tools you need to develop your own iPhone apps. With this book, you'll learn how to use these open source web technologies to design and build apps for the iPhone and iPod Touch on the platform of your choice-without using Objective-C or Cocoa.
Device-agnostic mobile apps are the wave of the future, and this book shows you how to create one product for several platforms. You'll find guidelines for converting your product into a native iPhone app using the free PhoneGap framework. And you'll learn why releasing your product as a web app first helps you find, fix, and test bugs much faster than if you went straight to the App Store with a product built with Apple's tools.
- Build iPhone apps with tools you already know how to use
- Learn how to make an existing website look and behave like an iPhone app
- Add native-looking animations to your web app using jQTouch
- Take advantage of client-side data storage with apps that run even when the iPhone is offline
- Hook into advanced iPhone features -- including the accelerometer, geolocation, and vibration -- with JavaScript
- Submit your applications to the App Store with Xcode
This book received valuable community input through O'Reilly's Open Feedback Publishing System (OFPS).
Synopsis
How can you make your iPhone or iPad app stand out in the highly competitive App Store? Many books only explore the technical aspects of iPhone and iPad app design and development. App Savvy also focuses on the business, product, and marketing elements critical to pursuing, completing, and selling your app. This practical reference shows you how to engage customers early and often, so you can get their input for creating an app they'll be passionate about.
Whether you're a designer, developer, entrepreneur, or someone who simply has a great idea for an app, App Savvy explains every step in the process, with guidelines for making your app unique, addressing budget items, and finding the right app developer. The iPhone and iPad will continue to demand the attention of consumers, the media, and organizations of all sizes. This book shows you how to take advantage of this growing market.
- Learn specifics about the App Store, Apple's mobile devices, and iOS 4.0
- Follow guidelines for vetting and researching app ideas
- Begin talking with customers and marketing your app before it's built
- Assemble the right team, understand costs, and establish a workable process
- Assess performance and improve an app once launched into the App Store
- Read extensive interviews with successful small and large app developers
Synopsis
Now Web designers and developers can join the iPhone app party without having to learn Cocoa's Objective-C programming language. Plenty of detailed examples, step-by-step instructions, and hands-on exercises help readers learn how to build iPhone apps.
Synopsis
Is it possible for JavaScript programmers to learn the iPhone SDK and live to tell the tale? Technology guru Danny Goodman did, and with this book he leaves a well-marked trail for you to follow. An authority on JavaScript since its inception, Goodman understands the challenges you face with the SDK. He introduces Objective-C and Cocoa Touch in a context you'll readily understand, and shows you how to test iPhone code snippets as you go.
Why bother with Apple's tools? After all, you could bypass them and just build web apps for the iPhone. But web apps can't access an iPhone's music library, address book, camera, accelerometer, or multi-touch events. Nor can you sell web apps in the App Store. If you're a web developer and really want to take advantage of the iPhone, the SDK is your tool -- and this is your book.
- Create a test workbench app that you can use throughout the development process
- Understand how iPhone OS frameworks compare to third-party web frameworks
- Become familiar with the Model-View-Controller architectural pattern
- Learn how iPhone data types, pointers, and memory management are different from JavaScript
- Compare Objective-C language fundamentals and their JavaScript equivalents
- Get a recipe-driven reference for programming with Objective-C and Cocoa Touch
Synopsis
What does it take to build an iPhone app from a management point of view? If you're involved or interested in producing iPhone or iPad apps as a project manager, product manager, marketer, or executive, this guide will show you how to take an idea and develop it into an app that will stand out in the App Store. It's a practical reference to every step in the process, including budget items you need to consider and guidelines for finding the right app developer for the job.
Many books explore the technical aspects of iPhone and iPad app design and development. App Savvy focuses on the critical business issues involved in pursuing and completing an app project. The iPhone and iPad continue to change the way organizations approach product development, and this book will show you how to take advantage of this vital market.
- Get an overview of how to produce an iPhone app, from start to finish
- Follow guidelines for vetting and researching app ideas
- Understand the options available for building an app, including the costs involved
- Assemble the right team and establish a workable process
- Learn how to market iPhone apps and improve them once they're launched
Synopsis
How can you make your iPhone or iPad app stand out in the highly competitive App Store? Many books only explore the technical aspects of iPhone and iPad app design and development. App Savvy also focuses on the business, product, and marketing elements critical to pursuing, completing, and selling your app. This practical reference shows you how to engage customers early and often, so you can get their input for creating an app they'll be passionate about.
Whether you're a designer, developer, entrepreneur, or someone who simply has a great idea for an app, App Savvy explains every step in the process, with guidelines for making your app unique, addressing budget items, and finding the right app developer. The iPhone and iPad will continue to demand the attention of consumers, the media, and organizations of all sizes. This book shows you how to take advantage of this growing market.
- Learn specifics about the App Store, Apple's mobile devices, and iOS 4.0
- Follow guidelines for vetting and researching app ideas
- Begin talking with customers and marketing your app before it's built
- Assemble the right team, understand costs, and establish a workable process
- Assess performance and improve an app once launched into the App Store
- Read extensive interviews with successful small and large app developers
Synopsis
Are you running into problems trying to build an app for the iPhone, iPad, or iPod Touch? This cookbook has the solutions you need, no matter how much experience you have with the iOS SDK. Each recipe tackles a specific problem with a clear solution and sample code that you can use right away. You also get a detailed discussion of why the solution works, as well as the tradeoffs and alternatives that exist.
The author uses his extensive real-world experience with iPhone apps to guide you through the maze of technologies in the iOS SDK. You'll find recipes to help you confront obstacles through the entire development process, from initial idea all the way to the App Store.
- Get solutions for problems faced by beginning, intermediate, and advanced developers
- Find recipes for using Xcode, Interface Builder, Cocoa, and other iOS SDK technologies
- Deal with real-life development problems -- not just theory
- Learn about the little things in the iOS SDK that make developers' lives easier
- Discover ways to use MapKit, Core Motion, AVFoundation, Core Data, Event Kit, and other iOS frameworks
- Learn about multitasking, address book, gesture recognizers, table views and many other iOS features
Synopsis
You can build a variety of amazing apps on the iOS platformand every one of them presents a unique set of problems. With the recipes in this cookbook, you'll go beyond theory to solve the vexing, real-life issues youre likely to face when creating apps for the iPhone, iPad, or iPod Touch. Each recipe provides a clear solution and sample code that you can use right away.
You'll find solutions for working with development frameworks in iOS SDK 4 and technologies such as Cocoa, Objective-C, Xcode, and Interface Builder. Whether you have a little or a lot of experience with iOS development, youll find the help you need for every phase of the process, from initial idea to completed project.
- Work with Objective-C classes, objects, properties, delegates, and memory management
- Construct a user interface with gesture recognizers
- Develop location-aware applications with the Map Kit and Core Location APIs
- Build apps that play audio and video, manage calendars and events, access contacts and groups, or tap into the Photo Library
- Use the Core Motion framework to access the accelerometer and gyroscope
- Maintain persistent storage for iOS apps with the Core Data framework
- Create multitasking-aware apps that let users leave and return without losing their place
Synopsis
How can you make your iPad or iPhone app stand out in the highly competitive App Store? While many books simply explore the technical aspects of iPad and iPhone app design and development, App Savvy also focuses on the business, product, and marketing elements critical to pursuing, completing, and selling your app -- the ingredients for turning a great idea into a genuinely successful product.
Whether you're a designer, developer, entrepreneur, or just someone with a unique idea, App Savvy explains every step in the process, with guidelines for planning a solid concept, engaging customers early and often, developing your app, and launching it with a bang. Author Ken Yarmosh details a proven process for developing successful apps, and presents numerous interviews with the App Store's most prominent publishers.
- Learn about the App Store and how Apple's mobile devices function
- Follow guidelines for vetting and researching app ideas
- Validate your ideas with customers -- and create an app theyll be passionate about
- Assemble your development team, understand costs, and establish a workable process
- Build your marketing plan while you develop your application
- Test your working app extensively before submitting it to the App Store
- Assess your app's performance and keep potential buyers engaged and enthusiastic
Synopsis
If you're new to the Android mobile operating system, Learning Android is the perfect way to master the fundamentals. Written by an expert who's taught Android to thousands of people in large organizations, this gentle introduction shows you how to use Android's basic building blocks to develop user interfaces, store data, and more.
You'll learn by building an example application throughout the course of book, adding new features with each chapter. Along the way, you'll also build your own toolbox of code patterns that will help you program any type of Android application with ease.
- Get an overview of the Android platform, and how this technology fits into the mobile ecosystem
- Set up your Android development environment and get started with simple programs
- Learn about Activities, Intents, Services, Broadcast Receivers, and Content Providers
- Build basic Android user interfaces, and learn about Views and Layouts
- Create a Service to update data in your example application
- Learn how Android supports databases by creating a SQL database opener
- Test your application and publish it to the Android Market
Synopsis
Want to build apps for Android devices? This book is the perfect way to master the fundamentals. Written by an expert who's taught this mobile platform to hundreds of developers in large organizations, this gentle introduction shows experienced object-oriented programmers how to use Androids basic building blocks to create user interfaces, store data, connect to the network, and more.
You'll build a Twitter-like application throughout the course of this book, adding new features with each chapter. Along the way, you'll also create your own toolbox of code patterns to help you program any type of Android application with ease.
- Get an overview of the Android platform and discover how it fits into the mobile ecosystem
- Learn about the Android stack, including its application framework, and the structure and distribution of application packages (APK)
- Set up your Android development environment and get started with simple programs
- Use Androids building blocksActivities, Intents, Services, Content Providers, and Broadcast Receivers
- Learn how to build basic Android user interfaces and organize UI elements in Views and Layouts
- Build a service that uses a background process to update data in your application
- Get an introduction to Android Interface Definition Language (AIDL) and the Native Development Kit (NDK)
About the Author
Ken Yarmosh is a product strategist focused on building exceptional mobile applications. Before getting into mobile apps, he orchestrated the development of desktop and web applications for products as diverse as the financial accounting system for the United States Courts and the automated search marketing platform for Clickable.
With his startup experience of transforming rough ideas into polished products, Ken uses his technical background and business know-how to tackle and conquer new market innovations. While helping clients with iPad, iPhone, Android, and web apps, Ken's own portfolio includes the perennial bestseller AudioBookShelf. He maintains a blog at http://kenyarmosh.com.
Table of Contents
Dedication; Preface; Audience; Organization of This Book; Additional Resources; Conventions Used in This Book; Using Code Examples; Wed Like to Hear from You; Safari® Books Online; Acknowledgments; Chapter 1: Working with Objects; 1.1 Introduction; 1.2 Implementing and Using Custom Objects; 1.3 Allocating and Initializing Objects; 1.4 Defining Two or More Methods with the Same Name in an Object; 1.5 Defining and Accessing Properties; 1.6 Managing Properties Manually; 1.7 Reusing a Block of Code; 1.8 Communicating with Objects; 1.9 Invoking the Selectors of an Object Dynamically; 1.10 Managing Memory with the iOS SDK; 1.11 Managing Untyped Objects; Chapter 2: Implementing Controllers and Views; 2.1 Introduction; 2.2 Getting and Using the Application Delegate; 2.3 Managing the Views in Your Application; 2.4 Creating Your Applications GUI; 2.5 Making Your View Controller Available at Runtime; 2.6 Using a View in Your Applications GUI; 2.7 Managing Master-Detail Views; 2.8 Managing Multiple Views; 2.9 Incorporating and Using Models in the GUI; 2.10 Implementing Navigation Bars; 2.11 Switching from One View to Another; 2.12 Setting the Title on a Navigation Bar; 2.13 Displaying an Image for the Title of the Navigation Bar; 2.14 Creating and Managing Buttons on a Navigation Bar; 2.15 Removing a View from a Navigation Controller; 2.16 Manipulating a Navigation Controllers Array of View Controllers; 2.17 Incorporating a Tab Bar into Your Application; 2.18 Pop Up Additional Information over iPad UI Elements; Chapter 3: Constructing and Using Table Views; 3.1 Introduction; 3.2 Creating a Table View Using Interface Builder; 3.3 Creating a Table View Using Code; 3.4 Assigning an Event Handler to a Table View Using Interface Builder; 3.5 Assigning an Event Handler to a Table View Using Xcode; 3.6 Populating a Table View with Data; 3.7 Receiving and Handling Table View Events; 3.8 Using Different Types of Accessories in a Table View; 3.9 Creating Custom Table View Accessories; 3.10 Customizing the Appearance of a Table Views Contents; 3.11 Displaying Hierarchical Data; 3.12 Effectively Managing Memory with Table Views; 3.13 Editing and Moving Data in a Table View; 3.14 Enabling Swipe Deletion; 3.15 Grouping Data; Chapter 4: Core Location and Maps; 4.1 Introduction; 4.2 Creating a Map Using Interface Builder; 4.3 Creating a Map Using Code; 4.4 Handling the Events of a Map; 4.5 Pinpointing a Devices Location; 4.6 Displaying Built-in Pins on a Map View; 4.7 Displaying Pins with Different Colors on a Map View; 4.8 Creating and Displaying Custom Pins on a Map View; 4.9 Retrieving Meaningful Addresses Using Spatial Coordinates; 4.10 Retrieving Spatial Coordinates Using Meaningful Addresses; Chapter 5: Implementing Gesture Recognizers; 5.1 Introduction; 5.2 Detecting Swipe Gestures; 5.3 Reacting to Rotation Gestures; 5.4 Detecting Panning and Dragging Gestures; 5.5 Detecting Long Press Gestures; 5.6 Responding to Tap Gestures; 5.7 Responding to Pinch Gestures; Chapter 6: Networking and XML; 6.1 Introduction; 6.2 Opening and Reading a Local XML File; 6.3 Parsing an XML File into Objects; 6.4 Downloading Files Synchronously; 6.5 Downloading Files Asynchronously; 6.6 Reading and Parsing Remote XML Files; 6.7 Caching Files in Memory; 6.8 Caching Files on Disk; Chapter 7: Operations, Threads, and Timers; 7.1 Introduction; 7.2 Running Tasks Synchronously; 7.3 Running Tasks Asynchronously; 7.4 Creating a Dependency Between Tasks; 7.5 Performing a Task After a Delay; 7.6 Performing Periodic Tasks; 7.7 Performing Periodic Tasks Efficiently; 7.8 Initializing Threads Implicitly; 7.9 Exiting Threads and Timers; 7.10 Avoiding Memory Leaks in Threads; Chapter 8: Audio and Video; 8.1 Introduction; 8.2 Playing Audio Files; 8.3 Handling Interruptions While Playing Audio Files; 8.4 Recording Audio Files; 8.5 Handling Interruptions While Recording Audio Files; 8.6 Playing Audio over Other Sounds That Are Playing; 8.7 Playing Video Files; 8.8 Capturing Thumbnails from a Video File Asynchronously; 8.9 Accessing the iPod Library in Response to a User Request; Chapter 9: Address Book; 9.1 Introduction; 9.2 Accessing the Address Book; 9.3 Retrieving All the People in the Address Book; 9.4 Retrieving Properties of Address Book Entries; 9.5 Inserting a Person Entry in the Users Address Book; 9.6 Inserting a Group Entry in the Users Address Book; 9.7 Adding Persons to Groups; 9.8 Searching in the Address Book; 9.9 Retrieving and Setting a Persons Address Book Image; Chapter 10: Camera and the Photo Library; 10.1 Introduction; 10.2 Detecting and Probing the Camera; 10.3 Taking Photos with the Camera; 10.4 Taking Videos with the Camera; 10.5 Storing Photos in the Photo Library; 10.6 Storing Videos in the Photo Library; 10.7 Rettttttrieving Photos and Videos from the Photo Library; 10.8 Retrieving Assets from the Assets Library; 10.9 Editing Videos on an iOS Device; Chapter 11: Multitasking; 11.1 Introduction; 11.2 Detecting the Availability of Multitasking; 11.3 Completing a Long-Running Task in the Background; 11.4 Receiving Local Notifications in the Background; 11.5 Playing Audio in the Background; 11.6 Handling Location Changes in the Background; 11.7 Saving and Loading the State of a Multitasking iOS Application; 11.8 Handling Network Connections in the Background; 11.9 Handling Notifications Delivered to a Waking Application; 11.10 Handling Locale Changes in the Background; 11.11 Responding to Changes in an Applications Settings; 11.12 Opting Out of Background Execution; Chapter 12: Core Data; 12.1 Introduction; 12.2 Creating a Core Data Model with Xcode; 12.3 Creating and Using Core Data Model Classes; 12.4 Creating and Saving Data Using Core Data; 12.5 Loading Data Using Core Data; 12.6 Deleting Data Using Core Data; 12.7 Sorting Data Using Core Data; 12.8 Boosting Data Access in Table Views; 12.9 Implementing Relationships with Core Data; Chapter 13: Event Kit; 13.1 Introduction; 13.2 Retrieving the List of Calendars; 13.3 Adding Events to Calendars; 13.4 Accessing the Contents of Calendars; 13.5 Removing Events from Calendars; 13.6 Adding Recurring Events to Calendars; 13.7 Retrieving the Attendees of an Event; 13.8 Adding Alarms to Calendars; 13.9 Handling Event Changed Notifications; 13.10 Presenting Event View Controllers; 13.11 Presenting Event Edit View Controllers; Chapter 14: Graphics; 14.1 Introduction; 14.2 Drawing Basic Shapes on a Graphics Context; 14.3 Drawing Paths on a Graphics Context; 14.4 Drawing Images on a Graphics Context; 14.5 Capturing the Screen Contents into an Image; 14.6 Drawing Text with Core Graphics; Chapter 15: Core Motion; 15.1 Introduction; 15.2 Detecting the Availability of an Accelerometer; 15.3 Detecting the Availability of a Gyroscope; 15.4 Retrieving Accelerometer Data; 15.5 Detecting a Shake on an iOS Device; 15.6 Retrieving Gyroscope Data; Colophon;