android - Android 11 中的位置更新
问题描述
我的应用程序会定期从后台开始跟踪前台服务中的位置更新,并在添加 android:foregroundServiceType="location" 后在 Android Q 中正常工作,但在 Android 11 beta 中它不再接收位置。
这种方式是 11 中的新方式还是只是一个错误?我没有在文件中看到任何内容。
解决方案
从 Android 11 开始,前台“位置”服务不再足以获取后台位置更新。我们现在需要请求 ACCESS_BACKGROUND_LOCATION,如果前台服务是在后台启动的(比如广播接收器):
https://developer.android.com/about/versions/oreo/background-location-limits
更糟糕的是,您必须将 ACCESS_BACKGROUND_LOCATION 与其他位置权限分开请求,否则它将不起作用:
https://developer.android.com/about/versions/11/privacy/location
推荐阅读
- python - 如何在 ThreadPool 中延迟执行?
- java - 如何在 Eclipse 问题视图中将自定义项添加到属性对话框
- java - 如何清除特定活动的缓存?
- oracle - ORA-06561 在执行 PL/SQL 过程时
- python - 如何以有效的方式根据来自另一个数据帧的值修改数据帧中的值?
- android - 在 sharedPreference 或 SQL 中保存对象或对象 ID
- php - CMYK/RGB 颜色空间如何在 pdf 和图像中工作,它如何影响它们的相互转换?
- azure-devops - 在我们的 Azure DevOps 组织中搜索存储库
- python - 如何在 Python 中指定(什么)的方法返回类型列表?
- entity-framework - 使用 Entity Framework 和 .net Core 执行 SP