在Android中似乎没有公共API可以管理WIFI热点。
有些解决方案具有反射性,而其他解决方案似乎没有答案
如何配置5Ghz WiFi热点?
我想在两个均支持5GHz频段的android设备之间使用5GHz本地热点网络实现更快的文件传输。
ShareIt之类的第三方应用程序可以在“超快速模式”中启用5GHz热点
答案 0 :(得分:0)
Android对于Android版本> = Oreo具有公开的公开API startLocalOnlyHotspot。
它需要Manifest.permission.CHANGE_WIFI_STATE
和ACCESS_FINE_LOCATION
权限。
这是一个简单的示例,说明如何使用此API打开热点。
private WifiManager wifiManager;
WifiConfiguration currentConfig;
WifiManager.LocalOnlyHotspotReservation hotspotReservation;
打开热点的方法:
@RequiresApi(api = Build.VERSION_CODES.O)
public void turnOnHotspot() {
wifiManager.startLocalOnlyHotspot(new WifiManager.LocalOnlyHotspotCallback() {
@Override
public void onStarted(WifiManager.LocalOnlyHotspotReservation reservation) {
super.onStarted(reservation);
hotspotReservation = reservation;
currentConfig = hotspotReservation.getWifiConfiguration();
Log.v("DANG", "THE PASSWORD IS: "
+ currentConfig.preSharedKey
+ " \n SSID is : "
+ currentConfig.SSID);
hotspotDetailsDialog();
}
@Override
public void onStopped() {
super.onStopped();
Log.v("DANG", "Local Hotspot Stopped");
}
@Override
public void onFailed(int reason) {
super.onFailed(reason);
Log.v("DANG", "Local Hotspot failed to start");
}
}, new Handler());
}
然后您可以使用currentConfig
对象获取热点的详细信息。作为参考,您可以查阅我的answer。