Xamarin.Essentials:Kontakty
Třída Kontakty umožňuje uživateli vybrat kontakt a načíst o něm informace.
Pokud chcete začít používat toto rozhraní API, přečtěte si úvodní příručkuXamarin.Essentials, abyste měli jistotu, že je knihovna správně nainstalovaná a nastavená ve vašich projektech.
Pro přístup k funkcím Kontakty se vyžaduje následující nastavení specifické pro danou platformu.
Oprávnění ReadContacts
je povinné a musí být nakonfigurováno v projektu Android. Můžete ho přidat následujícími způsoby:
Otevřete soubor AssemblyInfo.cs ve složce Vlastnosti a přidejte:
[assembly: UsesPermission(Android.Manifest.Permission.ReadContacts)]
NEBO Aktualizovat manifest Androidu:
Otevřete soubor AndroidManifest.xml ve složce Vlastnosti a do uzlu manifestu přidejte následující kód.
<uses-permission android:name="android.permission.READ_CONTACTS" /> />
Nebo klikněte pravým tlačítkem na projekt Androidu a otevřete vlastnosti projektu. V části Manifest pro Android vyhledejte požadovaná oprávnění: oblast a zkontrolujte toto oprávnění. Tím se automaticky aktualizuje soubor AndroidManifest.xml .
Zavoláním Contacts.PickContactAsync()
dialogového okna kontaktu se zobrazí a umožní uživateli přijímat informace o uživateli.
try
{
var contact = await Contacts.PickContactAsync();
if(contact == null)
return;
var id = contact.Id;
var namePrefix = contact.NamePrefix;
var givenName = contact.GivenName;
var middleName = contact.MiddleName;
var familyName = contact.FamilyName;
var nameSuffix = contact.NameSuffix;
var displayName = contact.DisplayName;
var phones = contact.Phones; // List of phone numbers
var emails = contact.Emails; // List of email addresses
}
catch (Exception ex)
{
// Handle exception here.
}
ObservableCollection<Contact> contactsCollect = new ObservableCollection<Contact>();
try
{
// cancellationToken parameter is optional
var cancellationToken = default(CancellationToken);
var contacts = await Contacts.GetAllAsync(cancellationToken);
if (contacts == null)
return;
foreach (var contact in contacts)
contactsCollect.Add(contact);
}
catch (Exception ex)
{
// Handle exception here.
}