asmack をライブラリとして使用し、Android プラットフォームでチャット アプリケーションを作成しています。名簿に友達を追加する前に、友達がサーバーに存在するかどうかを確認する方法はありますか?
6059 次
1 に答える
7
私は答えを見つけました:
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();
}
サーバーにその指定された名前のエントリがない場合、イテレータには値がなく、コードは while(it.hasNext)..
于 2013-01-08T12:05:37.370 に答える