Android 10:在 JobService 中连接到 Wifi

时间:2021-01-29 23:03:05

标签: android wifi

我正在尝试在 Android 10 的 JobService 中连接到 Wifi 网络。

我正在使用此代码,当用户可以单击面板上的连接按钮时,该代码工作正常。

我想在不要求用户点击连接按钮的情况下在后台连接。

       networkCallback = new NetworkCallback(){
            @Override
            public void onAvailable(Network network) {
                super.onAvailable(network);
                if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){
                    connectivityManager.bindProcessToNetwork(network);
                }else{
                    connectivityManager.setProcessDefaultNetwork(network);
                }
            }

            @Override
            public void onLost(Network network) {
                super.onLost(network);
                connectivityManager.bindProcessToNetwork(null);
                connectivityManager.unregisterNetworkCallback(this);
            }

        };

        WifiNetworkSpecifier networkSpecifier = new WifiNetworkSpecifier.Builder()
                .setSsid(SSID)
                .setWpa2Passphrase(Password)
                .build();

        NetworkRequest networkRequest = new NetworkRequest.Builder()
                .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
                .removeCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
                .addCapability(NetworkCapabilities.NET_CAPABILITY_TRUSTED)
                .setNetworkSpecifier(networkSpecifier)
                .build();

        connectivityManager.requestNetwork(networkRequest,networkCallback);

是否可以在不询问用户的情况下连接到网络?

感谢您的帮助, 曼努埃尔

0 个答案:

没有答案