I updated my iPhone 3GS to ios 4 a couple days ago. At the time, I didn't notice because I was on 802.11 WiFi, but since then I haven't been able to access ANY data over cellular. I called AT&T and they stated that it is a known problem with the upgrade to ios 4 that they are currently working with Apple on. Apparently it breaks the profile on your phone so that the phone believes you are not allowed to use 3G data. It also breaks your voicemail. Calling and texting worked as usual for me, but this is not the case for everyone affected by this problem according to AT&T.

The fix they specified to me was to restore the iPhone as a new device from backup. I haven't tried it yet because I am on the way home to visit my family and writing this from the ferry, but I thought you all should know.

I don't know whether this only applies to the 3GS or not. Please comment if you know.

I don't know whether this only applies to the 3GS or not. Please comment if you know.

Hi. I bought a iPhone 4 and am experiencing the same issue! After i got it home i restored my data from a backup and thats when i noticed the issue. After reading your post I tried the restore and I'm now able to get on 3G. Before the restore it would work very slow or not at all. I haven't brought over my data from the backup yet because I think I'll lose 3G again.

I had the exact same issue, and this fixed it for me. The cliff notes:

1. Make a backup.
2. Delete a specific file from that backup
3. Restore your iphone to factory in iTunes.
4. Restore your backup minus the one file you deleted in #2. This is where you'll get the error mentioned that you should ignore. The error will come from iTunes (I expected it to come from the phone for some reason).
5. Sync

You should verify 3G access at both steps 3 and 4, just to be sure.

AT&T and Apple's solution for this is to revert to 3.1.3, which is a non-fix and not cool.

To clarify, it's not doing the update that's the issue, but doing the update, and then restoring an earlier backup on top of it.

Well, no, not exactly. The problem is that the APN settings for some people worked with 3.1.3 but not iOS 4, and when you do the upgrade to iOS 4 it carries over the same bad settings. When you restore your phone to its factory state the APN settings are good, but if you then restore a backup with the bad APN settings they get put right back on. That's why you need to delete the file.

I had Spirit jailbroken 3.1.3, and it's possible that's why this happened. But I wasn't about to tell AT&T or Apple that

I had the exact same issue, and this fixed it for me. The cliff notes:

1. Make a backup.
2. Delete a specific file from that backup
3. Restore your iphone to factory in iTunes.
4. Restore your backup minus the one file you deleted in #2. This is where you'll get the error mentioned that you should ignore. The error will come from iTunes (I expected it to come from the phone for some reason).
5. Sync

You should verify 3G access at both steps 3 and 4, just to be sure.

AT&T and Apple's solution for this is to revert to 3.1.3, which is a non-fix and not cool.

This worked for me, but I lost my music which was synced with my computer before my hard drive went kaputt. Sad.