2009-04-17 7 views
3

Mon application iPhone établit une connexion TCP via le réseau Wi-Fi vers un serveur distant. Cependant, s'il n'y a pas d'activité de l'utilisateur pendant un certain temps, l'appareil ferme le réseau sans fil et abandonne la connexion. Est-il possible de l'empêcher? J'ai besoin que la connexion soit persistante pendant que l'application est en cours d'exécution. Réglage setIdleTimerDisabled: OUI n'aide pas - il empêche l'écran de s'éteindre, mais toujours le wifi est fermé.La connexion WiFi est interrompue après la période d'inactivité de l'utilisateur

Savez-vous si c'est possible et comment y parvenir?

+0

Bonne question. Je pensais aussi que cela était inclus dans setIdleTimerDisabled: – Dutchie432

Répondre

6

Vérifiez cette URL: http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ApplicationEnvironment/ApplicationEnvironment.html#//apple_ref/doc/uid/TP40007072-CH7-SW59

Tableau 1-3 Touches importantes dans le fichier Info.plist

UIRequiresPersistentWiFi:

Valeur booléenne qui informe le système que l'application utilise le réseau Wi-Fi pour la communication. Les applications qui utilisent le Wi-Fi pour une période donnée doivent définir cette clé sur true; sinon, au bout de 30 minutes, l'appareil arrête les connexions Wi-Fi pour économiser l'énergie. La définition de ce drapeau permet également au système de savoir qu'il doit afficher la boîte de dialogue de sélection du réseau lorsque le Wi-Fi est disponible mais n'est pas utilisé actuellement. La valeur par défaut est false.

+1

Notez que WiFi a un effet significatif sur la vie de la batterie. Il peut être préférable d'accepter la connexion interrompue et de la reconnecter en cas d'échec. Cela rendrait votre application plus robuste en général. –