如何解决在ConnectivityManger请求上的拦截取消按钮按下网络新建对话框,API 29
我正在使用ConnectivityManger的requestNetwork
API以编程方式连接到由作为第一个参数提供的NetworkRequest
对象指定的特定网络。我还提供了NetworkCallback
来接收与请求状态有关的通知。
从API 29开始,操作系统将显示一个对话框(NetworkRequestDialogFragment
),用户可以在其中从列表中选择网络或取消操作。
根据documentation,当用户单击对话框的“取消”按钮时以及在连接失败的情况下,也会调用NetworkCallback的onUnavailable
方法。
是否有用于区分这两种情况的高级机制?
解决方法
onUnavailable()
仅在两种情况下被调用:
- 用户手动取消请求
- 第二种情况要求您在请求中使用超时。如果是这种情况,时间用完也会触发
onUnavailable()
。
关于您的问题,我不认为有一种方法既可以拦截此对话框,也不会拦截一旦触发onUnavailable()
并指出存在错误的第二个对话框-我一直在寻找在这样的地方。 :/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。