我正在使用Cling庫編寫upnp應用程序。爲了得到我的服務/服務器,我做了這樣的事情。僅搜索我的服務
public void searchForServers() {
/*
do stuff....
*/
// Search for new devices
getUpnpService().getControlPoint().search(new UDADeviceTypeHeader(new UDADeviceType("MyFantasticService")));
}
我曾預計,登記處只應包含「MyFantasticService」的實例,但事實證明,很多不同的UPnP設備似乎接聽我的電話....
有我誤解的東西在這裏?似乎很清楚如何在手冊中做..
僅僅因爲它是一個標準,不要指望它在每個設備上都能正確實現。我見過馬屎(正如我們在這裏所說的),在攝像頭上使用RTSP實現......所以如果你確定**你**按照你應該做的那樣做一切事情,那麼機會就是設備不會。在這種情況下再次檢查結果並消除誤報。無論如何,你不應該相信這種輸入。 – Fildor
是的,我在那個方向思考。 –
獲取_Lots_的不同回答表明您身邊存在問題。與所有UPnP一樣,我建議用wireshark或類似的方法檢查實際的網絡流量。確保電匯上的M-SEARCH消息正確無誤。 – jku