我目前正在使用可达性来检测可用的连接。当什么都没有或有良好的连接时,这很有效。但是,如果我的用户在飞机上拥有自己的 wifi 节点,但没有连接到整个互联网怎么办?我的用户将在 wifi 开启的情况下处于飞行模式,并且 Reachability 会感到困惑——它告诉我她已连接,但她的连接不足以进行我的 HTTP 调用。
可达性检测到 wifi,但不够精细或不够精细,无法确定 wifi 是否真的提供对互联网的访问。当尝试连接到 wifi 但没有正确的凭据进行授权时,这也可能发生在咖啡馆或办公室。
是否可以检测 wifi 节点是否要求提供凭据?我是否需要进行 HTTP 调用来检查真正的连接性?有没有更聪明的方法来解决这个问题?