从API 26开始,有新方法可以打开/关闭HotSpot,startLocalOnlyHotspot
但我不能再设置SSID和安全密钥了。另一个问题是“startLocalOnlyHotspot”在每次调用时都会更改SSID和preSharedKey,因此用户几乎不可能每次都在其他设备上设置新的SSID和密钥。
我注意到,当以编程方式启用HotSpot时,如果用户打开HotSpot活动,HotSpot将在几秒钟后关闭,如果用户从HotSpot Wifi设置活动重新启用HotSpot,它将使用旧配置(在我更新设备之前的旧配置) Android 8,我尝试以编程方式设置相同的配置。)
答案 0 :(得分:-1)
创建WifiConfiguration
对象并设置所有相关属性。
WifiConfiguration wifiCon = new WifiConfiguration();
wifiCon.SSID = "ssip";
wifiCon.preSharedKey = "Sharedpassword";
wifiCon.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED);
wifiCon.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
wifiCon.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
wifiCon.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
try
{
Method setWifiApMethod = wm.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, boolean.class);
boolean apstatus=(Boolean) setWifiApMethod.invoke(wm, wifiCon,true);
}
catch (Exception e)
{
Log.e(this.getClass().toString(), "", e);
}
快乐的编码!!