Ich entwickle eine Netzwerkanwendung auf dem iPhone, die ständig eine Internetverbindung benötigt. Sobald ich mich jedoch beim Server anmelde und das iPhone für einige Zeit nicht aktiviere, wechselt das iPhone in den Energiesparmodus und trennt meine Netzwerkverbindung (es meldet mich ab).Verlust der Netzwerkverbindung auf dem iPhone
Wenn ich die gleiche Anwendung auf dem iPhone ausführen, während das iPhone über ein USB-Kabel mit dem PC verbunden ist, verliert es nie seine Netzwerkverbindung.
In der Datei info.plist habe ich diese beiden Flags hinzugefügt, scheint aber keine Wirkung zu haben.
UIRequiresPersistentWifi -> true SBUsesNetwork - integer -> 3
Bin ich etwas fehlt? Können Sie mir bitte mitteilen, wie ich sicherstellen kann, dass die Netzwerkverbindung während der gesamten Laufzeit der Anwendung bestehen bleibt?
Danke für Ihre Antwort. Mit "Abmelden" meine ich, dass die Anwendung ihre TCP-Verbindung mit dem Server verliert. – ebaccount
Das meine ich mit "es gibt nur Pakete". Die Tatsache, dass ich meinen Computer ausschalte, unterbricht keine TCP-Verbindung. Und TCP hat keine Möglichkeit zu wissen, ob die andere Seite noch da ist. Die einzigen Dinge, die eine TCP-Sitzung beenden, sind FIN, RST und ein Fehlschlag, wenn die andere Seite mit mir spricht. "TCP keepalive" ist hier irreführend, weil es für ein paar Stunden nicht einmal ins Spiel kommt. Also, warum hast du deine TCP-Verbindung verloren? Sendet der Server Ihnen Daten, auf die Sie nicht antworten? –
Ja, nach einer Weile erhalte ich keine Daten vom Server – ebaccount