While iOS 4 is a significant upgrade to Apple's multi-touch operating system, it is not without its quirks. And one of these quirks (an extremely annoying one) is the Nike+ app. Simply put, the app is so buggy that it is almost unusable (the operative word here being "almost," since it takes a lot of fiddling around to get it to work correctly).
A search for "Nike+ iOS 4" on the Apple and Nike support forums and Google will produce a smorgasbord of user complaints. I'll address some of those here and offer some possible remedies.
Sensor not detected
First things first, let's talk about the sensor. The sensor is the little chip that slips inside of your Nikes (or other brand of shoes, if you use a pouch) and transmits your running data to your iPhone via a proprietary, low-power, 2.4 GHz radio protocol. Unfortunately, many users are finding that their iOS 4 devices are having difficulty establishing a connection with the sensor.
The first step you'll want to take to address this issue is to press the reset button on the back of the sensor several times (repeatedly and quickly). Don't hold the button down for too long, though, or it may actually put the sensor to sleep.
However, this may not work for everyone. Like the proximity sensor issue, resetting the settings on your iPhone has resolved sensor detection issues for many. To do this, make your way to Settings > General > Reset and tap on Reset All Settings.
Unable to resume workout
Normally, if you receive a phone call during a Nike+ run, the app will pause your current run when you answer the phone, and it will resume from where you left off after the call is over.
That's not the case anymore.
Many, myself included, have found that Nike+ won't resume tracking your run after any pause (be it a phone call or just manually pausing the workout). Instead of hearing "1.5 miles completed ... current pace: 8 minutes a mile," you're greeted with "zero miles completed ... current pace: zero minutes a mile."
The fix for this is simple (albeit annoying): prevent your workout from pausing. This means not pressing the pause button and avoiding things (ahem, phone calls) that would cause Nike+ to pause. I suggest turning on Airplane mode. Doing this means that you won't be able to listen to Pandora in the background (which has also been buggy for me), but unfortunately, it's the poison you must pick.
No spoken feedback
The spoken feedback capabilities of Nike+ have been seriously compromised by iOS 4. Ordinarily, a voice will inform you of your progress at certain milestones, such as every mile, the halfway point, and when you're 400 meters from your goal.
One fix for this is to avoid choosing a custom distance to run, which means that you will need to use the predefined distances.
Other bugs in the Nike+ app in iOS 4 include inaccurate mileage and the deletion of run history and calibration data.
Like the Clock, Camera, Photos, and Weather apps, the Nike+ app is a native app on both the iPhone 3GS and iPhone 4. And as a native iPhone app, updates to the Nike+ app come via updates to iOS. You can't just go the App Store and download an update. Thankfully, alternatives exist, including RunKeeper Pro and Runmeter, both of which track your distance via the iPhone's built-in GPS chip.