|
在Windows Phone 7.0版本的API里面对用户手机上的信息基本上是不提供给开发者使用,不过还好在芒果更新里面,我们已经看到了微软正在渐渐地开放这些接口,在7.1版本的API里面多了命名空间Microsoft.Phone.UserData,在这个空间下提供了手机系统用户通讯录和日历数据操作的API,我相信微软在未来会在该空间下开放更多的接口来操作用户的数据,下面来看一下Microsoft.Phone.UserData空间下的类,主要包含了Contacts, Contact, Appointments和Appointment这四个类,Contacts类允许你去查询用户的联系人数据,并且可以返回一个Contact类的集合,Appointments类允许你去查询用户的日程安排数据,并且可以返回一个Appointment类的集合。
下面是从官方网站翻译的Microsoft.Phone.UserData空间下类,属性等信息,仅供参考,详细信息请查阅MSDN。
类
|
说明
|
Account
|
用户在手机上设置的提供联系人信息的账号类型,例如Facebook ,Microsoft Outlook等等。
|
Appointment
|
系统日程安排的类。
|
Appointments
|
提供了操作手机系统日常安排的类。
|
AppointmentsSearchEventArgs
|
提供SearchCompleted事件返回数据的类。
|
Attendee
|
包含了日程安排出席的信息类。
|
CompleteName
|
包含了联系人姓名信息的类。
|
Contact
|
通讯录类,包含了通讯录所有可用的信息。
|
ContactAddress
|
包含了联系人地址信息的类。
|
ContactCompanyInformation
|
包含了联系人公司信息的类。
|
ContactEmailAddress
|
包含了联系人邮件信息的类。
|
ContactPhoneNumber
|
包含了联系人电话号码信息的类。
|
Contacts
|
通讯录类,提供了操作用户手机通讯录联系人的事件和方法。
|
ContactsSearchEventArgs
|
提供SearchCompleted事件返回信息的类。
|
PhoneDataSharingContext
|
数据共享的基类。
|
枚举
|
说明
|
AddressKind
|
地址的种类。
|
AppointmentStatus
|
日程安排的状态。
|
EmailAddressKind
|
邮件地址的种类。
|
FilterKind
|
通讯录搜索的种类。
|
PhoneNumberKind
|
电话号码的种类。
|
StorageKind
|
用户通讯录和日程安排的数据提供源的种类。
|
Contact类的属性
属性名字
|
说明
|
Accounts
|
联系人的来源账号。
|
Addresses
|
联系人地址。
|
Birthdays
|
联系人的生日。
|
Children
|
联系人关联的子类别。
|
Companies
|
联系人的公司
|
CompleteName
|
联系人的完整名称。
|
DisplayName
|
联系人在通讯录的显示名称。
|
EmailAddresses
|
联系人的邮箱地址,枚举模板类型
|
IsPinnedToStart
|
联系人是否在手机主屏幕上显示。
|
Notes
|
联系人备注信息。
|
PhoneNumbers
|
联系人的电话号码。
|
SignificantOthers
|
联系人的其他关联信息。
|
Websites
|
联系人的网站。
|
Contacts类的属性
Accounts 获取通讯录关联的账号。
BaseUri
事件
SearchCompleted 搜索通讯录的事件。
方法
SearchAsync 异步搜索通讯录。
Appointment类属性
属性名字
|
说明
|
Account
|
来源账号。
|
Attendees
|
日程安排出席的活动事项
|
Details
|
活动的内容
|
EndTime
|
结束时间
|
IsAllDayEvent
|
是否全天活动
|
IsPrivate
|
是否私人活动
|
Location
|
地点
|
Organizer
|
组织者
|
StartTime
|
开始时间
|
Status
|
状态
|
Subject
|
标题
| 下面用一个例子来测试一下获取手机用户的通讯录的信息。
MainPage.xaml文件
MainPage.xaml.cs文件
using Microsoft.Phone.Controls;
using Microsoft.Phone.UserData;
namespace contactstest
{
public partial class MainPage : PhoneApplicationPage
{
private Contacts contacts;
public MainPage()
{
InitializeComponent();
contacts = new Contacts();
contacts.SearchCompleted += contacts_SearchCompleted;
contacts.SearchAsync("", FilterKind.DisplayName, "查询联系人");
}
//通讯录搜索完成事件处理
void contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
ContactResultsData.DataContext = e.Results;
}
}
}
运行的效果:
|
|
|