美文网首页
NSNetService 和 NSNetServiceBrows

NSNetService 和 NSNetServiceBrows

作者: 雨天多久就 | 来源:发表于2020-03-08 11:18 被阅读0次

    NSNetService 表示一个网络服务。可以代表你的应用程序发起的一个网络服务(也可以是别人的一个网络服务)。
    这个类的主要功能:1.可以让应用程序发布服务 2.可以解析对应服务的套接字地址。

    NSNetServiceBrowser 类用来获取网络上的网络服务对象(NSNetService)。
    获取对应的NSNetService对象后,就可以去进行连接等操作

    简单的使用步骤(以局域网对战为例):
    玩家A来创建房间:

    1. 初始化创建NSNetService实例。
    - (instancetype)initWithDomain:(NSString *)domain type:(NSString *)type name:(NSString *)name port:(int)port;
    

    (注:默认创建完后,该实例对象是在当前线程的Runloop的默认mode下运行等待的。)

    1. 将我们创建的服务(NSNetService实例)发布出去
    这两个方法都可以。
    - (void)publish; // 发布使用默认配置
    - (void)publishWithOptions:(NSNetServiceOptions)options; // 可以自定义更多的设置
    

    3.等待玩家B的进入。

    4.玩家B首先要获取网络上的所有网络服务。

    NSNetServiceBrowser 实例化,并设置代理。
    

    5.玩家B选择其中一个网络服务,开始解析对应的服务地址。

        NSNetService *service = ……;
        service.delegate = self;
        [service resolveWithTimeout:20];
    

    6.在service的代理回调里获取对应服务的地址,然后利用socket进行连接。

    相关文章

      网友评论

          本文标题:NSNetService 和 NSNetServiceBrows

          本文链接:https://www.haomeiwen.com/subject/lbqddhtx.html