作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 WorkRequest
我想在设备有互联网连接时运行。 Constraints似乎是这样做的方法 - 我可以定义一个 NetworkType
像这样的约束:
val constraints = Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build()
但是,我观察到使用 VPN 的设备的一些行为。当 VPN 处于 Activity 状态时,
WorkRequest
似乎认为这是
NetworkType.CONNECTED
,即使设备没有互联网连接。
最佳答案
请首先检查 VPN 具有哪些网络功能:
Internet check over android.net.NetworkCapabilities not working
然后比较一下这个:
互联网&NOT_RESTRICTED&TRUSTED&VALIDATED
这就是 NetworkType.CONNECTED 方法。
如果您愿意,您可以转储 JS 并查看您正在等待的确切功能,如下所示:
adb shell dumpsys 作业调度程序
https://developer.android.com/topic/libraries/architecture/workmanager/how-to/debugging
关于Android WorkRequest NetworkType 约束无法区分带互联网的 VPN 和不带互联网的 VPN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69908159/
我有一个 WorkRequest我想在设备有互联网连接时运行。 Constraints似乎是这样做的方法 - 我可以定义一个 NetworkType像这样的约束: val constraints =
我正在使用 PeriodicWorkRequest 每 15 分钟为我执行一次任务。我想检查一下,如果这个定期工作请求之前已经安排好了。如果没有,请安排。 if (!PreviouslySc
我是一名优秀的程序员,十分优秀!