问题标签 [cfstream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - CFStreamCreatePairWithSocketToHost 在 Swift 中意外崩溃
终于有时间在这里问我的第一个问题了!
前期:Xcode 7.1.1、OS 10.11.2、iOS 9.0.2(在物理设备上)
我正在编写一个与我的 Raspberry Pi 通信的小应用程序。我有一些从教程借来的用 Obj-C(适用于 iOS 7)编写的工作代码,在 Obj-C中对我来说一切正常(与 Pi 连接并按预期运行)。问题在于为 Swift/iOS 9 重写它(这是目标)。
好的一点:
我相信问题出在上面,因为这是堆栈中的最后一个方法调用,但是应用程序在几乎没有信息的情况下安静地崩溃:
任何帮助将非常感激!
请随时询问更多信息。
ps 我知道这个网站上的格式是相当“严格”的,任何我错过的、过度的等等,请让我知道 :)
ios - CFStream:NSOutputStream 不工作
我正在开发需要向 Android Socket 服务器发送消息的 iOS 应用程序。
我正面临一个奇怪的情况。如果我连续在 NSOutputStream 中写入数据,那么 Android 设备会收到消息,但是,如果我将代码写入 While 循环或任何 If 条件,则它不起作用。
在上面的代码中,它不断地写入 NSOutputstream 和 Android 设备获取数据。但是如果我取消注释 If 条件,那么它将不起作用。任何帮助将不胜感激。
objective-c - 目标 C TCP 套接字
我正试图围绕目标 c tcp 套接字连接到服务器,我使用了这两个教程中的代码:https ://www.raywenderlich.com/3932/networking-tutorial-for-ios-how -to-create-a-socket-based-iphone-app-and-server和https://gist.github.com/rjungemann/446256。我注意到,当我尝试将数据发送出去时,它不会发送,直到我停止应用程序(此时在服务器上接收到),遵循两个教程时的相同行为,下面的相关代码:
swift - SWIFT - 如何为服务器获取流
在客户端,我们可以使用 CFStreamCreatePairWithSocketToHost 来获取 ReadStream 和 WriteStream。
服务器得到clientSocket后,我们如何得到ReadStream和WriteStream?
ios - 在 iOS 中以编程方式无法访问带有空格的 FTP 目录名称
我必须使用空格访问文件夹名称,但我收到 550 错误,这意味着文件不存在。
ftp://192.xxx.xx.x/C/xxx/xxxx/ xxx xxx xxx /5mb.jpg
我可以访问到此路径的目录 ftp://192.xxx.xx.x/C/xxx/xxxx/
但之后,由于目录名称(粗体)中有空格,因此无法访问。
swift - 带有 TLS 的 CFStream
是否可以CFStream
使用 TLS 1.2 进行通信?如果是,最好的方法是什么?设置 aSSLContext
或设置CFReadStreamSetProperty
? 不幸的是,我找不到任何例子。
ios - Swift TCP客户端检查连接ipv4
如果 Wifi 连接处于活动状态并且我在网络 192.168.1.xxx 上并尝试建立连接:
在我知道连接状态之前,延迟是 2 分钟。检查 nil readStream writeStream inputStream outputStream 没有帮助 请帮助解决这个问题 使用简单 Ping 不适合,因为 ping 无法对特定端口进行 ping。由于这个端口有一个 TCP 服务器启动
ios - 如何修复服务类型设置为 VoIP 的 SocketStream 泄漏?
Xcode 报告 SocketStream 对象在流关闭后泄漏。泄漏可以在 iPhone 上可靠地重现,但不能在模拟器或 Mac 上重现。
流是用 来创建的CFStreamCreatePairWithSocketToCFHost
,然后使用、关闭和释放,每次都会留下另一个 SocketStream。
我检查了 Instruments 中的保留历史记录,发现每次关闭读写流时,SocketStream 的保留计数为 2。(我猜这两个保留是_CTServerConnecionCreateWithIdentifier
从 CoreTelephony 完成的)
查看这些流的使用方式,我注意到它的网络服务类型属性设置为 VoIP(或CFStreamNetworkServiceTypeVoIP
或NSStreamNetworkServiceTypeVoIP
)。我注释掉了这些行,泄漏就消失了。
那么,关闭 VoIP 服务流的正确方法是什么?它是否与 VoIP 弃用有关?
ios - 未调用流委托
我正在尝试通过 TLS 在 iPhone 和 BeagleBone Black Wireless 之间发送数据。但是,我遇到了一些奇怪的问题。这个问题的问题是为什么stream(_:handle:)
不调用委托方法。我已经阅读了文档和其他 StackOverflow 问题,但我的代码已经考虑了他们的问题。
这是我的变量:
这是我打开流的代码:
这是我的代码中出现的委托方法(它由 Xcode 自动完成,所以没有问题):
但是由于某种原因,这个方法永远不会被调用。事实上,我尝试发送数据,通过写入outputStream
,BBBW实际上成功接收到消息!(虽然,如果我再次尝试发送消息,我会收到Connection reset by peer
错误消息。)