Just wanted to share something that has noticeably improved my data connection/speed. I'm on stock 5.1 with a Verizon 4S, so not sure if it works on anything other than a Sprint iPhone.
A few days ago I was having intermittent data problems, such as .06Mbps down, switching between 3G and 2G, etc, and did all the usual toggle airplane mode, toggle data, restart phone, etc. I was about to just do a fresh restore, when a setting in General -> Network -> Roaming titled "International CDMA". Under this setting it says to turn it off if you experience poor data performance. Since then I haven't had any weird issues, and iMessage has never had to send a message as a text to an iPhone.
Anyway, it most likely only works on CDMA iPhones, but it's worth a shot of you're ever experiencing data issues.
A few days ago I was having intermittent data problems, such as .06Mbps down, switching between 3G and 2G, etc, and did all the usual toggle airplane mode, toggle data, restart phone, etc. I was about to just do a fresh restore, when a setting in General -> Network -> Roaming titled "International CDMA". Under this setting it says to turn it off if you experience poor data performance. Since then I haven't had any weird issues, and iMessage has never had to send a message as a text to an iPhone.
Anyway, it most likely only works on CDMA iPhones, but it's worth a shot of you're ever experiencing data issues.