我有一个在安卓中发布的服务.如何在iOS中浏览它



我们正在为Android和iOS创建一个多平台应用程序。
目前,我们有一个在Android上发布的服务,其中包含这些信息
类型:_http._tcp 或 _http._udp名称:abc控制器港口

现在,我想浏览iOS应用程序中的"abcController"服务以获取用于连接的主机(ip)列表。我正在尝试使用这些代码来做到这一点

 NSString* servicesOfType = @"abcController._http._tcp.";
NSString* domain  = @"";
domainBrowser = [[NSNetServiceBrowser alloc] init];
[domainBrowser setDelegate:self];
[domainBrowser searchForServicesOfType:servicesOfType inDomain:domain];

但是,它只调用netServiceBrowserWillSearch,没有任何响应。

任何帮助都非常感谢!

您的服务名称需要以"_"开头,否则它将被混淆为域。

我找到了我的问题的解决方案。事实证明,我的服务是在udp中发布的,因此。用这个代码。

- (void) initBrowsingServices
{
    NSString* servicesOfType = @"_http._udp.";
    NSString* domain  = @"local";

   domainBrowser = [[NSNetServiceBrowser alloc] init];
   [domainBrowser setDelegate:self];
   [domainBrowser searchForServicesOfType:servicesOfType inDomain:domain];
   domains = [[NSMutableArray alloc] init];
   searching = NO;
}

我现在可以接受我的服务了。

相关内容

  • 没有找到相关文章