Я использую плагин contact_service для обновления контактов пользователей в моем приложении Flutter.
Когда я обновляю старый контакт, ошибок не возникает, но номер телефона удаляется из списка контактов.
вот мой код модификации.
коду просто нужно изменить номера телефонов, новый номер находится в переменной ModifiedNumber
void _updateSelectedContacts() {
setState(() {
for (var contact in contacts) {
final id = contact.identifier ?? contact.displayName ?? '';
if (selectedContacts[id] == true) {
final updatedPhones = contact.phones?.map((phone) {
final modifiedNumber = modifyBeninNumber(phone.value ?? "");
return Item(label: phone.label, value: modifiedNumber);
}).toList();
if (updatedPhones != null) {
contact.phones = updatedPhones;
print(contact.displayName);
// update contact
ContactsService.updateContact(contact);
}
}
}
// remove selected contact
selectedContacts.updateAll((key, value) => false);
_selectAll = false;
});
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Contacts updated successfully!')),
);
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... ts-service