这个Pod可以帮助您
该Pod当前配置为在OSX中构建,但应该没有太大问题将其扩展到支持iOS。我只是不知道如何配置pod项目来处理这一点,而且现在没有时间学习。非常欢迎拉取请求。此项目使用objectiveflickr和SimpleStateMachine。
要运行示例项目,请克隆仓库,然后首先从示例目录运行pod install
。然后进入AppDelegate.m文件,用您的应用flickr凭证替换
[WDFlickrFactory setApiKey:@"--YOUR--KEY--"];
[WDFlickrFactory setApiSecret:@"--YOUR--SECRET--"];
占位符字符串。这是必要的,因为除了获取buddy图像之外,所有操作都需要进行身份验证和授权。您可以在以下链接创建您的flickr应用:链接。现在您已准备好构建示例应用程序并将其用于测试。登录(浏览器将弹出flickr的OAuth身份验证页面),选择一些要上传的媒体文件,然后点击上传按钮。示例应用程序会打印大量调试信息,这在不进行实际应用时不需要。整个示例应用程序都包含在AppDelegate类中。
在您的代码中使用此pod的基本步骤
- (WDFlickrUploadTask *)nextTask
方法返回WDFlickrUploadTask对象,上传器就会继续上传。一旦您返回nil,上传器将进入完成状态。- (void)WD_flickrControllerNotificationHandler:(NSNotification *)aNote
方法。- (void)WD_initFlickr
方法显示了如何使用WDFlickrFactory来配置和创建控制器和上传器。主要有两个类:WDFlickrController 和 WDFlickrUploader。WDFlickrController 实现了与 Flickr 的基本通信,例如登录、上传一张图片、创建相册等。另一方面,WDFlickrUploader 实现了批量图片上传的逻辑,并将文件分配给指定的相册。如果指定的相册不存在,它们将自动创建。这两个类都作为状态机实现。控制器更基础,基于 switch-case,而上传器则采用更结构化的方法,利用了 SimpleStateMachine cocoa pod。WDFlickrUploader 有大量单元测试。一些方法同步,一些异步,取决于在特定情境下哪种方法更好。以下是两个状态机的状态图。第二个更精确,如果你需要更深入理解代码,它将非常有帮助。上传器具有简单的错误处理,如果失败则重复几次。
WDFlickrPhotoUploader 通过 CocoaPods 提供。要安装它,只需将以下行添加到你的 Podfile
pod "WDFlickrPhotoUploader"
别忘了配置你的应用程序的 API 密钥和 API 密码!(从 flickr 获得这些信息)
Fred,major [dot] freddy [at] yahoo [dot] com
WDFlickrPhotoUploader 在 MIT 许可下提供。有关更多信息,请参阅 LICENSE 文件。