gpt4 book ai didi

Android WorkRequest NetworkType 约束无法区分带互联网的 VPN 和不带互联网的 VPN

转载 作者:行者123 更新时间:2023-12-05 00:02:25 28 4
gpt4 key购买 nike

我有一个 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/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com