全部产品
云市场
    java_lang_SecurityException

java_lang_SecurityException

更新时间:2018-04-19 20:40:10

问题分析:

当违背安全原则,检测到安全错误时会抛出此类异常。

解决方案:

当违背安全原则,检测到安全错误时会抛出此类异常。具体原因需要看给出的相应的其他信息并获取相应权限。

示例一:

  1. Caused by: java.lang.SecurityException: Permission denied (missing INTERNET permission?)
  2. at java.net.InetAddress.lookupHostByName(InetAddress.java:430)
  3. at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
  4. at java.net.InetAddress.getAllByName(InetAddress.java:214)
  5. at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
  6. at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
  7. at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
  8. at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
  9. at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
  10. at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316)

问题分析:

因为没有获取到访问网络权限,因此抛出此类异常。

解决方案:

因为没有获取到访问网络权限而抛出此类异常。需要检查AndroidManifest.xml文件是否获取权限,检查手机是否有限制权限的软件如管家等并打开权限。

代码示例:

在AndroidManifest.xml中使用网络权限

  1. <uses-permission android:name="android.permission.INTERNET" />

因为在这个例子中使用HTTPUrlConnection类,根据官方文档还需要申请检测网络状态的权限。

  1. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

如果还是报这个异常,请确认手机中没有其他软件管家控制网络权限没有授权。

参考文献:

1.https://developer.android.com/reference/java/lang/SecurityException.html

2.https://developer.android.com/training/basics/network-ops/connecting.html