Uwp 获取呼叫历史记录只返回最近20个日志

Uwp 获取呼叫历史记录只返回最近20个日志,uwp,win-universal-app,windows-10-mobile,Uwp,Win Universal App,Windows 10 Mobile,PhoneCallHistoryStore store=等待PhoneCallHistoryStoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesLimitedReadWrite); PhoneCallHistoryEntryQueryOptions=new PhoneCallHistoryEntryQueryOptions(){DesiredMedia=PhoneCallHistoryEntryQuer

PhoneCallHistoryStore store=等待PhoneCallHistoryStoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesLimitedReadWrite);
PhoneCallHistoryEntryQueryOptions=new PhoneCallHistoryEntryQueryOptions(){DesiredMedia=PhoneCallHistoryEntryQueryDesiredMedia.All};
PhoneCallHistoryEntryReader=store.GetEntryReader(选项);
var logs=await reader.ReadBatchAsync();
此处
记录。计数始终为20


如何获取所有日志?

是的,这是正确的行为。在方法的名称中,您可以看到
批处理
。这意味着你参加了部分通话(20项)。要获取所有呼叫,请使用以下代码:

PhoneCallHistoryStore store=等待PhoneCallHistoryStoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesLimitedReadWrite);
PhoneCallHistoryEntryQueryOptions=new PhoneCallHistoryEntryQueryOptions(){DesiredMedia=PhoneCallHistoryEntryQueryDesiredMedia.All};
PhoneCallHistoryEntryReader=store.GetEntryReader(选项);
var phoneCallHistoryEntries=新列表();
var hasItems=true;
做
{
var logs=await reader.ReadBatchAsync();
AddRange(日志);
hasItems=日志。计数>0;
}
while(hassitems);

非常感谢您的确认。实际上我已经试过再次打电话了,但不知道我是如何再次得到同样的结果的。读完你的答案后,我又试了一次,结果成功了。