SimpleInstapaperKit 1.0.0

SimpleInstapaperKit 1.0.0

测试测试
语言语言 Obj-CObjective C
许可证 BSD
发布最后发布2014年12月

David Beck 维护。




  • 作者:
  • David Beck

SimpleInstapaperKit 是 Instapaper 简单开发者 API 的最小化 iOS 封装。使用此版本的 API,您可以验证登录信息并向用户的 Instapaper 列表中添加 URL。

要求

  • iOS 6.0
  • 此项目使用 ARC。如果要在非 ARC 项目中使用它,必须在目标设置 > 编译设置 > 编译源中添加 -fobjc-arc 编译器标志到 TUSafariActivity.m。

安装

  • 将 SimpleInstapaperKit 子文件夹添加到您的项目中。
  • 将您的目标链接到 SecurityQuartzCore 框架。

用法

(见示例 Xcode 项目)

IKRequest

IKRequest 是连接到 API 并由其他类使用的类。它将当前登录用户名存储在 NSUSerDefaults 中,并将密码存储在钥匙串中。

调用 +[IKRequest setUsername:password:completed:] 将与服务器进行交互以验证登录凭证。如果它们是正确的,则会保存登录信息。无论哪种方式,都会调用完成块。

调用 +[IKRequest requestForAddWithURL:completed:] 将给定的 URL 添加到用户的列表中,不包含标题或描述。块中的 success 参数由成功的 HTTP 请求以及 HTTP 状态码(200 或 201)决定。

IKInstapaperActivity

Login Screenshot

IKInstapaperActivity 是用于在 UIActivityViewController 中的 UIActivity 子类。它将任何在活动项数组中的 NSURL 添加到用户的 Instapaper 列表中。

NSURL *URL = [NSURL URLWithString:@"http://github.com/davbeck/SimpleInstapaperKit"];
IKInstapaperActivity *activity = [[IKInstapaperActivity alloc] init];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[URL] applicationActivities:@[activity]];

注意,您可以将该活动包含在任何 UIActivityViewController 中,并且只有在活动项中包含 URL 并且用户已登录或设备上安装了 Instapaper 应用时,才会显示给用户。如果由于身份验证问题无法添加 URL,将显示 IKLoginViewController,并且 URL 将尝试重新添加。

IKLoginViewController

Login Screenshot

IKLoginViewController 是一个 UIViewController,用于获取用户的用户名和密码,检查 API 是否成功登录,然后保存凭据。

代码 `-[IKLoginViewController initWithCompletionHandler:]`(或直接使用 -[IKLoginViewController init])将创建一个主要的“操作即遗忘”的视图控制器。您只需要将其嵌入到一个 UINavigationController 中。

IKLoginViewController *loginViewController = [[IKLoginViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:loginViewController];

[self presentViewController:navigationController animated:YES completion:nil];