I registered some service with subttypes on my linux pc using apple bonjour mdnsresponder .

  $dns-sd Jon _myNet._tcp.,_netone . 9000

and I tried to browse that on my android phone using jmdns.3.4.1.jar file ( http://jmdns.sourceforge.net/ )

Map httpsub = jmdns.listBySubtype("_smartplace._tcp.local.", 6); System.out.println( " Subtype SIZE ::: + httpsub.size() +"Resolve ::: "+ httpsub.get("_netone").toString()) ; // I have reigstred only one subtypes service so printing only one

here the out for is Subtype SIZE ::: 1 Resolve :::null

http://tools.ietf.org/html/draft-cheshire-dnsext-dns-sd-08#page-22 from the above link , at page 22 the RFC discuss that , It is required to browse the by subtypes in case of specifically browsing for the particular service to find the subset of it , it helps to find the particular service instead browsing all .

In our case jmdns browse for all the subset of service type and list them in the map, I feel this is a over head for the client , becoz client does not need to bother for the services with different subset .. in this case jmdns is bit uncompatible for this kind of service browse .

above is my understanding , pls any one correct me if I have misunderstood ..

And if this is correct then it seems the subdomain is really absent from the service description within jmdns (so it is probably a real bug).