Xamarin Essentials - Connectivity.NetworkAccess неверен на Пикселе 3?

У меня есть функция, подобная этой:

private bool IsConnected()
{
    if (DeviceInfo.DeviceType == DeviceType.Unknown)
        return false;

    var current = Connectivity.NetworkAccess;

    if (current == NetworkAccess.Internet)
        return true;

    return false;
}

Мои товарищи по команде сообщили об отсутствии проблем с этой функцией и используют различные устройства. Мое личное устройство - Google Pixel 3, использующее Google Fi и Google VPN. Когда я переключаю его в режим полета, я вижу Connectivity.NetworkAccess установлен в NetworkAccess.None, Однако, когда я выхожу из режима самолета и явно отключаю Mobile Data и Wifi, я вижу Connectivity.NetworkAccess установлен в NetworkAccess.Internet,

В связи с этим, Connectivity.ConnectionProfiles сообщает один профиль: ConnectionProfile.Unknown,

Это ожидаемое поведение? Должен ли я проверить комбинацию Connectivity.ConnectionProfiles так же как Connectivity.NetworkAccess в попытке определить, действительно ли устройство подключено к сети?

1 ответ

Если вы не можете получить доступ к Интернету, а Connectivity.NetworkAccess - это NetworkAccess.Internet, то это не ожидаемое поведение.

Вы можете отправить вопрос на их github: https://github.com/xamarin/Essentials/issues

Другие вопросы по тегам