Sprawdzanie dostępności iPhone'a

Znalazłem kilka przykładów kodu, aby zrobić to, co chcę (sprawdź dostępność), ale żadna z nich nie wydaje się być wystarczająco dokładna, aby była dla mnie przydatna. Nie mogę zrozumieć, dlaczego nie chce miło grać.

Mam osiągalność.h / mw moim projekcie, robię

#import <SystemConfiguration/SystemConfiguration.h>

I dodałem ramy. Też mam:

#import "Reachability.h"

na górze .m, w którym próbuję użyć osiągalności.

Reachability* reachability = [Reachability sharedReachability];
[reachability setHostName:@"http://www.google.com"];    // set your host name here
NetworkStatus remoteHostStatus = [reachability remoteHostStatus];

if(remoteHostStatus == NotReachable) {NSLog(@"no");}
else if (remoteHostStatus == ReachableViaWiFiNetwork) {NSLog(@"wifi"); }
else if (remoteHostStatus == ReachableViaCarrierDataNetwork) {NSLog(@"cell"); }

To daje mi różnego rodzaju problemy. Co ja robię źle? Jestem dobrym koderem, mam trudny czas, kiedy przychodzi czas, aby dowiedzieć się, co należy umieścić, gdzie włączyć to, co chcę robić, niezależnie od tego, czy chcę wiedzieć, co chcę zrobić, czy nie. (Bardzo frustrujące)

Aktualizacja: to się dzieje. To jest w moim viewcontrollerze, który mam

#import <SystemConfiguration/SystemConfiguration.h>

i

#import "Reachability.h"

Skonfigurować. To zdecydowanie moja ulubiona część programowania.problemy z osiągalnością http://sneakyness.com/reachability.png

FWIW, nigdy nie skończyliśmy na implementacji tego w naszym kodzie. Dwie funkcje, które wymagały dostępu do Internetu (wchodzenie do loterii i kupowanie DVD), nie były głównymi cechami. Nic innego nie wymagało dostępu do Internetu.

Zamiast dodawać więcej kodu, ustawiamy tło obu widoków internetowych na powiadomienie informujące użytkowników, że muszą być połączeni z Internetem, aby korzystać z tej funkcji. Był w temacie z resztą interfejsu aplikacji i został wykonany dobrze / gustownie. Podczas procesu zatwierdzania nic nie powiedzieli, jednak otrzymaliśmy osobistą rozmowę telefoniczną, aby sprawdzić, czy rozdajemy przedmioty, które faktycznie dotyczyły filmu. Zgodnie z ich zwykle niejednoznaczną zgodą, nie możesz mieć loterii w inny sposób.

Sądzę również, że jest to ściśle związane z ideologią „używaj tylko, jeśli absolutnie ich potrzebujesz”.

Oto link iTunes do aplikacji EvoScanner.

questionAnswers(5)

yourAnswerToTheQuestion