我有简单的代码想要读取网络连接的状态。我已经向 AndroidManifest.xml 添加了权限:
<user-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
我尝试访问网络状态的代码:
ConnectivityManager conmgr = (ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ninfo = conmgr.getActiveNetworkInfo();
以及抛出的错误:
E/AndroidRuntime(7650): java.lang.SecurityException: ConnectivityService: Neither user 10080 nor current process has android.permission.ACCESS_NETWORK_STATE.
我长期以来一直试图找出任何错误,但所有内容似乎都拼写正确。新版本的 AndroidManifest 似乎没有部署到设备上。我尝试在 Eclipse 中清理项目,从手机中卸载应用程序,但没有任何效果,我再次得到相同的通信。我做错了什么?
我想是的
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
而不是
<user-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
删除与 NetworkInfo 有关的各种导入,例如 Java.net 包或任何其他..重新导入
如果您有多模块设置,请确保将权限添加到您的网络监控类所在模块的清单中。