检索 UWP 中的最后一个通话记录条目

Retrieve last call history entry in UWP

我想检索 Windows 10 移动应用程序 (UWP) 中的最后一个通话记录条目,我可以使用如下所示的高成本方法来完成。

PhoneCallHistoryStore phoneCallHistoryStore = await PhoneCallHistoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesLimitedReadWrite);
PhoneCallHistoryEntryReader phoneCallHistoryEntryReader = phoneCallHistoryStore.GetEntryReader();
IReadOnlyList<PhoneCallHistoryEntry> phoneCallHistoryEntries = await phoneCallHistoryEntryReader.ReadBatchAsync();
PhoneCallHistoryEntry lastPhoneCallHistoryEntry = phoneCallHistoryEntries.FirstOrDefault();

如您所知并在 中描述,这种方法每个 运行 检索 20 个调用,而我只想要最后一个调用,所以我认为我为此付出了高昂的代价,我检索了 19不必要的调用。

有没有更好的方法?

一次获得 "batch" 个调用是获得条目的唯一方法。如果您认为该方法太慢,您可以通过反馈中心的 "Developer" 类别提供反馈。但是在你决定它太慢之前,你需要为你的场景定义 "fast enough" 是什么,然后使用分析器根据你的目标衡量代码,并验证它是由这个 API 引起的缓慢(与别的东西)。