MDNSD是一个开源的mDNS(多播DNS)实现,可以让设备在局域网中进行服务发现。在Android中使用MDNSD进行服务发现,可以按照以下步骤进行:
导入MDNSD库文件:首先需要将MDNSD的库文件导入到Android项目中,可以通过在项目的build.gradle文件中添加依赖来实现:dependencies { implementation 'com.github.bjornedstrom.android-mdns:mdnsd:1.0.6'}创建MDNSD服务发现器:在Android应用中创建一个MDNSD服务发现器的实例,并设置监听器来处理发现到的服务信息。MDNSD mdnsd = new MDNSD();mdnsd.setListener(new MDNSD.MDNSDListener() { @Override public void onDiscoveryStarted() { // 发现服务开始 } @Override public void onDiscoveryStopped() { // 发现服务结束 } @Override public void onServiceDiscovered(MDNSServiceInfo info) { // 处理发现的服务信息 }});开始服务发现:调用MDNSD实例的start()方法来开始服务发现。mdnsd.start();停止服务发现:在不需要继续服务发现时,可以调用MDNSD实例的stop()方法来停止服务发现。mdnsd.stop();通过以上步骤,就可以在Android应用中使用MDNSD进行服务发现。在onServiceDiscovered()方法中处理发现到的服务信息,可以根据需要进行进一步的操作,比如连接到该服务或显示在界面上等。


