in quickblock sample chat, trying to add block and unblock for user 1-1 was unable to include ALL of the desired items .Only one user was adding to list always this is my code
privacyListsManager = QBChatService.getInstance().getPrivacyListsManager();
privacyListsManager.addPrivacyListListener(privacyListListener);
privacyListsManager.setPrivacyListAsActive("public");
QBPrivacyList list_all = null;
try {
list_all = privacyListsManager.getPrivacyList("public");
Log.e("lists", "privacyCheck: " + list_all + list_all.getItems());
privacyListsManager.setPrivacyList(list_all);
} catch (SmackException.NotConnectedException e) {
e.printStackTrace();
} catch (XMPPException.XMPPErrorException e) {
e.printStackTrace();
} catch (SmackException.NoResponseException e) {
e.printStackTrace();
}
and on click of block, private void blockUser() {
List<Integer> userIds = qbChatDialog.getOccupants();
Log.e("userid ", "blockUser: " + id);
QBPrivacyList list = new QBPrivacyList();
list.setName("public");
ArrayList<QBPrivacyListItem> items = new ArrayList<QBPrivacyListItem>();
QBPrivacyListItem item1 = new QBPrivacyListItem();
item1.setAllow(false);
item1.setType(QBPrivacyListItem.Type.USER_ID);
item1.setValueForType(String.valueOf(id));
items.add(item1);
list.setItems(items);
try {
privacyListsManager.setPrivacyList(list);
privacyListsManager.setPrivacyListAsDefault("public");
} catch (SmackException.NotConnectedException e) {
e.printStackTrace();
} catch (XMPPException.XMPPErrorException e) {
e.printStackTrace();
} catch (SmackException.NoResponseException e) {
e.printStackTrace();
}
privacyListListener = new QBPrivacyListListener() {
@Override
public void setPrivacyList(String listName, List<QBPrivacyListItem> listItem){
Log.e("block", "setPrivacyList: " );
}
@Override
public void updatedPrivacyList(String listName) {
Log.e("unblock", "setPrivacyList: " );
}
};
}
The problem is `QBPrivacyList always used to be override with the block click values but I want the previous data to be saved.