我正在尝试使用之前在此处看到的代码将我的Android设备设置为Access-Point:
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiConfiguration netConfig = new WifiConfiguration();
netConfig.SSID = "MyAccessPoint";
Method method = wifi.getClass().getMethod("setWifiApEnabled", WifiConfiguration.class, boolean.class);
method.invoke(wifi, netConfig, true);
现在,我设法打开它,但没有我在WifiConfiguration中设置的SSID。
这真让我抓狂。
任何人?
看看我是如何在Android 2.3 wifi hotspot API工作的。
在调用方法“setWifiApEnabled”之前,您需要调用“getWifiApConfiguration”来获取默认的WifiConfiguration 然后更改SSID和密码,然后使用修改后的WifiConfiguration调用“setWifiApConfiguration”,然后调用“setWifiApEnabled” 这是守则。
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
getWifiConfig = wifi.getClass().getMethod("getWifiApConfiguration",null);
WifiConfiguration myConfig = (WifiConfiguration) getWifiConfig.invoke(wifi,null);
myConfig.SSID = "Hello World";
setWifiConfig = wifi.getClass().getMethod("setWifiApConfiguration",WifiConfiguration.class);
setWifiConfig.invoke(wifi,new Object[]{myConfig,true});
enableWifi = wifi.getClass().getMethod("setWifiEnabled",WifiConfiguration.class,boolean.class);
enableWifi.invoke(wifi,null,true);