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 ?
Avez-vous corrigé le problème? moi-même obtenir la même erreur – Ahmad
Changer le nom d'utilisateur de [email protected] à myemail. – anshad
@anshad il ne fonctionne toujours pas –