Исключение из HRESULT: 0xD0000033 при попытке чтения батареи Airpod pro - PullRequest
1 голос
/ 18 июня 2020

Я пытаюсь узнать время автономной работы air pods pro с помощью приложения UWP и получаю странную ошибку исключения Exception from HRESULT: 0xD0000033 без дополнительной информации. Ниже вы можете найти источник:

private async Task GetBLDevices()
{
    DeviceInformationCollection ConnectedBluetoothDevices = await DeviceInformation.FindAllAsync(
                                                                    BluetoothDevice.GetDeviceSelectorFromConnectionStatus(BluetoothConnectionStatus.Connected));
    if (ConnectedBluetoothDevices == null || ConnectedBluetoothDevices.Count == 0)
        return;

    foreach (DeviceInformation connectedDevice in ConnectedBluetoothDevices)
    {
        if (connectedDevice.Name == "AirPods Pro")
            GetBatteryReport(connectedDevice.Id);
    }
}

private async void GetBatteryReport(string deviceId)
{
    try
    {
        // Create aggregate battery object
        var aggBattery = await Battery.FromIdAsync(deviceId);

        // Get report
        var report = aggBattery.GetReport();
    }
    catch (Exception ex)
    {

    }
}

1 Ответ

1 голос
/ 19 июня 2020

Производный от официального документа , Battery.FromIdAsync используется для получения объекта Battery , который представляет отдельный контроллер батареи, подключенный к устройству. Однако идентификатор Bluetooth не представляет собой контроллер батареи. И в настоящее время нет такого API, который можно было бы использовать для определения уровня заряда батареи bluetooth. Если вам действительно нужна эта функция, опубликуйте свои требования с помощью windows приложения концентратора обратной связи.

...