除了 Bonjour 之外,哪些实际方法调用会在 iOS 14 上触发“想要查找并连接到本地网络上的设备”权限通知?
这是 WWDC 会话中有关此新权限的屏幕截图。作为概述,这只是有点帮助。我更感兴趣的是弄清楚所有方法调用会触发什么。
Jam*_*key 27
如果您使用带有调试配置的React Native,那么您将包含负责与开发计算机通信的所有代码,因此您可能可以忽略此消息。
不过,最好检查一下您是否没有其他也需要访问的库。为此,只需构建一个发布版本并查看该消息是否仍然存在。
Apple(开发论坛上的爱斯基摩人)发布了常见问题解答,提供了有关此警报的更多详细信息:\n https://developer.apple.com/forums/thread/663858
\n特别是,FAQ-2 提供了有关触发此警报的更多信息:\n https://developer.apple.com/forums/thread/663874
\n\n\n哪些操作需要本地网络访问?
\n一般规则是,到本地网络地址的传出流量\n需要用户授予您的应用本地网络访问权限。常见的\n场景包括:
\n\n
\n- 建立传出 TCP 连接 \xe2\x80\x94 是
\n- 侦听并接受传入 TCP 连接 \xe2\x80\x94 否
\n- 发送 UDP 单播 \xe2\x80\x94 是
\n- 发送 UDP 多播 \xe2\x80\x94 是
\n- 发送 UDP 广播 \xe2\x80\x94 是
\n- 接收传入的 UDP 单播 \xe2\x80\x94 否
\n- 接收传入的 UDP 多播 \xe2\x80\x94 是
\n- 接收传入的 UDP 广播 \xe2\x80\x94 是
\n这些 TCP 和 UDP 检查是在系统的最低级别完成的,因此适用于所有网络 API。这包括网络框架、BSD 套接字、NSStream、NSURLSession 和 WKWebView,以及任何位于这些协议之上的其他协议。
\n重要信息接收传入的 UDP 多播或广播目前不需要\n本地网络访问,但是,因为我们希望在未来的更新中\n改变这一点,所以我们现在的建议是您像以前那样编写\n代码(r. 69792887、70017649 )。
\n解析链接本地 DNS 名称(根据 RFC 6762,以 local 结尾的名称)\n需要本地网络访问。同样,此检查适用于\n各种 API,包括 <dns_sd.h>、<net_db.h>、网络框架、\nNSStream 和 NSURLSession。
\n最后,所有 Bonjour 操作都需要本地网络访问:
\n\n
\n- 向 Bonjour 注册服务 \xe2\x80\x94 是
\n- 浏览 Bonjour 服务 \xe2\x80\x94 是
\n- 解析 Bonjour 服务 \xe2\x80\x94 是
\n同样,这些检查适用于使用 Bonjour 的所有 API,包括\n<dns_sd.h>、网络框架、NSNetService 和 Multipeer\nConnectivity。
\n注意您必须在 Info.plist 中声明您使用的 Bonjour 服务类型。请参阅如何将我的多点连接服务类型映射到\n Bonjour 服务属性中的条目?了解详情。
\n基于 Bonjour 的服务,您\xe2\x80\x99 看不到网络的任何详细信息\n不需要本地网络访问。这些包括:
\n\n
\n- AirPlay \xe2\x80\x94 否
\n- 通过 UIKit \xe2\x80\x94 打印 否
\n
简而言之,卓悦。它的使用不再是“透明的”。有关更多信息,请参阅https://developer.apple.com/videos/play/wwdc2020/10110/:
如果您的应用与使用 Bonjour 或其他本地网络协议的设备进行交互,则您必须在 iOS 14 中添加对本地网络隐私权限的支持。
即使是现有的应用程序也受此规则的约束;第一次尝试使用 Bonjour 会触发授权警报。
| 归档时间: |
|
| 查看次数: |
12083 次 |
| 最近记录: |