android - 当 wifi 不可用但蜂窝数据在三星设备上时,ContentResolver requestSync 不会触发 SyncAdapter onPerformSync
问题描述
问题如下。我有一个有效的 SyncAdapter 和 ContentResolver 设置。onPerformSync
当我打开 wifi 但 wifi 没有互联网连接(它连接到 IOT 设备)时,会发生SyncAdapters 未触发的问题。我有一张 SIM 卡,并且可以使用蜂窝数据。在应用程序中,我设置了 NetworkManager,因此我请求蜂窝数据,如下所示:
val req = NetworkRequest.Builder()
req.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR)
req.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
如果我创建一个 API 请求而不是触发ContentResolver.requestSync
它,它会正常工作。
此代码在华为平板电脑上也可以正常工作,但在三星上不能正常工作。
所以基本上。我有蜂窝互联网,但 SyncAdapter 没有意识到这一点(在三星设备上)并且没有触发onPerformSync
。无论如何要让 SyncAdapter 意识到这一点?
解决方案
推荐阅读
- javascript - 如何获取 puppeteer 中嵌套元素内的元素计数
- python - 从 GitHub Actions 中的 conda 环境运行时找不到 pytest
- c# - Microsoft.Azure.Management.Consumption .NET 包和 ApiVersion
- spring - 差异包中的 Bean 给出错误“没有可用类型的限定 Bean”
- python - rqt_image_view 作为 opencv 中的输入
- node.js - Mongoose 多个依赖查询
- gcc - 如何在 ubuntu 20 中安装旧版本的 gcc -3 或 gcc-4
- c# - 在 C# 中将结构指针作为参数传递
- python - 需要帮助理解一行代码如何使用最大 y 坐标在 python 中找到对应的 X 值
- android - 在AndroidQ中重新安装应用程序后,我们是否需要获得权限才能获取应用程序自行创建的所有文件?