WP8.1检索联系信息 - 性能问题

时间:2014-12-08 07:24:03

标签: c# performance silverlight windows-runtime windows-phone-8.1

信息
我正在尝试为Windows Phone创建一个快速加载的联系人应用程序。我遇到的最大问题是初始启动时间。默认人员中心启动相当快,而我创建的所有内容都需要3到12秒。

据我所知,在Windows Phone 8.1中有两种主要的方法来检索联系人信息。第一个是使用Silverlight,它将创建一个Contacts对象并进行搜索。第二个是使用WinRT,从ContactManager创建一个ContactStore并找到联系人。

我尝试了420个联系人的两种方法,并记录了时间(使用秒表对象),以便从下面的代码中检索联系人。

数据
为了收集这些结果,我在调试模式下运行了Lumia 1020.

Contacts cons = new Contacts();
cons.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(Contacts_SearchCompleted);
cons.SearchAsync(String.Empty, FilterKind.None, "Retrieve Contacts");

2456毫秒

ContactStore store = await ContactManager.RequestStoreAsync();
test = await store.FindContactsAsync();
contacts = test.ToList();

9715毫秒

问题

  1. 为什么Silverlight方法能够更快地检索联系人 比WinRT方法?什么基础组件阻碍了 WinRT方法的性能?

  2. 我能做些什么吗? 提高其性能(最好是WinRT,因为它 似乎是更具未来性的证据之一?)

0 个答案:

没有答案