2015-04-19 2 views
2

Je suis en train d'établir une connexion avec GoogleTalk dans android en utilisant Smack. J'ai suivi de nombreux exemples de tutoriels sur Internet, mais je n'arrive toujours pas à le faire fonctionner.Android smack 4.1 problème avec la connexion

public static final String HOST = "talk.google.com"; 

public static final int PORT = 5222; 
public static final String SERVICE = "gmail.com"; 
public static final String USERNAME = "[email protected]"; 
public static final String PASSWORD = "mypassword"; 

Mes références ci-dessus sont corrects ...

XMPPTCPConnectionConfiguration.Builder connConfig = XMPPTCPConnectionConfiguration.builder(); 
    connConfig.setSecurityMode(ConnectionConfiguration.SecurityMode.required); 
    connConfig.setUsernameAndPassword(USERNAME, PASSWORD); 
    connConfig.setServiceName(SERVICE); 
    connConfig.setHost(HOST); 
    connConfig.setPort(PORT); 
    connConfig.setDebuggerEnabled(true); 
    //setCompressionEnabled(false).build(); 
    //(HOST, PORT, SERVICE); 
    XMPPTCPConnection connection = new XMPPTCPConnection(connConfig.build()); 
    try { 
     connection.connect(); 
     Log.i("XMPPChatDemoActivity", "[SettingsDialog] Connected to "+connection.getHost()); 
    } catch (XMPPException ex) { 
     Log.e("XMPPChatDemoActivity", "[SettingsDialog] Failed to connect to "+ connection.getHost()); 
     Log.e("XMPPChatDemoActivity", ex.toString()); 
     setConnection(null); 
    } 
    catch(SmackException ex){ 
     Log.e("XMPPChatDemoActivity", "[SettingsDialog] Failed to connect to "+ connection.getHost()); 
     Log.e("XMPPChatDemoActivity", ex.toString()); 
     setConnection(null); 
    } 
    catch(IOException ex){ 
     Log.e("XMPPChatDemoActivity", "[SettingsDialog] Failed to connect to "+ connection.getHost()); 
     Log.e("XMPPChatDemoActivity", ex.toString()); 
     setConnection(null); 
    } 

Je reçois java.lang.ExceptionInInitializeError

sur cette ligne

XMPPTCPConnectionConfiguration.Builder connConfig = XMPPTCPConnectionConfiguration.builder(); // ligne 184

Voici la pile complète trace:

FATAL EXCEPTION: Thread-120 
java.lang.ExceptionInInitializerError 
at com.example.samsungchatexample.MainActivity$4.run(MainActivity.java:184) 
at java.lang.Thread.run(Thread.java:856) 
Caused by: java.lang.ExceptionInInitializerError 
at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96) 
at org.jivesoftware.smack.ConnectionConfiguration.<clinit>(ConnectionConfiguration.java:38) 

Caused by: java.lang.ExceptionInInitializerError 
at java.lang.Class.classForName(Native Method) 
at java.lang.Class.forName(Class.java:217) 
at org.jivesoftware.smack.SmackInitialization.loadSmackClass(SmackInitialization.java:213) 
at org.jivesoftware.smack.SmackInitialization.parseClassesToLoad(SmackInitialization.java:193) 
at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:163) 
at org.jivesoftware.smack.SmackInitialization.processConfigFile(SmackInitialization.java:148) 
at org.jivesoftware.smack.SmackInitialization.<clinit>(SmackInitialization.java:116) 

Caused by: java.lang.NoClassDefFoundError: javax.naming.directory.InitialDirContext 
at org.jivesoftware.smack.util.dns.javax.JavaxResolver.<clinit>(JavaxResolver.java:50) 

Quelqu'un peut-il m'aider s'il vous plaît avec ceci? J'ai testé cela sur KitKat et JellyBean Même exception sur les deux, ce n'est pas un problème avec le contexte des versions du système d'exploitation. Qu'est-ce que je rate ?

+1

Avez-vous corrigé le problème? moi-même obtenir la même erreur – Ahmad

+0

Changer le nom d'utilisateur de [email protected] à myemail. – anshad

+0

@anshad il ne fonctionne toujours pas –

Répondre

2

Je rencontre un problème lors de l'établissement d'une connexion à l'aide de SMACK 4.1. Lorsque j'ai inclus toutes ces bibliothèques mentionnées ci-dessous, j'ai réussi à établir une connexion. Essayez-le :) J'espère que vous réussirez.

  1. jxmpp-core-0.4.1
  2. jxmpp-util-cache-0.4.1
  3. minidns-0.1.1
  4. claque-androïde-4.1.0.jar
  5. smack- Applications-extensions-4.1.0
  6. claque-core-4.1.0
  7. smack-extensions-4.1.0
  8. claque-im-4.1.0
  9. smack-tcp-4.1.0
+0

pouvez-vous poster votre code source pour la connexion? et avez-vous réalisé ci-dessus dans Android? –

+0

@Sharp bord .... Oui, je suis en mesure d'établir une connexion avec le serveur et connecté avec succès ... :) Ceci est le lien de ma question dans laquelle j'ai posté mon code source et vous pouvez l'obtenir :) http://stackoverflow.com/questions/29755230/smack-4-1-sasl-authentication-error/29769292#29769292 –