如何仅通过wifi强制执行互联网连接?

时间:2019-03-28 11:57:40

标签: android android-wifi android-9.0-pie

我们有一个Wifi连接设备。我们需要通过wifi连接到设备进行安装。连接后,应用程序通过ip发送请求。

这在android 9之前可以正常工作。但是当我使用android 9时遇到一些问题。因为当我连接到设备时,我收到如下错误消息:wi-fi没有互联网访问权限。并且请求继续针对移动数据。因此,应用无法与设备通话。

我可以对这个问题做些什么吗?

1 个答案:

答案 0 :(得分:0)

我想这与权限有关,因为API level 27您需要

android.permission.ACCESS_FINE_LOCATION
要么
android.permission.ACCESS_COARSE_LOCATION
允许。

您需要CHANGE_WIFI_STATE才能使用Android Pie。
试试这个

  ConnectivityManager connManager = (ConnectivityManager) activity.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        if (networkInfo.isConnected()) {
            WifiManager wifiManager = (WifiManager) activity.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
            WifiInfo wifiInfo = wifiManager.getConnectionInfo();
            wifiInfo.getSSID();
            String name = networkInfo.getExtraInfo();
            String ssid = "\"" + wifiInfo.getSSID() + "\"";
}

您可以详细研究这些更改。 Refer Here