2013-01-08 8 views

Odpowiedz

7

Znalazłem odpowiedź:

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(); 
} 

jeśli serwer nie ma żadnego entery z tej podanej nazwie następnie Itearator ma żadnej wartości, a kod nie będzie wejść do środka, podczas gdy (it.hasNext) .. Uwaga

+1

że sesja połączenia xmpp musi być najpierw autoryzowana. Na przykład - jeśli rejestrujesz nowe konto - nie możesz użyć tej metody do sprawdzenia dostępności nazwy użytkownika. –

+1

@nitin tyagi answerForm.setAnswer ("Username", true); W takim przypadku jaka jest wartość użytkownika w answerForm.setAnswer ("szukaj", użytkownik); To nazwa użytkownika lub inna. – Mahi

+0

@MahiSingh Czy wiesz już, czy użytkownik jest nazwą użytkownika lub Jabberid? – Tijme

Powiązane problemy