Я нашел несколько примеров кода, который делает то, что я хочу (проверка доступности), но ни один из них не кажется достаточно точным, чтобы быть полезным для меня. Я не могу понять, почему это не хочет играть хорошо.
У меня есть достижимость. Ч / м в моем проекте, я делаю
#import <SystemConfiguration/SystemConfiguration.h>
И у меня есть рамки, добавленные. У меня также есть:
#import "Reachability.h"
в верхней части .m, в котором я пытаюсь использовать достижимость.
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"); }
Это вызывает у меня всевозможные проблемы. Что я делаю неправильно? Я - хороший программист, мне просто трудно найти время, чтобы понять, что нужно сделать, чтобы включить то, что я хочу сделать, независимо от того, хочу ли я знать, что я хочу делать или нет. (Так расстраивает)
Обновление: это то, что происходит. Это в моем viewcontroller, который у меня есть
#import <SystemConfiguration/SystemConfiguration.h>
и
#import "Reachability.h"
с настройкой. Это моя самая нелюбимая часть программирования на сегодняшний день.
(источник: sneakyness.com )
FWIW, мы никогда не реализовывали это в нашем коде. Две функции, которые требовали доступа в Интернет (вход в лотерею и покупка DVD), не были основными. Больше ничего не требуется доступ в интернет.
Вместо того, чтобы добавлять больше кода, мы просто устанавливаем фон обоих представлений в Интернете, чтобы уведомить пользователей, что они должны быть подключены к Интернету, чтобы использовать эту функцию. Это было в теме с остальным интерфейсом приложения, и было сделано хорошо / со вкусом. Они ничего не сказали об этом во время процесса одобрения, однако мы получили личный телефонный звонок, чтобы убедиться, что мы раздавали вещи, которые действительно имели отношение к фильму. Согласно их обычно расплывчатому соглашению, вам не разрешается проводить лотереи в противном случае.
Я бы также подумал, что это более строго придерживается их идеологии "используй вещи, только если они тебе абсолютно необходимы".
Вот ссылка iTunes на приложение, EvoScanner.