0

据我所知,有两种方法可以在 Windows phone 8 上获取联系人。您可以在其类和方法中使用 Windows.Phone.UserData,也可以在其类和方法中使用 Windows.Phone.PersonalInformation 及其类和方法。使用 UserData 我没有问题,我可以轻松获得任何可用的内容,但您只有只读访问权限。所以这就是为什么我使用 PersonalInformation 对联系人进行写访问,哪种工作正常但问题是来自 PersonalInformation 和 UserData 的数据不能轻易地相互转换,它们甚至有不同的信息。从我发现 PersonalInformation 看起来更好的选择,因为它有 ToVcardAsync 和 ParseVcardAsync 方法,还有我需要正确操作联系人的 Id 和 remoteId 字段。我的问题是我无法从 PersonalInformation 获取有关联系人的信息。

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207024%28v=vs.105%29.aspx

但是当我尝试仅使用默认设置查询联系人时,我没有得到零联系人,正如我之前提到的,如果我使用 UserData,我会毫无问题地获得有关所有联系人的所有信息。我已经为联系人设置了 id 功能。请帮忙谢谢。

编辑:经过一些测试,我发现从 PersonalInformation 通过查询我只能获得我已经通过 ContactStore 和 StoredContact 插入的联系人。像这样插入将使用执行此操作的应用程序命名的新帐户创建联系人。所以我只得到这个新帐户的联系人。我仍然无法获得与其他帐户的任何其他联系人,例如在电话中手动创建或与支持的帐户之一同步。

此外,通过重新安装应用程序,所有通过 ContactStore 和 StoredContact 保存的联系人都会消失。这有点奇怪。

4

1 回答 1

2

我不完全清楚你的问题是什么,但不可能写到由应用程序创建的其他联系人商店。正如您所说,当应用程序被卸载时,这将被删除。

您不能在“默认”联系人存储中编辑联系人,只能读取一些基本数据(姓名、号码、图像),请参阅此

于 2013-05-23T15:01:42.797 回答