android - 为什么 Google Nearby Connections 需要 ACCESS_COARSE_LOCATION 和/或 ACCESS_FINE_LOCATION 权限?
问题描述
我用谷歌搜索了很多,但仍然没有解释“为什么?” 需要这些权限才能在设备之间建立离线(无互联网)连接。我有一个简单的应用程序,只需要 p2p-star 策略以主从模式在设备之间交换数据,我很难向我的用户解释为什么我的应用程序需要它们。“只是因为 lib 这么说。这就是为什么”。
官方文档也没有对我说什么。
“这个 API 的主要目标是提供一个简单、可靠和高性能的平台。在底层,API 使用蓝牙、BLE 和 Wifi 热点的组合,利用各自的优势,同时规避各自的弱点。这有效地在一系列 Android 操作系统版本和硬件中抽象出蓝牙和 Wifi 的变幻莫测,使开发人员能够专注于对其用户重要的功能。”
PS:据我所知 ACCESS_COARSE_LOCATION 和 ACCESS_FINE_LOCATION 是关于 GPS
PSS:如果这个问题会在这里得到回答 https://github.com/android/connectivity-samples/issues/204
解决方案
因为蓝牙和 WiFi 扫描可以揭示用户的位置,或者作为近似值(“家庭房电视”被发现,所以你必须在家)或详细信息(设备 A、B 和 C 最后一次出现在 lat/lng X,所以我们认为你可能在 X)。
https://developer.android.com/guide/topics/connectivity/bluetooth-le#permissions
推荐阅读
- r - 为什么将 geom_text 添加到 ggplot 会更改图例线类型?
- pdf - 在springboot中下载外部pdf手册
- r - 在 R 中通过具有重复列名的数据帧获取数据帧
- c# - 如何使用c#比较自定义sql字段的条件
- reactjs - 如何在 React ag-grid 中预加载不同网格数据中的列顺序
- loops - 如何在 Jmeter 的 CSV 文件中重复循环?
- php - Wordpress (php) 评论分页
- postgresql - Postgresql 11 行使用 jdbc 插入低性能
- c - 在 C 编译器中表示 ax+by 方程
- javascript - 如何根据 Vuejs 中的文本和日期范围选择器过滤数组?