ios - iPad TCP 连接套接字超时(代码 60)

标签 ios xcode ipad ios-simulator

我正在尝试从 iPad 建立简单的 TCP 套接字连接。

我使用模拟器启动并运行了一组代码,它工作正常。

但是当我在 iPad 上运行此代码时,它失败了。

这是代码...

CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)@"192.168.1.10", 19997, &readStream, &writeStream);
inputStream = (NSInputStream *)readStream;
outputStream = (NSOutputStream *)writeStream;

[inputStream setDelegate:self];
[outputStream setDelegate:self];

[inputStream open];
[outputStream open];

代码卡在[inputStream open]上;然后我收到错误:

    The Operation Couldn't be completed.  Operation timed out.  Code 60.

我在这里错过了一些简单的东西吗? iOS权限什么的?为什么它可以在模拟器上运行?我是 iOS 开发新手。

感谢您的帮助!

最佳答案

我在我的 iPhone 上测试了你的代码,它工作正常。不过,连接的“另一端”可能存在问题。

您应该使用 www.google.com 端口 80 测试相同的代码。

您还可以在另一个项目或项目中的另一个“点”对其进行测试。也许“你调用代码的位置”有问题

您还应该考虑仅使用现有框架来实现这些连接,而不是自己编写所有内容。

我为此使用 Google 异步套接字。

关于ios - iPad TCP 连接套接字超时(代码 60),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15885482/

相关文章:

ios - 在 AVPlayer seekToTime 中使用秒数

ios - session 过期设计模式

iphone - 数组值递减

ios - iOS Storyboard是否具有相当于工具 :text in android? 的功能

ios - HTML5 视频量

ios - 将谷歌地图添加为 subview 会使 iOS 应用程序因 exc_bad 崩溃

ios - Unwind segue 展开得太远

objective-c - 如何正确使用 NSUserDefaults 类来绕过 View ?

iphone - 如果自定义生产力应用程序被 iOS App Store 拒绝怎么办?

ios - UIImagePickerController使iPad上的应用程序崩溃,但iPhone崩溃