UPnAtom 0.7.0

UPnAtom 0.7.0

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布上次发布2016 年 8 月
SPM支持 SPM

David Robles 维护。



 
依赖
CocoaAsyncSocket~> 7.4.1
AFNetworking~> 2.5.2
Ono~> 1.2.0
GCDWebServer~> 3.2.2
 

UPnAtom 0.7.0

  • 作者
  • David Robles

UPnAtom: Modern UPnP in Swift

一个开源的通用即插即用(UPnP)库,专注于使用 UPnP A/V 配置文件进行流媒体协调;用 Swift 编写,但适用于 Objective-C 和 Swift 应用程序。由于 iOS 7 的限制,不支持通过 Clang 模块支持动态库,因此只支持 iOS 8 及更高版本。

要求

  • iOS 8.0+
  • OSX 10.9+
  • Xcode 7.2

安装

将以下内容添加到 Podfile

pod 'UPnAtom'

使用方法

Objective-C
@import UPnAtom;
Swift
import UPnAtom
更多文档即将推出。

目前,强烈建议您查看 示例项目。它们是完全相同的应用程序,但是一个用 Swift 编写,另一个用 Objective-C 编写。它们展示了库的几乎全部功能,除了添加自己的 UPnP 服务/设备类。如果您创建了自定义的服务/设备类,请像以下示例中的 UPnAtom.swift 一样进行注册。

注意:在 iOS 上,传输安全已阻止明文 HTTP(http://)资源加载,因为这是不安全的。由于许多,如果不是大多数,UPnP 设备通过 http 服务器资源,可以通过您应用程序的 Info.plist 文件配置临时异常。移除此限制的风险自负。

里程碑

  • [x] 通过 CocoaPod 框架在 Swift 和 Objective-C 项目中使用
  • [x] 通过类注册创建自己的服务和设备对象
  • [x] UPnP 版本 1 兼容
  • [x] 能够在初始发现后存档 UPnP 对象并在某个地方持久化,例如通过 NSCoder/NSCoding
  • [x] 支持 OSX 10.9+
  • [ ] Swift 2.0
  • [x] 内部实现的 SSDP 发现
  • [x] A/V 配置文件功能与 upnpx 库兼容
  • [ ] 文档(在此期间,请参阅 示例项目
  • [ ] UPnP 版本 2 兼容

已测试支持的设备

UPnP 服务器
UPnP 客户端

贡献

目前我仅通过 Github issue 接收功能请求、错误和错误修复。对于功能或重大更改,很抱歉不支持 pull request,直到库足够成熟。

  • 如果您想 提出一个一般性问题,欢迎使用 Stack Overflow
  • 如果您 发现了一个错误,请提出问题。
  • 如果您 有功能请求,请提出问题。