iOS Detect 3G or WiFi
3g, ios, objective-c, reachability, wifi
Solution
Using the code that Apple has provided here
Reachability *reachability = [Reachability reachabilityForInternetConnection];
[reachability startNotifier];
NetworkStatus status = [reachability currentReachabilityStatus];
if(status == NotReachable)
{
//No internet
}
else if (status == ReachableViaWiFi)
{
//WiFi
}
else if (status == ReachableViaWWAN)
{
//3G
}
Problem
I am not sure if this is possible, but I have this scenario. I have a website displayed in my UIWebView which has the link set in a UISegmentedController. They website can detect if you are on wifi or on the 3g network. Now the segmented controller points to 2 different pages: 1 - An iPhone friendly login screen 2 - The home page, once you are logged in. Now here is the question: Can I program my application to detect whether it is to WIFI or 3G (I know you can do this), but then based on the answer go to segment 1 or 2 Kind of like this: ``` if (iPhone device is on 3g) { Go to Segment 1; } else { Go to Segment 0; } ```