试图编程如何在Android设备上关闭wifi

时间:2010-11-02 19:30:13

标签: android android-wifi

阅读了WifiManager上的android文档并认为我理解了它,但当我尝试编写示例时,我一直遇到问题。

我有以下代码

        wifiOffButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Context mContext = getApplicationContext();
            WifiManager mWifi = (WifiManager)mContext.getSystemService(Context.WIFI_SERVICE);
            mWifi.setWifiEnabled(false);
        }

    });

我曾尝试类似关闭声音的东西

muteButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Context mContext = getApplicationContext();
            AudioManager mAudio = (AudioManager)mContext.getSystemService(Context.AUDIO_SERVICE);
            mAudio.setRingerMode(0);
        }
    });

这个工作正常,但是wifi部分总是会出错,只是想知道我是否遗漏了一些明显的东西,因为我似乎无法解决这个问题?

3 个答案:

答案 0 :(得分:1)

那么,如何将这些权限添加到Android Manifest中:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>

答案 1 :(得分:0)

请确保您在清单文件中拥有相应的权限。

这应该有所帮助:

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

答案 2 :(得分:0)

愚蠢的我:(只是再次检查权限,看看我是否正确输入了它们,将它们放在应用程序标签内而不是清单中......请坐在角落里!