首页 > 代码库 > Android UPnP/DLNA 应用以及cling 2.1.1依赖库

Android UPnP/DLNA 应用以及cling 2.1.1依赖库

UPnP(通用即插即用 openconnectivity.org/resources/specifications/upnp)是一套网络协议制定的技术标准,允许智能设备(如个人计算机、智能电视、手机、网关)在网络中相互发现并建立对等的网络连接,可用于数据共享,通信和娱乐。 UPnP 使用的上层协议/规范有:SSDP(简单设备发现协议)、HTTP、SOAP(简单对象访问协议)、XML。

很多路由器的NAT穿透的即是通过 UPnP 实现的,路由器将自身描述为 Internet Gateway 设备,允许任何本地 UPnP 控制点执行各种操作(如检索设备的外部IP地址,添加或删除端口映射)。下图是一台开启UPnP功能的路由器( UPnP网关设备)被Windows 10 发现,以及被Android程序所发现。

技术分享

技术分享

 

DLNA(数字生活网络联盟 https://spirespark.com/dlna)是由广泛的协议和技术标准制定的设备互联、数字媒体娱乐的解决方案,DLNA 的技术架构里包含了 UPnP。

技术分享

cling(https://github.com/4thline)是一个 Java 实现的 UPnP/DLNA 协议栈,该库依赖不少东西,参考cling-2.1.1\distribution\src\dist下的README文件以及源码的pom.xml,使用cling你还需要以下依赖库:

  • cling-core-2.1.1.jar,cling-support-2.1.1.jar
  • seamless-http-1.1.1.jar,seamless-util-1.1.1.jar,seamless-xml-1.1.1.jar
  • jetty-client-8.1.21.v20160908.jar,jetty-continuation-8.1.21.v20160908.jar,jetty-http-8.1.21.v20160908.jar,jetty-io-8.1.21.v20160908.jar,jetty-security-8.1.21.v20160908.jar,jetty-server-8.1.21.v20160908.jar,jetty-servlet-8.1.21.v20160908.jar,jetty-util-8.1.21.v20160908.jar,servlet-api-3.0.jar
  • javax.enterprise-cdi-api-1.2.jar,javax.mail-mail-1.4.7.jar
  • net.sf.kxml-kxml2-2.3.0.jar
  • org.dbunit-dbunit-2.2.3.jar
  • org.hibernate-hibernate-core-3.6.10.Final.jar
  • org.slf4j-slf4j-api-1.6.6.jar,org.slf4j-slf4j-jdk14-1.6.6.jar

这些库可以使用pom.xml中指明的版本也可以使用他们的最新稳定版。

Android UPnP/DLNA 应用以及cling 2.1.1依赖库