2010-09-17 10 views
4

J'essaie de me connecter à Gmail en utilisant l'API SMACK via le serveur XMPP. mais obtenir leL'autorisation SASL échoue lors de la connexion au serveur XMPP

erreur: l'authentification SASL a échoué en utilisant le mécanisme PLAIN

vous pouvez vérifier un aperçu de code. Je l'ai obtenu de net seulement

ConnectionConfiguration connConfig = new ConnectionConfiguration("talk.google.com", 5222, "gmail.com"); 
connection = new XMPPConnection(connConfig); 
connection.connect(); 
SASLAuthentication.supportSASLMechanism("PLAIN", 0); 

J'ai vérifié dans la fenêtre de débogage de smack. il dit en XML:

< invalide-authzid />

Je suis déjà des compte sur gmail et mon Gtalk est également en cours d'exécution.

Répondre

9

Vous devez définir l'authentification avant de vous connecter à savoir

SASLAuthentication.supportSASLMechanism("PLAIN", 0);

doit comparaître devant connection.connect().

Voir mon blog.

+1

merci pour la réponse thr il a travaillé – SPB

+5

N'a pas fonctionné pour moi à partir du 28-11-2013. –

+0

Je ne trouve pas cette méthode dans cette classe. Toute alternative? – joao2fast4u

1
ConnectionConfiguration cc = new ConnectionConfiguration(
      "vietnam.agilemobile.com", 5222, vietnam.agilemobile.com"); 
    XMPPConnection connection = new XMPPConnection(cc); 
    try { 
     SASLAuthentication.supportSASLMechanism("PLAIN", 0); 
     connection.connect(); 
     Log.e("LOGIN", "" + 111); 
     // You have to put this code before you login 
     Log.e("LOGIN", "" + 222); 
     // You have to specify your gmail addres WITH @gmail.com at the end 
     connection.login("nemodo", "123456", "resource"); 
     Log.e("LOGIN", "" + 333); 
     // See if you are authenticated 
     System.out.println(connection.isAuthenticated()); 

    } catch (XMPPException e1) { 
     e1.printStackTrace(); 
    } 

Je reçois également cette erreur, mais je ne peux pas travailler.

+0

Expliquer quelle est l'erreur et fournir une correction au code fourni par l'utilisateur. –

+0

SASLAuthentication.supportSASLMechanism ("PLAIN", 0); n'est plus disponible. – joao2fast4u

Questions connexes