salut, p>
Je veux vérifier si le mode avion est sur ou non. Comment vérifier cela? P>
Merci + Comment vérifier que l'utilisateur utilise WiFi ou GPRS ou Edge. Comment différencier ?? p>
4 Réponses :
Je ne sais pas si vous pouvez vérifier spécifiquement pour le mode avion, mais le Accès Exemple depuis le site Web de l'iPhone ADC vous permet de vérifier si l'iPhone a accès à Internet. P>
Il ne vous dit pas que le mode avion sur ON ou OFF.
Si vous voulez juste indiquer une notification, lorsque l'utilisateur est en mode avion, il suffit d'activer la propriété SBUXNetwork dans le fichier de plis de votre application. Lorsque votre code utilise réseau, l'utilisateur est invité à désactiver le mode avion automatiquement. p>
Voir par ex. Cet article . P>
Cela ne fait qu'une fois. Vous exécutez l'application L'alerte viendra, ... Après cela, vous n'obtiendrez pas l'invite ...
Êtes-vous sûr que SbuseNetwork n'est pas obsolète ou quelque chose? Il semble que Apple ne le mentionne pas même une fois partout dans leur documentation ...
Le lien en réponse est mort - 404 non trouvé i>.
Cela répond à la deuxième partie de la question - Comment savoir quel type de réseau l'utilisateur est sur (WiFi ou 3G / Edge). Il utilise le code d'accessibilité de Apple. Mettez ceci dans votre méthode DidfinishLaunchingwithOptions dans votre Délégué d'application:
Reachability *curReach = [Reachability reachabilityWithHostName: @"www.apple.com"];
NetworkStatus netStatus = [curReach currentReachabilityStatus];
switch (netStatus)
{
case NotReachable:
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Network Status" message:@"Please note: Network access is required to retrieve images." delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[alert show];
[alert release];
break;
}
case ReachableViaWiFi:
case ReachableViaWWAN:
{
break;
}
}
Faire cela est dangereux car la portée accompagnée peut bloquer dans des conditions de réseau médiocre, ce qui peut entraîner votre application de votre application.
pour SDK 3.0
(http://bbs.51pda.cn/simple/?t4861.html) p>
#import unistd.h
#include dlfcn.h
#include stdio.h
typedef int (*airType)();
static int (*real_air)() = NULL;
int main(int argc, char **argv)
{
int status = 0;
void *libHandle = dlopen("/System/Library/PrivateFrameworks/CoreTelephony.framework/CoreTelephony", RTLD_LAZY);
real_air = (airType)dlsym(libHandle, "CTPowerGetAirplaneMode");
if(! real_air)
{
printf("something wrong");
}
else
{
status = real_air();
}
printf("%d",status);
return status;
}
Ces questions sont très proches de la vôtre: Stackoverflow.com/questions/1016299/... , Stackoverflow.com/questions/ 1279301 / ... , Stackoverflow.com/questions/178636/...
Ceci est très proche de votre: Stackoverflow.com/Questions / 4804398 / Détect-Airplane-Mode-On-iOS