2013-01-08 11 views

risposta

7

ho trovato la risposta:

UserSearchManager search = new UserSearchManager(mXMPPConnection); 
Form searchForm = search 
    .getSearchForm("search." + mXMPPConnection.getServiceName()); 

Form answerForm = searchForm.createAnswerForm(); 
answerForm.setAnswer("Username", true); 
answerForm.setAnswer("search", user); 
ReportedData data = search 
    .getSearchResults(answerForm, "search." + mXMPPConnection.getServiceName()); 

if (data.getRows() != null) { 
    for (ReportedData.Row row: data.getRows()) { 
     for (String value: row.getValues("jid")) { 
      Log.i("Iteartor values......", " " + value); 
     } 
    } 
    Toast.makeText(_service, "Username Exists", Toast.LENGTH_SHORT).show(); 
} 

se Server non ha alcun entery con quel nome specificato allora Itearator non ha alcun valore e il codice non andrà dentro mentre (it.hasNext) ..

+1

Nota che la sessione di connessione xmpp deve essere autorizzata per prima. Ad esempio, se stai registrando un nuovo account, non puoi utilizzare questo metodo per verificare la disponibilità del nome utente. –

+1

@nitin tyagi answerForm.setAnswer ("Nome utente", vero); In questo caso, qual è il valore dell'utente in answerForm.setAnswer ("cerca", utente); Si tratta di username o altro. – Mahi

+0

@ MahiSingh sai già se l'utente è il nome utente o il jabberid? – Tijme

Problemi correlati