Android 使用网络服务发现代码时如何获取IP
我尝试使用“网络服务发现”示例代码来查找服务。 提供的资料来源 NsdHelper发现服务类代码如下:Android 使用网络服务发现代码时如何获取IP,android,Android,我尝试使用“网络服务发现”示例代码来查找服务。 提供的资料来源 NsdHelper发现服务类代码如下: public void onServiceFound(NsdServiceInfo service) { Log.d(TAG, "Service discovery success" + service); if (!service.getServiceType().equals(SERVICE_TYPE)) { Log.d(TAG, "Unknown Serv
public void onServiceFound(NsdServiceInfo service) {
Log.d(TAG, "Service discovery success" + service);
if (!service.getServiceType().equals(SERVICE_TYPE)) {
Log.d(TAG, "Unknown Service Type: " + service.getServiceType());
} else if (service.getServiceName().equals(mServiceName)) {
Log.d(TAG, "Same machine: " + mServiceName);
} else if (service.getServiceName().contains(mServiceName)){
mNsdManager.resolveService(service, mResolveListener);
}
}
我尝试使用“service.getHost()”,但结果为空。
如何获取每个服务的IP?当您将
NsdServiceInfo
作为参数传递时,如果未调用,则地址为null
。构造函数没有设置地址。我使用此方法发现avahii服务,而不是registerService注册的服务。这可以使用吗?所以你不是注册服务的人,对吗?是的,你是对的\。好吧,我的第一条评论仍然有效。如果第三方代码没有“遵守规则”,那么当您将NsdServiceInfo
作为参数传递时,您可能会得到意想不到的结果,就像您得到的结果一样,因此如果没有调用,则地址为null
。构造函数没有设置地址。我使用此方法发现avahii服务,而不是registerService注册的服务。这可以使用吗?所以你不是注册服务的人,对吗?是的,你是对的\。好吧,我的第一条评论仍然有效。如果第三方代码没有“遵守规则”,您可能会得到意想不到的结果,就像您得到的结果一样。。。