我的iPhone通过adhoc wifi连接到wifi传感器模块。
挑战在于对使用此传感器模块的应用进行编码。但我不确定使用哪种特定的API来最好地构建这种实现。
我开始研究CocoaAsyncSocket class,因为它似乎是一种适合此类用途的工具。
用户是否始终必须手动连接到adhoc wifi设备? (通过设置应用程序)或我自己的应用程序可以处理搜索,制作和破坏WiFi连接?
我怀疑iOS让我以编程方式切换Wifi是否打开/关闭。
收到传感器数据后,哪个容器最能处理流? 例如,在其他平台上,我编写了一个旋转队列缓冲区。
感谢您的意见。
编辑:相关协议是直接CSV格式的ASCII。不是HTTP,FTP等。只是原始数据。该应用程序只需在连接的IP上打开一个端口,然后进行读/写。
答案 0 :(得分:2)
您的应用程序无法打开/关闭wifi,或选择WiFi网络。
如果没有关于此wifi传感器模块所说的协议的更多信息,任何人都不可能提供更多含糊的建议。如果模块可以通过http连接提供数据,那可能是理想的。如果它需要您的软件在特定端口上打开连接并通过http或ftp以外的其他方式进行通信,那么您的工作将会更复杂一些。 CFNetwork以及从它的用法派生的项目,例如你提到的CocoaAsyncSocket。您可以在ASIHTTPRequest中看到通过CFNetwork的HTTP连接的另一个实现,这可能有助于作为处理下载流,排队操作等的参考。
至于存储数据,再次很难在没有更多信息的情况下提供任何具体建议。如果要将数据存储到iOS设备的文件系统,NSData可能会满足您的需求。如果您需要/更喜欢使用队列来缓冲数据,则有一个s imple category on NSArray提供队列语义。 SO文章中CHCircularBuffer的链接已经死了,但this github project似乎已经有了。
编辑 Here is the official version CHDataStructures。我不知道它是否比以前的链接有所改进,但它似乎是针对更新的iOS SDK进行了更新。
答案 1 :(得分:1)
在设置中添加wifi ad hoc网络的SSID。当您看到网络的SSID时,单击箭头并选择自动连接。在此之后,手机将在范围内自动连接。在此之后,这两个设备可以使用常规套接字API进行通信。