一个很诡异的问题,我在bugly上收集到一个中等的崩溃等级BUG就是这个引起的
开始考虑到是不是6.0的手机用户在网络权限使用对话框弹出的时候手误了【因为6.0新的权限机制】
但是崩溃发生在的系统版本分布5.0,所以这个原因切掉。
#385 OkHttp Dispatcher
android.system.ErrnoException
android_getaddrinfo failed: EACCES (Permission denied)
我不能使用网络?这种情况居然发生在我已经已经申请过网络权限使用的环境中。
<uses-permission android:name=“android.permission.INTERNET”/>
同时,如果你使用的是第三方的网络库,可能还会涉及到网络状态的访问权限使用,
<uses-permission android:name=“ACCESS_NETWORK_STATE”/>
我相信我自己不会犯下这种低级的错误,并且这种问题只是发生在部分的手机上。
既然我的AndroidManifest.xml文件是配置正确的,那么是什么导致的?
root后的设备,可能安装一些隐私管理工具,关闭第三方应用的网络访问权限。可能他并不知道这样的情况发生了,但是可以肯定的是并不是你辛苦开发的应用发生了问题。
由于缺乏环境的原因,我并不能解决这种问题,简单的使用了
setDefaultUncaughtExceptionHandler()
``` 捕获这样的意外异常,但是它可能会影响你的其他崩溃收集SDK使用,所以请在使用的时候小心万分。
【如果你的项目设置targetSdk至少23,那么你的应用将会使用新的权限管理机制。 如果你还没有准备好,请确保你保持targetSdk小于等于22,因为这可以确保当你的应用程序安装后使用旧的权限系统】