Bagikan melalui


Xamarin.Essentials:Kontak

Kelas Kontak memungkinkan pengguna memilih kontak dan mengambil informasi tentangnya.

Memulai

Untuk mulai menggunakan API ini, baca panduan memulai untuk Xamarin.Essentials memastikan pustaka diinstal dan disiapkan dengan benar di proyek Anda.

Untuk mengakses fungsionalitas Kontak , diperlukan penyiapan spesifik platform berikut.

Izin ReadContacts diperlukan dan harus dikonfigurasi dalam proyek Android. Ini dapat ditambahkan dengan cara berikut:

Buka file AssemblyInfo.cs di bawah folder Properti dan tambahkan:

[assembly: UsesPermission(Android.Manifest.Permission.ReadContacts)]

ATAU Perbarui Manifes Android:

Buka file AndroidManifest.xml di bawah folder Properti dan tambahkan yang berikut ini di dalam node manifes.

<uses-permission android:name="android.permission.READ_CONTACTS" /> />

Atau klik kanan pada proyek Android dan buka properti proyek. Di bawah Manifes Android, temukan area Izin yang diperlukan: dan periksa izin ini. Ini akan secara otomatis memperbarui file AndroidManifest.xml .

Pilih kontak

Dengan memanggil Contacts.PickContactAsync() dialog kontak akan muncul dan memungkinkan pengguna untuk menerima informasi tentang pengguna.

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.
}

Mendapatkan semua kontak

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.
}

Perbedaan platform

  • Parameter cancellationToken dalam GetAllAsync metode ini hanya digunakan pada UWP.

API