Xamarin.Essentials:接觸
Contacts 類別可讓使用者挑選聯繫人,並擷取其相關信息。
開始使用
若要開始使用此 API,請閱讀 入門指南Xamarin.Essentials,以確保連結庫已正確安裝並設定在您的專案中。
若要存取 聯繫人 功能,需要下列平臺特定設定。
需要 ReadContacts
權限,而且必須在 Android 專案中設定。 能以下列方式新增:
開啟 [Properties] 資料夾下的 AssemblyInfo.cs 檔案並新增:
[assembly: UsesPermission(Android.Manifest.Permission.ReadContacts)]
或更新 Android 資訊清單:
開啟 [Properties] 資料夾下的 AndroidManifest.xml 檔案並在 [manifest] 節點內新增下列內容。
<uses-permission android:name="android.permission.READ_CONTACTS" /> />
禍以滑鼠右鍵按一 Android 專案並開啟專案的屬性。 在 [Android 指令清單] 下,尋找 [必要許可權:] 區域,並檢查此許可權。 這將會自動更新 AndroidManifest.xml 檔案。
挑選聯繫人
藉由呼叫 Contacts.PickContactAsync()
聯繫人對話框,將會出現,並允許使用者接收使用者的相關信息。
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.
}