2010-07-12 44 views
22

Có thư viện nào để triển khai phát hiện và xuất bản dịch vụ qua UPnP không?Thư viện UPnP cho Java

(Tôi cố gắng để tìm thấy một số lựa chọn thay thế để JmDNS rằng trong khi giao thức khôn ngoan làm việc tốt cho mục đích của chúng tôi, đã rất không ổn định như một thư viện, có một xu hướng không thể chấp nhận xấu cho deadlocking chính nó.)

+1

Bạn cũng có thể thử: http://sourceforge.net/projects/cgupnpjava/ – lordhong

+0

Tôi nghĩ chúng ta khắc phục tất cả sự bế tắc mà chúng tôi từng thấy trong JmDNS, nhưng nó có vấn đề lớn hơn nhiều, ví dụ nó không hoạt động * ở tất cả * trên một số hệ thống. – Trejkaz

Trả lời

26

http://4thline.org/projects/cling/

Vùng chứa, thư viện và công cụ DLNA/UPnP mã nguồn mở cho các nhà phát triển Java và Android

+0

Cảm ơn - đây chính xác là những gì tôi đang tìm kiếm –

+0

@Roland: Bạn có thể chỉ cho tôi biết chính xác bạn muốn làm gì không? tôi cần giúp đỡ về việc phát hiện thiết bị UPnP trong android .. Tôi muốn tạo ứng dụng mà thiết bị Android của tôi hoạt động như một phương tiện có thể truyền trực tuyến phương tiện từ internet và sau đó cung cấp cho thiết bị UPnP..Bất cứ trợ giúp nào về điều này .. –

+0

Cảm ơn tôi đã mong chờ điều này chỉ ... cảm ơn –

9

Bạn cũng có thể thử ohNet bao gồm các ràng buộc Java và ngăn xếp điểm/thiết bị theo giấy phép BSD.

(Disclaimer: Tôi đã đóng góp vào dự án này)

+0

thú vị ... nhưng tôi không thể tìm thấy làm thế nào tôi có thể nhận được cổng UDN của tôi với nó. có thể làm điều đó không? –

+1

@IMAnis_tn sử dụng CpDeviceListUpnpDeviceType ("upnp.org", "InternetGatewayDevice", 1, người nghe). 'người nghe' sẽ được gọi lại mỗi lần tìm thấy một thiết bị như vậy. Sử dụng hàm getUdn() để truy xuất udn thiết bị. Bạn cũng có thể sử dụng CpDeviceListUpnpServiceType nếu bạn muốn tìm kiếm một loại dịch vụ cụ thể. – simonc

+0

@IMAnis_tn cũng cần xem xét tổng quan về Điểm kiểm soát trên [project wiki] (http://www.openhome.org/wiki/OhNet) để biết chi tiết về cách khởi tạo thư viện – simonc