gpt4 book ai didi

ios - 我应该使用哪个高级 API 来管理 iOS 上的 UDP 套接字?

转载 作者:可可西里 更新时间:2023-11-01 03:17:50 24 4
gpt4 key购买 nike

<分区>

在“Using Sockets and Streams”的“Network Programming Topics Conceptual Guide”一章中,Apple 说:

Note: POSIX networking does not activate the cellular radio on iOS. For this reason, the POSIX networking API is generally discouraged in iOS.

同样在“Networking Tips and Pitfalls”的“Networking Overview Guide”一章中,Apple 说:

In iOS, using sockets directly using POSIX functions or CFSocket does not automatically activate the device’s cellular modem or on-demand VPN.

好的,所以在 iOS 上既不应该使用 POSIX 套接字也不应该使用 CFSocket,它只是 POSIX 套接字的一个薄包装器,它支持通过 RunLoops 进行异步网络。没问题。但是,如果您需要 UDP 套接字,您应该使用什么 API?

Apple 在“Networking Tips and Pitfalls”的章节“Networking Overview Guide”中进一步说:

Avoid Resolving DNS Names Before Connecting to a Host

因此理想情况下应该有一个 API 来管理 UDP 套接字,而不是 POSIX API 和 CFSocket,它接受 DNS 名称而不是 IP 地址作为目标地址。

也许我是瞎子,但我找不到任何这样的 API。有任何想法吗?

使用任何第三方 API(不是来自 Apple)并不有趣,因为这样的 API 必须基于任一 Apple API,在这种情况下我可以直接使用这个 Apple API。围绕 POSIX 套接字编写我自己的包装器 API 是小菜一碟,我以前写过很多套接字包装器,我已经知道所有讨厌的陷阱。但是我不会使用 POSIX API,这是这里的初始问题。

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