当我尝试使用Contacts.SearchAsync访问Windows Phone 7中的联系人列表时,我会收到手机上所有联系人的列表。
但是,通过PhoneNumber属性(ContactPhoneNumber列表)进行迭代,它不包含来自facebook的任何电话号码......
即,如果联系人在“人员”中心有两个号码,一个是手动添加到手机或通过直播,另一个是直接从Facebook集成,则facebook电话号码不会显示在联系人的电话号码列表。
有关如何检索Facebook联系电话号码的任何想法?
这是我的代码:
public MainPage()
{
Contacts myContacts = new Contacts();
myContacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(myContacts_SearchCompleted);
myContacts.SearchAsync(String.Empty, FilterKind.None, "");
}
void myContacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
List<Contact> myContacts = e.Results.ToList<Contact>();
int numbers = myContacts[1].PhoneNumbers.Count(); //Returns 0 if the contact was from facebook, returns 1 if the contact had a number from Live.
}
}
答案 0 :(得分:2)
我很确定操作系统会故意限制此操作,您需要将其作为user voice site上的功能请求。您通常无法从Facebook API访问朋友的电话号码(即使您创建了自己的Facebook应用程序),所以我猜Facebook让Microsoft限制从第三方应用程序访问这些值。