Could not read input channel file descriptors from parcel

出现的问题:
1.AppData::create pipe(2) failed: Too many open files
2.javax.net.ssl.SSLException: Unable to create application data
3.RunTimeException-Could not read input channel file descriptors from parcel
为什么会出现:在recycleview中有一个按钮,疯狂点击请求网络多次就会出现。
原因:在Android8.0 系统上会出现,8.0系统设置了句柄数量一般不超过1024,由于多次请求网络数据(这里使用OKHTTP3获取网络数据),会出现以下情况:
a.网络不好时,一直提交请求,导致OKHTTP3疯狂创建文件,导致超出
b.网络好时,界面还未来得及刷新界面,再次发送网络请求
解决方法:在网络请求的时候,加上加载框,防止用户在请求的时候点击,同时,在界面刷新完成后取消加载框(由于在recycleview中不知道如何获取刷新完成,采取延迟2秒钟取消加载框)

如果有更好的解决方法,希望留言告知

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容