草庐IT

ios - 连接后立即断开与服务器的连接

我已经使用GCDAsyncsocket库编写了一个单例类,以使用Bonjour与具有相同服务的任何其他设备建立连接。在一台设备上,我正在使用它的方法“startPublishing”使其成为主机(服务器),从另一台设备(客户端)上的应用程序我调用“StartBrowsing"以找出网络中可用的设备。当用户选择该网络中的任何服务时,我将调用方法“initConnectionWithService”,该方法通过解析要连接的NetService地址来启动连接流。BonjourUtilClass.h@interfaceBonjourUtilClass:NSObject{NSNetService

objective-c - 我如何在没有 Bonjour 的情况下找到所有网络设备?

我正在编写一个mac应用程序,我需要发现连接到同一WIFI网络的其他Mac/PC/iPhone/iPad。Bonjour似乎是最合理的选择,但事实证明它在许多类型的路由器上都存在问题(例如,在我的路由器上无法正常工作,因为它阻止了Bonjour服务)。我只需要找到设备的iP,然后我会尝试连接到特定于应用程序的端口以确定我的进程是否正在那里运行。在不违react用商店沙盒的情况下完成此任务的最佳方法是什么? 最佳答案 ARP这是我想到的第一个答案。您的网络设置是否允许这样做? 关于obje

互联网上的 iOS Bonjour

我知道iOS的Bonjour实现(NSNetService、NSNetServiceBrowser)在本地网络上开箱即用。文档说可以设置BonjourDNS服务器以允许通过Internet连接用户,所以我的问题是:什么是BonjourDNS服务器接口(interface)?有没有我可以从中着手的示例?DNS服务器是否负责对等点的初始握手\连接,其余(发送\接收数据)将直接在对等点之间进行?DNSServer是否提供NAT打洞机制?谢谢! 最佳答案 Bonjour本地服务发现基于“多播DNS”。每当某个客户端想要查找有关网络或网络服务

iphone - 如何创建一个小型 Mac 应用程序,通过 WiFi 网络从 iOS 应用程序接收数据?

我需要的是在这个Mac应用程序中有一个简单的屏幕,当iPhone通过WiFi网络传输字符串时,它只打印一个字符串。这个字符串只是一个来自用户在iPhone上上下调整的slider的字符串值。数据将发送到Mac应用程序,然后Mac应用程序将从WiFi网络接收此信号并简单地打印值。这是一个持续的联系。我不想同步一次。我正在尝试从Mac收听iPhone设备,以查看当用户从iPhone应用上下滑动UISlider时iPhone是否发送更多字符串。如何创建客户端?我需要使用Bonjour或其他软件吗? 最佳答案 在myanswer至thisq

ios - OSX 和 iOS 之间的蓝牙通信

我正在开发一个执行大量iOSOSX通信的应用程序。在大多数情况下,我已经解决了这个问题。我正在使用CocoaPort做沟通。通过Wifi,这很好用,而且速度很快。我正在使用Bonjour查找我的服务器。这需要使用修改后的DNSSDObjects发布服务iOS上的样式网络服务。显然,在OSX上通过蓝牙发布的服务无法被iOS看到,但反过来也能很好地工作,除了您需要保持设备配对和连接。现在我的问题是,如何提高蓝牙连接的速度?我的速度可能达到100kb/s最大值,而且似乎在大约1分钟后就停止了,即使连接仍处于打开状态。我想我需要使用AMP/HS蓝牙3.0中的东西以获得快速连接。我的理解是,这会

ios - 如何在 iOS swift 中获取 AVAHI 发布的服务的 IP 和 PORT?

我正在使用NSNetServiceBrowser并且能够在“didFindService”中找到AVAHI发布的服务列表,如下所示:服务出现:本地。_https._tcp。TEMP-Mobileeyes5-1C497B9ED382-1服务出现:本地。_https._tcp。TEMP-Mobileeyes5-1C497B8E3916-1服务出现:本地。_https._tcp。TEMP-Mobileyes5-1C497B9ED380-1但无法找到同一服务的IP地址和端口号。我发现代码没有到达“netServiceDidResolveAddress”我的代码是:classServiceDis

iOS mdns之Bonjour 客户端基本使用及完美解决各种坑~

对Bonjour完全小白的同学,推荐一篇文章iOS开发Bonjour的使用,在此也感谢此篇的作者,毕竟站在巨人的肩膀上做事情,事半功倍!假如你看完了上面的文章,对Bonjour已经有了一个基本的认识,那我们这里就直接进入主题,如果在实战中使用.想法也是封装出一个工具类,方便使用,当然要达到如下效果1.最好是单例2.最好使用简单,方便使用3.能发现所有的设备及返回所有设备的相关信息(看了很多文章都没有处理这一步,大多只是发现一台设备,没有对多台设备进行处理,也没有返回给外面使用)回到正题直接新建一个类,类名叫FindDeviceServiceTool继承自NSObject,FindDeviceS

swift - 在 Swift 应用程序上使用 NSNetService 和 NSNetServiceBrowser

我想制作一个能够发现并连接到本地网络上的对等点的应用程序,因此我决定使用bonjour框架快速实现它。但是,我无法使用Swift使Bonjour正常工作,而且我也不知道为什么。这是我用来测试此服务的代码:importFoundationletBM_DOMAIN="local"letBM_TYPE="_helloworld._tcp."letBM_NAME="hello"letBM_PORT:CInt=6543///Netserviceletnsns=NSNetService(domain:BM_DOMAIN,type:BM_TYPE,name:BM_NAME,port:BM_PORT)

ios - Swift:如果我的 iphone 没有连接到我的笔记本电脑,我就看不到所有 bonjour 服务列表

我有一个扫描器类来扫描所有可用的bonjour服务的列表,用户可以选择搜索某个bonjour服务名称中的所有设备。一切正常!除了当我从电缆上取下我的iphone时,我无法看到所有的bonjour服务。有什么想法吗?注意:我的iphone和我的笔记本电脑都通过同一网络中的wifi连接。但是iphone似乎通过我的笔记本电脑检测到bonjour服务。这是我的类(class),但我确定它与我的类(class)实现无关。classScannerViewController:UIViewController{@IBOutletweakvarserviceTextField:UITextField

ios - iOS 上的 Bonjour 问题

我正在尝试在我的iOS应用程序中创建Bonjour服务,但无法发布它。只有netServiceWillPublish委托(delegate)方法被调用,服务不会使用dns-sd显示。这是我的代码:varservice:NetService?=nilfuncstart(){createSockets()service=NetService(domain:"test",type:"_test._tcp.",name:"Test",port:Int32(port))service?.delegate=selfservice?.startMonitoring()service?.publish