Why do you use reachabilityWithHostname:@"www.google.com"
? This method checks the reachability of particular host (in your case google.com
). And you receive notifications if Google available or not. Google may block you and you will receive NotReachable
status.
Try to use:
//reachabilityForInternetConnection- checks whether the default route is available.
// Should be used by applications that do not connect to a particular host
+ (Reachability*) reachabilityForInternetConnection;
And also take a look on methods description here.