我正试图从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开发的新手。
感谢您的帮助!
答案 0 :(得分:1)
我在iPhone上测试了你的代码,它运行正常。但是,连接的“另一端”可能是个问题。
您应该使用www.google.com端口80测试相同的代码。
您也可以在另一个项目中或项目中的另一个“点”进行测试。也许“你在哪里调用代码”存在问题
您还应该考虑仅使用现有框架进行这些连接,而不是自己编写所有内容。
我使用谷歌异步套接字。