Comment garder un XMPP connexion stable sur Android avec (a)smack?

- Je utiliser asmack-android-7-beem bibliothèque pour Android. J'ai un service d'arrière-plan en cours d'exécution, comme mon appli reste en vie. Mais tôt ou tard, XMPP connexion meurt sans préavis. Le serveur dit que le client est toujours en ligne mais pas les paquets sont envoyés ou reçus.

Par exemple, le client ne bénéficie pas de la présence des paquets lorsque d'autres clients ont une présence nouvelle. J'ai XMPPConnection comme un attribut de ma classe principale de l'Application.

J'ai mis ConnectionConfiguration config.setReconnectionAllowed(true) avant que la connexion a été faite.

Mais la reconnexion n'arrive pas. XMPPConnection connection.isConnected() renvoie la valeur true.

De sorte que le client n'est pas conscient que la connexion est réellement perdu.

Est-il un moyen de garder la connexion?

  • Connexes: stackoverflow.com/questions/11342920/...
  • isConnected méthode renvoie l'état de l'objet, mais smack ne peut pas gérer les modifications de connectivité réseau, vous devez écrire le code de vérification que vous êtes en mesure de ping du serveur ou non, selon que vous avez besoin pour effectuer plus d'opérations, pour plus de détails, vous pouvez voir la vue de ma réponse
InformationsquelleAutor Max | 2012-10-26