Je construis une application de serveur client à partir d'un appareil Android vers un serveur sur 3G. En raison de l'opérateur réseau qui fournit la 3G, le périphérique client est derrière un NAT. Par conséquent, il est impossible pour le serveur d'établir une connexion avec le client. Je pourrais adopter une approche de sondage, mais avant de le faire, je veux épuiser toutes les autres options. Y at-il un moyen (je n'en ai pas encore trouvé) de maintenir une connexion TCP Socket ouverte entre le client et le serveur, de sorte que le serveur puisse initier des communications avec le client?Connexion TCP/serveur TCP/IP persistante
Le scénario est qu'il y aura une communication client/serveur très régulière basée sur l'état du serveur qui se met à jour de façon extrêmement régulière - nous parlerions toutes les deux ou trois secondes. UDP serait-il une meilleure option ici? Peut-être pas comme le problème du NAT le frappe encore sur la tête.
Y a-t-il d'autres options disponibles?
Un grand merci
Vous demandez comment le garder ouvert (pour une fenêtre de quelques secondes) - Je me demande comment il se referme sur vous en premier lieu. – corsiKa
Ce n'est pas. Cependant, si j'utilise un objet ObjectOutputStream pour écrire un objet sur le serveur, puis-je le réutiliser plus tard, alors que le socket est toujours ouvert? Ou ai-je besoin de ré-instancier l'ObjectOutputStream? Je n'arrive pas à trouver quelque chose à ce sujet. Merci – Joeblackdev