我已经在这个几天了,现在似乎无法找到解决方案。我想在iOS上通过wifi创建点对点网络。所有开源代码似乎都支持运行服务器或作为客户端,但是没有任何代码可以支持这两者 - 同行。有人知道我可以做到这一点吗?iOS上的对等网络通过WiFi
回答
您是否想过使用Apple的GameKit框架?我过去曾经使用它来进行设备之间的简单通信。这非常简单,可以让你快速走出门外。 This看起来像一个很好的教程。
问题是这涉及他们接受我的应用程序可以使用gamekit,这似乎有点随机给用户 – Andrew 2013-03-12 16:16:59
哪个部分, GameKit,GameKit UI还是两者兼而有之?您可以推出自己的所有自定义用户界面,而且没有人会更聪明.GKPeerPickerController将简化您的开箱生活,看起来并不像一个人在玩游戏。但是,您可以推出自己的解决方案并拥有自己的用户界面。 – 2013-03-12 17:36:51
我目前在非游戏中使用GameKit进行p2p数据传输,并且我不知道用户曾被提示接受或批准此功能。连接相当容易设置,但是,与Wi-Fi相比,连接数据传输速度较慢,而且数据传输速度较慢。 – arlomedia 2014-12-02 18:29:03
您无法在iOS中使用当前的API以编程方式创建Wi-Fi网络。 GameKit提供了一些API来通过蓝牙来实现。
如果您希望使用CocoaHTTPServer实现自定义解决方案,请注意,您仍然无法创建直接的Wi-Fi连接,只需将设备连接到相同(预先存在的)wi -fi网络。
iOS中的临时对等Wi-Fi(如802.11s)还有几年的时间。也许iOSX;)
[documentation](http://developer.apple.com/library/ios/#documentation/GameKit/Reference/GKSession_Class/Reference/Reference.html)说:GKSession对象提供使用蓝牙或Wi-Fi发现和连接附近的iOS设备的能力。 – 2013-03-12 17:39:48
只有蓝牙用于直接点对点连接。无线局域网用于LAN上的Bonjour。 – cleverbit 2013-03-22 13:47:24
GKSession在iOS 7 – user2159978 2015-01-09 09:24:53
iOS 7增加了Multipeer Connectivity Framework正是为了这个目的。
中已弃用工作链接https://developer.apple.com/library/ios/DOCUMENTATION/MultipeerConnectivity/Reference/MultipeerConnectivityFramework/index.html – sage444 2014-10-15 08:19:14
请参阅multipeer连接的实际操作:http://youtu.be/ MgP8wm7_-Xk – Aace 2014-11-14 04:11:19
我不建议你使用这个框架。它非常普遍,但速度太慢。 – user2159978 2015-01-09 08:31:20
iOS支持Multipeer Connectivity framework,它使iOS设备能够通过蓝牙,基础设施(使用路由器)WiFi或P2P进行对话。
但是,它并没有提供明确使用P2P的方式。从设备的任何对等设备(其他iOS设备)的连接方式上都有一个抽象层,它目前不允许连接非iOS设备。
- 1. 通过ios 10在封闭的wifi网络(无网络)上查看本地托管的网页
- 2. 如何通过WiFi网络传递NSArray?
- 3. 通过Cocoa连接到WIFI网络
- 4. Android上的Wifi网络?
- 5. Wifi网络更改通知
- 6. 通过WiFi信号连接iPhone而无需加入WiFi网络
- 7. 列出iOS中的wifi网络
- 8. 如何通过Wifi网络传递NSData对象?
- 9. 上连接到WiFi网络
- 10. RPI接入网络通过以太网和网桥wifi并行
- 11. 跨WiFi /域网络的客户端/服务器对等发现
- 12. 扫描iPhone SDK上的Wifi网络
- 13. 是否有可能通过Wifi或TMobile网络强制网络流量?
- 14. 模拟通过WiFi网络连接的两个Android设备?
- 15. 网络摄像头流对等网络
- 16. iPhone通知当wifi网络变化
- 17. 通过网络
- 18. 通过网络
- 19. 通过网络
- 20. 是否有针对WiFi网络更改的NSNotificationCenter通知?
- 21. 可以通过UDP对等连接广播网络消息吗?
- 22. 如何通过wifi和3G网络设置语音聊天?
- 23. Android:通过蜂窝网络和WiFi进行位置检测
- 24. 如何通过adb从wifi网络断开连接?
- 25. 在Android中通过WIFI网络连续发送音频数据
- 26. 通过3G网络发送HTTP请求而不使用WiFi?
- 27. 通过应用程序连接WiFi网络
- 28. 无法通过本地wifi网络连接到xampp服务器
- 29. 在WiFi网络上发现客户端
- 30. 在iPad上检测wifi网络变化
你看过类似的东西:https://github.com/robbiehanson/CocoaHTTPServer我知道它仍然是一个客户端/服务器的关系,但它似乎内置Apple adhoc网络API仍然是私人的。 – JiuJitsuCoder 2013-03-12 15:23:12
我不清楚你的问题。您是否正在寻找允许您在两台iOS设备之间创建一个adhoc WiFi网络的代码,或者您是否正在寻找一种方式让两台已通过WiFi连接的iOS设备执行p2p通信? – rmaddy 2013-03-12 16:21:12
只需了解互联网和BSD套接字如何工作。使用bind()调用。使用STUN服务器。使用很多套接字。使用可达性通知API。枚举网络接口。绑定到具体的端口。如果你愿意,可以使用多播发送知识产权是美好的世界,但学习代码为苹果的人永远不会得到一个东西:-( – 2015-04-21 23:13:16