Android NSD:registerService返回端口0和主机空。
创始人
2024-08-14 21:00:42
0

问题描述: 在使用Android的NSD(Network Service Discovery)功能时,调用registerService方法注册服务时,可能会返回端口为0和主机为空的情况。

解决方法:

  1. 确保已经正确配置了NSD权限和相关的网络权限。在AndroidManifest.xml文件中添加以下权限:





  1. 在注册服务之前,确保设备已经连接到了一个有效的网络。可以使用ConnectivityManager类来检查网络连接状态:
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
    // 网络已连接
} else {
    // 网络未连接
}
  1. 确保在注册服务之前已经初始化了NsdManager对象,并且已经设置了注册服务的回调监听器:
NsdManager nsdManager = (NsdManager) getSystemService(Context.NSD_SERVICE);
NsdManager.RegistrationListener registrationListener = new NsdManager.RegistrationListener() {
    @Override
    public void onRegistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
        // 注册失败处理逻辑
    }

    @Override
    public void onServiceRegistered(NsdServiceInfo serviceInfo) {
        // 注册成功处理逻辑
    }

    @Override
    public void onServiceUnregistered(NsdServiceInfo serviceInfo) {
        // 取消注册处理逻辑
    }

    @Override
    public void onUnregistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
        // 取消注册失败处理逻辑
    }
};
  1. 在调用registerService方法时,确保传递了正确的NsdServiceInfo对象,并且设置了正确的端口和主机:
NsdServiceInfo serviceInfo = new NsdServiceInfo();
serviceInfo.setServiceName("MyService");
serviceInfo.setServiceType("_http._tcp.");
serviceInfo.setPort(1234); // 设置正确的端口号
serviceInfo.setHost(InetAddress.getLocalHost()); // 设置正确的主机地址

nsdManager.registerService(serviceInfo, NsdManager.PROTOCOL_DNS_SD, registrationListener);

注意:上述代码示例中设置了固定的端口和主机,实际使用时应根据具体需求进行设置。

通过以上步骤,应该可以解决Android NSD中registerService返回端口0和主机空的问题。

相关内容

热门资讯

长期以来!闲聚辅助器!一直确实... 长期以来!闲聚辅助器!一直确实有开挂辅助工具(有挂透明挂)-哔哩哔哩1、玩家可以在闲聚辅助器透视最简...
据了解!天天微友有辅助吗!好像... 据了解!天天微友有辅助吗!好像是真的有开挂辅助脚本(有挂透明挂)-哔哩哔哩1、首先打开天天微友有辅助...
这一现象值得深思!凑一桌游戏辅... 这一现象值得深思!凑一桌游戏辅助神器!一贯真的有开挂辅助插件(有挂教学)-哔哩哔哩该软件可以轻松地帮...
技巧辅助挂!广西老友玩有破解视... 技巧辅助挂!广西老友玩有破解视频!果然真的有开挂辅助挂(有挂总结)-哔哩哔哩一、广西老友玩有破解视频...
技巧辅助挂!福建兄弟十三水有没... 技巧辅助挂!福建兄弟十三水有没有挂!都是存在有开挂辅助脚本(新版有挂)-哔哩哔哩1、每一步都需要思考...
教程辅助挂!情怀宜春辅助挂定制... 教程辅助挂!情怀宜春辅助挂定制交易平台!原来确实有开挂辅助攻略(的确有挂)-哔哩哔哩暗藏猫腻,小编详...
此事迅速冲上热搜!pokerm... 此事迅速冲上热搜!pokermaster脚本!一贯真的是有开挂辅助教程(有挂存在)-哔哩哔哩1、上手...
截至发稿!江西中指黑科技辅助软... 截至发稿!江西中指黑科技辅助软件!真是存在有开挂辅助攻略(有挂技术)-哔哩哔哩1、上手简单,内置详细...
此事引发网友热议!菜鸟黑桃a3... 此事引发网友热议!菜鸟黑桃a3辅助!一直是有开挂辅助工具(真实有挂)-哔哩哔哩1、菜鸟黑桃a3辅助公...
技巧辅助挂!广东雀神智能插件!... 技巧辅助挂!广东雀神智能插件!一直真的是有开挂辅助器(有挂教学)-哔哩哔哩1、玩家可以在广东雀神智能...