我可以build立自己的networking框架(依赖于AFNetworking)作为watchOS2框架吗?
我一直在试图修改我的项目来支持WatchOS2架构。 目前我有一个基于AFNetworking的networking框架。 到目前为止,我一直在使用我的手表应用程序。 现在我正在尝试构buildwatchos / watchsimulator平台的框架。
我得到的是一些AFNetworking类的“SystemConfiguration / SystemConfiguration.h”文件找不到错误。
我知道系统configuration不是watchOS2可用的系统框架之一。 而对于networking苹果说 :
联网
支持基于networking的操作包括以下技术:
WatchKit扩展可以使用NSURLSession对象直接访问networking。 WatchKit扩展可以完全访问NSURLSessionfunction,包括在后台下载文件的能力。 有关如何使用此类的信息,请参阅URL加载系统编程指南。 Watch Connectivity框架支持Watch应用程序和iOS应用程序之间的双向通信。 使用此框架来协调这两个应用程序之间的活动。 有关更多信息,请参阅与您的Companion iOS应用程序通信。
我想支持iOS和watchos为我的networkingsdk。 有没有办法使这个项目为watchOS平台build立? 或者是这意味着我只允许在我的手表应用程序内使用NSURLConnection?
根据AFNetworking文件 :
URL加载URL加载系统中最常用的类允许您的应用程序从源检索URL的内容。 您可以通过多种方式检索该内容,具体取决于您的应用程序的要求。 您select的API取决于您的应用程序所针对的OS X或iOS的版本,以及您是否希望将数据作为文件或内存数据块获取:
- 在iOS 7及更高版本或OS X v10.9及更高版本中,NSURLSession是执行URL请求的新代码的首选API。
如果您查看该页面上的图表,则表明AFNetworking在某些情况下实际上使用了NSURLSession。 但是,由于SystemConfiguration框架在watchkit中不可用,所以您需要删除该依赖项以将AFNetworking包括在iOS和Watchkit应用程序中。
我不确定AFNetworking使用这个框架(这可能是非常重要的!),但是如果在手表应用程序中有某些文件不需要这些设置,那么您可以修改AFNetworking源代码,使其不包含这些项目手表应用程序:
#if os(iOS) // Include SystemConfiguration framework #elseif os(watchOS) // Exclude SystemConfiguration framework #endif
下面是最近在github上提交AFNetworking支持watchOS的提交。
看着更新日志..
版本2.6.0支持watchOS …
此版本现在支持watchOS 2.0,它依赖于仅在Xcode 7和iOS 9 / watchOS 2.0 / OS X 10.10中存在的目标条件。 如果您使用CocoaPods安装库,AFNetworking将在较老的平台上定义这些目标条件,从而允许您的代码进行complile。 如果您不使用Cocoapods,则需要将以下代码添加到PCH文件中。
- 如何将AFHTTPClient,Afnetworking 1.0迁移到2.0
- AFNetworking – 如何发出POST请求
- AFNetworking – 如何设置超时时重试的请求?
- 使用networking传递在GET方法中传递参数
- CocoaPods UIImageView + AFNetworking.h无法识别的select器setImageWithURLRequest
- 如何在AFNetworking 2.0中设置请求超时和caching策略?
- 库找不到-lPods-AFNetworking
- 在AFNetworking成功调用后self.tableView reloadData不工作
- 使用AFNetworking在swift上传图片