Categories

The following items are in the Development category.

Waving a red flag

As a result of my last essay, it has come to my attention that there is a simple and effective way to get Apple’s attention for critical bug fixes. An email to appreview@apple.com that explains the critical problem and which product is affected will help speed your update through the system.
Use this email address only [...]

Year two

As we approach the first anniversary of selling things on the iTunes App Store, I’d like to take the opportunity to look at where we’ve been and where we’d like to go. A lot of good things have happened since last July 11th, but there’s still much room for improvement.
Note: These words may be mine, [...]

Brain farts

What happened?
In spite of plenty of advance warning from Twitter, we got caught by the Twitpocalypse bug.
For the 2.0.1 release, we had tested our software extensively. I actually wrote an emulation layer on top of the code that reads data from Twitter that added a large number to every ID read from Twitter. This testing [...]

Of toolbars and actions

Another area where I find iPhone development to be a bit convoluted was with toolbars and action sheets. The sheets are conceptually tied to the toolbar, yet there is no glue to combine UIActionSheet with UIToolbar. It’s also fairly difficult to represent your application state in the toolbar—an example is the refresh button in Twitterrific [...]

Matt Gallagher deserves a medal…

Every once in awhile you read a blog post that completely changes the way you think about a problem. Matt Gallagher’s Cocoa With Love is one of those blogs where it happens often. If you’re not subscribing to his RSS feed, do it now.
In particular, this post addressed a problem that every iPhone developer has [...]

A thought experiment

Assume the following:

You have an application that you’re selling on the App Store. This application, MyApp 1.0, works on both iPhones and iPod touches with the 2.2.1 firmware.
The compelling new APIs in iPhone SDK 3.0 allow you to implement a bunch of great new features in your product. Let’s say you add a Map View [...]

Slow ride, make it easy

Many of us are developing iPhone applications running in a simulator connected to a very fast Internet connection. Too bad the customers of these applications won’t be using the same environment.
It’s very important to be able to profile and debug your application while it’s running on a slow network. You’ll find lots of weird timing [...]

Open sesame

Here’s a simple little script that saves me a lot of time:
#!/bin/sh 

if [ -z "$1" ]; then
echo “usage: $0 <app> [ Preferences | <document> ]”
else
app=`ls -1td ~/Library/Application\ Support/iPhone\ Simulator/User/Applications/*/$1.app`
dir=`dirname “$app”`
if [ "$2" = "Preferences" ]; then
open “$dir/Library/Preferences”
else
open [...]

Sharing iPhone projects

The latest version of Xcode has a “feature” that prevents you from specifying a wildcard name for the Code Signing Identity. (This feature does make it easier for new developers or people working alone, so I’m not going to write a Radar for this behavior.)
When you have multiple people working on an iPhone project, this [...]

Bootstrap

A lot of people stumble upon this website because they’re looking for information about developing applications for the iPhone. If this is your first time here, welcome!
I have been developing applications for the iPhone since it was released (using both the Jailbreak and official SDK.) My company is currently selling several applications in iTunes. I [...]