在C#上的Windows Phone 8.1上向人员添加联系人

有没有办法将我的应用程序中的联系人添加到Windows Phone 8.1上的People应用程序? 我查看了Contact类下的不同内容,似乎没有任何工作。 有不同的方法(如ContactManager,ContactPicket等)来检索数据但似乎没有任何东西允许我添加新的联系人,因为大多数东西,如Microsoft.Phone.Tasks中的SaveContactTask都没有在WP 8.1上实现。

J.

您没有对Windows Phone 8上的主要联系人存储的写入权限,但您可以为应用程序创建自己的联系人存储 ,您可以使用该联系存储来管理在您自己的应用程序中创建的联系人。

机制非常简单:

using Windows.Phone.PersonalInformation; public async void addPerson() { var store = await ContactStore.CreateOrOpenAsync(); var contact = new StoredContact(store) { DisplayName = "Mike Peterson" }; var props = await contact.GetPropertiesAsync(); props.add(KnownContactProperties.Email, "mike@peterson.com"); props.add(KnownContactProperties.MobileTelephone, "+1 212 555 1234"); await contact.SaveAsync(); } 

要通知操作系统您提供的联系信息,您需要将ID_CAP_CONTACTS / Contactsfunction添加到您的应用程序(在appxmanifest的function部分)。 在移除应用程序之前,联系人将保留

由应用联系人拥有的私有版本可方便地为应用提供“联系”数据。