2012-12-05 31 views
1

爲什麼setWifiEnabled()爲WRITE_SETTINGS權限(下面的堆棧跟蹤)拋出setWifiEnabled?setWifiEnabled()爲WRITE_SETTINGS權限拋出java.lang.SecurityException

java.lang.SecurityException: Permission Denial: writing com.android.providers.settings.SettingsProvider uri content://settings/system from pid=25173, uid=10148 requires android.permission.WRITE_SETTINGS 
at android.os.Parcel.readException(Parcel.java:1332) 
at android.os.Parcel.readException(Parcel.java:1286) 
at android.net.wifi.IWifiManager$Stub$Proxy.setWifiEnabled(IWifiManager.java:1156) 
at android.net.wifi.WifiManager.setWifiEnabled(WifiManager.java:971) 

此權限在Android文檔中未提及。 應該將WRITE_SETTINGS權限添加到清單中嗎?

回答

2

是的,setWifiEnabled()會將數據寫入Android設置數據庫,所以它需要WRTITE_SETTINGS權限。

相關問題