0
こんにちは友人アンドロイドアプリでNETWROK SERVICE DISCOVERYを使って "_dockset._tcp"サービスタイプを探しています。私は正常にデバイスリストを取得していますが、私はすべてのデバイスのInetAddresのリストを取得することができません。私は最初に発見されたデバイスのInetAdressを取得するだけですが、私はすべてのデバイスのInetAdressを発見します。あなたのお手伝いに大変感謝しています。あなたは、サービス情報の操作を実行する必要がネットワークサービスディスカバリでInetAddressのリストを取得するには?
mResolveListener= new NsdManager.ResolveListener() {
@Override
public void onResolveFailed(NsdServiceInfo serviceInfo, int errorCode) {
Log.d("resolve service failed"," with error"+errorCode);
mNsdServiceList.remove(serviceInfo);
}
@Override
public void onServiceResolved(NsdServiceInfo serviceInfo) {
if(!mNsdServiceList.contains(serviceInfo)){
mNsdService.add(serviceInfo);
mNsdManager.resolveService(....);
}
}
};
:私はどのようにInetAddess
あなたの答えをありがとうが、私はあなたexplain.ifを持っていない(!mNsdServiceList.contains(serviceInfo)){ mNsdService.add(serviceInfo); mNsdManager.resolveService(....); } – LanguageMaster
'mNsdServiceList'はちょうど' List 'です。この文は、そのリストにそのnsdserviceinfoが含まれているかどうかを確認するものです。 –
しかし、私はserviceinfoを1つだけ戻しています。私は探しているサービスとネットワークに複数のデバイスがあります。 onServiceFoundメソッドではすべてのデバイスが取得されていますが、解決リスナーでは1つのデバイスのみが解決されます – LanguageMaster