服务注册如何与NsdManager一起使用?

时间:2016-12-06 01:27:27

标签: android mdns dns-sd nsd

我刚刚开始使用Android的NSDManager类使用多播DNS。我从这个链接https://android.googlesource.com/platform/development/+/master/samples/training/NsdChat/src/com/example/android/nsdchat/NsdHelper.java找到了NsdChat示例。在这段代码中,似乎注册服务相当简单,但我想了解它的基本工作机制,我无法在任何地方找到这些信息。

public void registerService(int port) {
    tearDown();  // Cancel any previous registration request
    initializeRegistrationListener();
    NsdServiceInfo serviceInfo  = new NsdServiceInfo();
    serviceInfo.setPort(port);
    serviceInfo.setServiceName(mServiceName);
    serviceInfo.setServiceType(SERVICE_TYPE);
    mNsdManager.registerService(
    serviceInfo, NsdManager.PROTOCOL_DNS_SD, mRegistrationListener);
}

如果有人对此有经验并可以向我解释,我们非常感谢。这些是我现在能想到的主要问题。

1)当调用registerService()时,注册此服务的应用程序是谁?

2)注册过程是什么?名称和端口等信息是否像DNS一样存储在查找表中?

3)如果有人有一个解释这是如何工作的图表,那就太棒了。

提前谢谢。

0 个答案:

没有答案