2011-11-23 18 views
14

Por favor, vea el siguiente códigoSeguridad excepción accediendo a la wifi en Android

wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
    if (wifi.isWifiEnabled() == false) 
    { 
     Toast.makeText(getApplicationContext(), "wifi is disabled..making it enabled", Toast.LENGTH_LONG).show(); 
     wifi.setWifiEnabled(true); 
    } 

Aunque he añadido el permiso en el archivo de manifiesto como

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.test.wifi" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk android:minSdkVersion="8" /> 
<user-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 

pero todavía se está dando siguiente error

11-23 15:18:24.399: E/AndroidRuntime(6800): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.wifi/com.test.wifi.WifiDemoActivity}: java.lang.SecurityException: WifiService: Neither user 10082 nor current process has android.permission.ACCESS_WIFI_STATE. 

Por favor, ayuda por qué esto está sucediendo

Respuesta

3

Debe ser "use-permission" en lugar de "user-permission". la ortografía es incorrecta

+0

muestra la misma advertencia aunque – androider

+0

Haga un proyecto limpio, y luego una compilación. – rfsk2010

+0

aún no resuelto ... – androider

15

Para poder acceder al wifi, necesita Android: name = "android.permission.ACCESS_WIFI_STATE" como ya sabe.

Si va a habilitar o deshabilitar la conexión wifi también van a necesitar dos permisos: ACCESS_WIFI_STATE y CHANGE_WIFI_STATE

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

Eso debería hacerlo por usted.

5

add siguientes líneas

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

esperanza ayudan!

+0

¡genial! esto solucionó el problema, ¡gracias! –

Cuestiones relacionadas