1

使用连接管理器很容易查看是否有连接,但是如果以太网和 WIFI 同时连接,它似乎总是报告 WIFI 已连接。

我想知道我是否有联系,还想知道具体是什么联系。例如仅以太网?以太网和WIFI?只有WIFI?没有什么?

这在Android中可能吗?

我有一个需要首选以太网的应用程序(此时它需要禁用 WIFI),但如果以太网不可用(作为备份)则使用 WIFI。

我可以让它在网络更改事件上工作,但在应用程序启动时两者都连接时不能 - 在这种情况下,它不知道断开 WIFI。

编辑:这不是一个真正的问题解决方案,但我已经通过基本上关闭 WIFI 以检查以太网然后重新打开它(如果它之前打开)来解决它。不理想,但据我所知,这是唯一的选择。

4

1 回答 1

0

检查这个

void chkStatus() {
    final ConnectivityManager connMgr = (ConnectivityManager)
    this.getSystemService(Context.CONNECTIVITY_SERVICE);
    final android.net.NetworkInfo wifi = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    final android.net.NetworkInfo mobile = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    if (wifi.isConnectedOrConnecting ()) {
        Toast.makeText(this, "Wifi", Toast.LENGTH_LONG).show();
    } else if (mobile.isConnectedOrConnecting ()) {
        Toast.makeText(this, "Mobile 3G ", Toast.LENGTH_LONG).show();
    } else {
        Toast.makeText(this, "No Network ", Toast.LENGTH_LONG).show();
    }
}
于 2018-03-08T03:42:23.270 回答