public List<GenericContact> GetContacts() { var contactsStore = ContactManager.RequestStoreAsync().GetResults(); var contacts = contactsStore.FindContactsAsync().GetResults(); var genericContacts = new List<GenericContact>(); foreach (var contact in contacts) { var genericContact = new GenericContact { Nome = contact.FullName, Numero = contact.Phones?.FirstOrDefault()?.Number ?? string.Empty }; genericContacts.Add(genericContact); } return genericContacts; }
public List<GenericContact> GetContacts() { var genericContacts = new List<GenericContact>(); var activity = Mvx.Resolve<IMvxAndroidCurrentTopActivity>().Activity; var cr = activity.ContentResolver; var cur = cr.Query(ContactsContract.Contacts.ContentUri, null, null, null, null); if (cur.Count > 0) { while (cur.MoveToNext()) { // read id var id = cur.GetString(cur.GetColumnIndex(ContactsContract.Contacts.InterfaceConsts.Id)); // read names var displayName = cur.GetString(cur.GetColumnIndex(ContactsContract.Contacts.InterfaceConsts.DisplayName)); // Phone Numbers var pCur = cr.Query(ContactsContract.CommonDataKinds.Phone.ContentUri, null, ContactsContract.CommonDataKinds.Phone.InterfaceConsts.ContactId + " = ?", new string[] { id }, null); while (pCur.MoveToNext()) { var number = pCur.GetString(pCur.GetColumnIndex(ContactsContract.CommonDataKinds.Phone.Number)); //var typeStr = pCur.GetString(pCur.GetColumnIndex(ContactsContract.CommonDataKinds.Phone.ContentType)); var genericContact = new GenericContact { Nome = displayName, Numero = number }; genericContacts.Add(genericContact); } pCur.Close(); } } return genericContacts; }