public static async Task Initialize() { DeviceInformationCollection devices; CallManager = await CallManager.GetSystemPhoneCallManagerAsync(); CallStore = await PhoneCallManager.RequestStoreAsync(); CallHistoryStore = await PhoneCallHistoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesReadWrite); devices = await DeviceInformation.FindAllAsync(ProximitySensor.GetDeviceSelector()); ProximitySensor = devices.Count > 0 ? ProximitySensor.FromId(devices.First().Id) : null; VibrationAccessStatus accessStatus = await VibrationDevice.RequestAccessAsync(); if (accessStatus == VibrationAccessStatus.Allowed) { VibrationDevice = await VibrationDevice.GetDefaultAsync(); } try { DefaultLine = await PhoneLine.FromIdAsync(await CallStore.GetDefaultLineAsync()); } catch { } Initialized = true; }
public async Task <bool> RequestCallHistoryAccess() { try { CallHistory = !(await PhoneCallHistoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesReadWrite) is null); } catch { CallHistory = null; } return(CallHistory.HasValue); }
private async Task InitializateCallSystem() { CallManager = await CallManager.GetCallManagerAsync(); CallStore = await PhoneCallManager.RequestStoreAsync(); CallHistoryStore = await PhoneCallHistoryManager.RequestStoreAsync(PhoneCallHistoryStoreAccessType.AllEntriesReadWrite); CallHandler = new CallHandler(); CallHandler.Start(); CallManager.CallAppeared += CallManager_CallAppeared; }