我想从我的Android应用程序启用/禁用wifi。我怎样才能做到这一点?如何从应用程序启用/禁用WiFi?
回答
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false); // true or false to activate/deactivate wifi
您还需要申请许可在AndroidManifest.xml中:
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
试试这个代码
Intent gpsOptionsIntent = new Intent( android.provider.Settings.ACTION_WIFI_SETTINGS);
startActivityForResult(gpsOptionsIntent,0);
谢谢但我不想打开设置我想禁用或启用直接从我的应用程序 – 2011-04-15 10:59:21
为了使您的应用程序/禁用无线网络连接,你需要使用WiFiManager类。创建一个WiFiManager类的对象来获取WiFi的服务。
WifiManager wifi;
wifi=(WifiManager)getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false);//Turn off Wifi
wifi.setWifiEnabled(true);//Turn on Wifi
而且你必须把下面的权限在AndroidManifest.xml
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
为了得到启用的Android /停用WiFi与UI访问的全样本代码this website
这是一个更完整的答案,包括所有必需的权限 – garlicman 2013-09-18 16:34:39
同意大蒜,这应该是被接受的答案 – Tony 2014-08-13 13:06:57
当我在我的项目中这样做,但是当这些代码执行时,系统将提示提示应用程序试图使用wlan是否允许它。并且它每次都出现!我可以在没有提示窗口的情况下启用wlan。 – SalutonMondo 2015-06-03 04:02:45
试试这个
public void disableWifi(Context context, Boolean bool) {
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
if(bool)
wifi.setWifiEnabled(false);
else
wifi.setWifiEnabled(true);
}
虽然这可能会回答这个问题,但也应该解释如何以及为什么。 – BDL 2015-08-06 10:33:09
public class MainActivity extends AppCompatActivity {
Switch btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Switch) findViewById(R.id.switch1);
btn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
toggleWiFi(true);
Toast.makeText(getApplicationContext(), "Wi-Fi Enabled!", Toast.LENGTH_LONG).show();
} else {
toggleWiFi(false);
Toast.makeText(getApplicationContext(), "Wi-Fi Disabled!", Toast.LENGTH_LONG).show();
}
}
});
}
public void toggleWiFi(boolean status){
WifiManager wifiManager = (WifiManager)this.getSystemService(WIFI_SERVICE);
if (status && !wifiManager.isWifiEnabled()) {
wifiManager.setWifiEnabled(true);
} else if (!status && wifiManager.isWifiEnabled()) {
wifiManager.setWifiEnabled(false);
}
}
}
在清单文件中添加用户权限
- 1. IOS-9 - Wifi - 无线电通过应用程序启用/禁用
- 2. Android如何从应用程序启用/禁用以太网?
- 3. 如何更改wifi启用和禁用编程
- 4. 如何禁用或启用程序包/服务的程序包像禁用程序亲应用程序
- 5. 如何启用/禁用目录浏览Red5应用程序
- 6. 如何禁用/启用android应用程序的网络连接?
- 7. 如何在Flex 3应用程序中启用/禁用GoogleMaps?
- 8. 如何从其他应用程序启动ClickOnce应用程序?
- 9. 如何从Java Web应用程序启动Android应用程序?
- 10. 如何从C#应用程序启动应用程序?
- 11. iOS如何从设置应用程序以编程方式启动WIFI页面?
- 12. 从应用程序设置启用/禁用android FCM
- 13. Ionic wifi启用/禁用检测
- 14. 如何启用/禁用从应用程序的推送通知iOS 8
- 15. 如何禁用所有自动启动应用程序
- 16. 如何禁用iPhone Safari以启动地图应用程序
- 17. 创建WiFi应用程序
- 18. WiFi iPhone应用程序
- 19. 从应用程序启动“启动器应用程序抽屉”?
- 20. Django的 - 如何禁用应用程序
- 21. 从rails 3.0.9应用程序启动禁用MongoDB?
- 22. 如何在不禁用WIFI的情况下启用/禁用iphone celular网络
- 23. 如何在Windows CE中禁用/启用WIFI无线电?
- 24. 在Android应用程序中自动启用Wifi热点
- 25. 启用或禁用应用程序内的应用程序权限
- 26. 在Android应用程序中启用或禁用应用程序的权限
- 27. 如何从SDK应用程序中调用/启动NDK android应用程序?
- 28. 使Android应用程序使用Wifi从非Android应用程序接收数据
- 29. 如何以编程方式启用和禁用USB在Android应用程序
- 30. 使用应用程序禁用/启用3G使用
谢谢我试过但它没有工作。 – 2011-04-15 10:59:37
它加入后,添加权限感谢... – 2011-04-15 11:19:44
是的,不要忘记在您的清单中添加使用权限android.permission.CHANGE_WIFI_STATE – Codii 2011-04-15 13:46:55