我使用ContactPicker挑选一些联系人并通过SQLite保存在我的应用中。 1.如果在手机的People应用程序中更改姓名或电话号码,如何与我的应用程序同步? 2.或者你有一个最好的方式来选择联系人,保存和自动同步应用程序,请建议我!
答案 0 :(得分:1)
如果要访问Windows 10设备上的联系人,可以使用以下代码:
var contactStore = await ContactManager.RequestStoreAsync(ContactStoreAccessType.AppContactsReadWrite);
var contactLists = await contactStore.FindContactListsAsync();
foreach (var cl in contactLists)
{
var cReader = cl.GetContactReader();
var cBatch = await cReader.ReadBatchAsync();
foreach (Contact c in cBatch.Contacts)
{
//Make a change
c.Notes = c.Notes + c.DisplayName;
await cl.SaveAsync();
}
}
但这只允许访问应用拥有的联系人。您可以将ContactStoreAccessType.AppContactsReadWrite更改为ContactStoreAccessType.AllContactsReadWrite,但这需要Microsoft按照此处所述进行特殊部署:https://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.contacts.contactstoreaccesstype.aspx。
我使用Office 365,您的联系人也可以访问并更改为在线Outlook。在这种情况下,使用graph.microsoft.com API同步到Office 365会更有意义(参见http://graph.microsoft.io)。更改将自动同步到您的设备。