I am new to xmpp/asmack in android.
Can anyone please help me in getting the presence of the user\'s friends ( roster list)
I am using this :
roster.addRosterListener(new RosterListener() {
public void entriesAdded(Collection param) {}
public void entriesDeleted(Collection addresses) {
}
public void entriesUpdated(Collection addresses) {
}
public void presenceChanged(Presence presence) {
String user = presence.getFrom();
Presence bestPresence = roster.getPresence(user);
Log.d(TAG, "BestPresence: " + user + ": " + bestPresence);
String[] temp = presence.getFrom().split("\\@");
Log.d(TAG, "Presence: " + temp[0] + "-" + presence.toString());
String status = presence.toString();
// ShowInfoDialog(temp[0]+"is "+status);
for (int i = 0; i < friendslist.size(); i++) {
if (temp[0].equalsIgnoreCase(friendslist.get(i).getName())) {
friendslist.get(i).setStatus(status);
Log.d(TAG, "kilepet/belepet " + friendslist.get(i).getName() + " - " + friendslist.get(i).getStatus());
// ShowInfoDialog(friendslist.get(i).getName()+"is "+status);
Log.d(TAG, "WATERFAK");
}
}
}
If you use RosterListener, it updates the presence in real time, it works for me just fine.