Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
iPhone App Development: The Missing Manual
The Missing Credits
About the Author
About the Creative Team
Acknowledgements
The Missing Manual Series
Introduction
The App Store
About This Book
About the Outline
The Very Basics
About→These→Arrows
Living Examples
About MissingManuals.com
Safari® Books Online
One. Getting Started with Cocoa Touch
1. Building Your First iPhone App
Getting the Tools
Installing Xcode
Getting the iPhone SDK
What Lies Ahead for the SDK?
Exploring Your New Tools
Every Flashlight Needs a Parts List
Some Assembly Required
Taking It for a Run on Your Mac
Revision Decision
2. The Power of Brackets
Objective-C: The Nuts and Bolts for Your iPhone App
The Land of Square Brackets
The Object of It All
Telling Your Objects to Do Things
Masses of Classes
Classes in Detail
One class to rule them all
Follow the protocol
The Methods Behind the Madness
Categorically Speaking
Implementation: The Brains Behind the Beauty
Creating New Classes
Managing Memory
Take a nil Pill
Autorelease with Ease
Properties and Dots
Methods of Class
Initializing Objects
Deallocation Location
Manual override
Loops: For Better or For Worse
Your Exceptional Code
Learn by Crashing
Selector Projector
Show Your id
Where to Go from Here
Developer Documentation
Results list
Documentation page view
Type less, learn more
Context menu
Clicks ahoy!
Learn to Be Lazy
3. Cocoa Touch: Putting Objective-C to Work
Get in Cocoa Touch
The Big Three: Models, Views, Controllers
Views
Models
Controllers
Value Objects
Let's Get Primitive
Objectified
NSString
NSNumber
NSDate
NSData
NSNull
NSValue
Collections
Copying in Depth
Property Lists
Mutable Versus Immutable
Make It Mutable
Protect Your Data
Delegation and Data Sources
Targets and Actions
User Interface: The Hard Way
Along the way
The magical way
User Interface: The Easy Way
A head start
Your first view
You're in control
Get a Little Action
Squash those bugs
Notifications
Singletons
Singletons as Globals
Where to Go from Here
The Language of Design
4. Design Tools: Building a Better Flashlight
Plan Before You Code
Why Call in a Designer?
Design Goals
What's Unique about iPhone Design?
Let's get physical
The Internet in your pants
Size matters
Keep it simple
The Design Process
A paper prototype
A pencil and paper and…
Make it pretty
A first impression
How does it feel?
Living in Harmony with Your Designer
Finding a common ground
Give the designer control
Feedback: Don't Take Your Own Word for It
The Providers of Feedback
You
Your marketing department
The people who plunked down their credit cards
Flashlight 2.0
Bigger, Stronger, Faster
The Light Side
The Flip Side
The Drawing Board
Technical Design: Between Pictures and Code
Start Naming
First light
The dimmer switch
Where to Go from Here
Ready to Code!
Two. Development in Depth
5. Getting Serious about Development
Beyond the Template
Pick Your SDK
Change Project Settings
Change Target Settings
What's in a name?
Identify yourself
Choose a distinctive icon
Build Settings
Configurations
Duplicity
Make It Official
Join the iPhone Developer Program
Choose your program
Pay to play
Welcome to the club
Open the Door
What code signing means to you
Keychain setup
Provisions
When It Fails
Code signing
Device provisioning
Other problems
You're Now Mobile
Ready to Roll
6. A Flashlight for Pros
A Guided Tour
Where to Start?
Open the Guide Book
Flashlight_ProAppDelegate
UIApplication
UIScreen
Windows and views
NIB Files: Something to Look At
MainWindow.xib
MainView.xib
File's Owner
Views upon views
Custom views
View Sizing
Autoresizing
SettingsView.xib
Opacity
The sliders
AboutView.xib
Refine the Look
LightView
Delegation
Enumeration
Class extensions for private methods
Catching view property changes
View animation
IFInfoView
Name
View setup
Drawing in code
Color filling
Gradients
A path to greatness
Half a pixel matters
Text drawing
Image drawing
Making Cocoa Touch Your Own
UIColor+Brightness
Naming conventions
Wrapping it up
UIView+Brightness
UIView+Concealed
A new property
View coordinates
More view animation
Progressive methods
A new feature
Fashion Your Models
SOSModel
Notifications
Private property
FlashlightModel
Read-only properties
Class statics
User defaults
Strings in user interfaces
Pull Yourself Together
MainViewController
Notifications
Sounds
Being a delegate
One view, two identities
Alert views
Action sheets
SettingsViewController
Coming to life
Sharing a model
Flipping out and in
Interface Builder can't do it all
Stretchable images
Localization
AboutViewController
Which version?
A different approach to animation
Localized Languages: Capisce?
Localizable.strings
Localization logistics
Layout breakage
AboutView.xib
Wrapping It Up
Three. The Business End
7. Finishing Touches
Beta Testing
Your App Works for You…But
Users find the darnedest things
Flashlight improvements
Ad Hoc & Roll
Gather your testers
Distribution
Entitlements
Build and send
Install
Clean Up Your Act
Beautification Committee
Speaking in Tongues
Web Development
The Site
Content
Movies
Tracking
App Store, Here You Come
8. For Sale
Sign on the Dotted Line
Welcome
First Order of Business
Contracts
Contact info
Bank info
Tax info
Final approval
Stake Your Claim
Export Compliance
Overview
Application Name
Application Description
Device Capabilities
Categories
Copyright and Version
SKU Number
Keywords
URLs and Email
Demo Account
EULA
Before moving on
Ratings
Upload—Show It Off
Application binary
Application icon
Screenshots
Pricing—Pick Your Price
Availability Date
Price Tier
Localization
Review
Tweak It
The Market
Metrics
Surprise! Apple is secretive
Third-party research
User demographics
Competition
Running up the charts
Press
Two Developers, One Store
Look at the music business
Choose your customers
High roller
Pricing Strategies
A cup of coffee
What kind of product is it?
Try Before You Buy
Incentives
Conversion rates
Free to paid
Upload
The Final Profile
The Final Target
The Final Build
The Final Upload
The Final Test
The First Promotion
App Review
Make Sure You Haven't Broken Any Rules
Coping with Rejection
Ready for Sale
Launch Day
9. You've Got Customers!
Tracking Sales
Daily Reports
Web-based solutions
iPhone apps
Desktop application
Guesstimation
Monthly Financial Reports
Getting Paid
Advertising and Promotion
Press Release
Find a Mouth
Social Networking: Word-of-Mouth on Steroids
The Net works
Give customers something to talk about
It's a conversation
The Big Bang
Spreading like wildfire
Online Advertising
Budget
Impression-based advertising
Click-based advertising
Flat rate
Sponsorship
Branding
Promotion Codes
Strings attached
Replenishment
Sale Prices
Eddie's not really crazy
Let people know
Plotting It Out
Monitor Coverage
Ranking
Google
Get rich clicks
Signup
Creating links
Monitor activity
Gathering intelligence
Customer Support
Everything Is Perfekt
Crash Course
Dealing with Support Email
Product Updates
New Info
Welcome Back, iTunes
Upgrades (or Lack Thereof)
Congratulations!
Four. Appendix
A. Where to Go from Here
Help with Objective-C
Books
Web
Help with Cocoa
Books
Web
Discussion
Help with iPhone SDK
Books
Web
Discussion
Help with Interface Design
Books
Help with Xcode
Web
Help with Web Development
Web
Discussion
Keeping Up with News and Business
Books
Web
Discussion
Open Source Resources
Index
← Prev
Back
Next →
← Prev
Back
Next →