Marvelous 0.7.3

Marvelous 0.7.3

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最新发布2014年12月

未声明维护。



Marvelous 0.7.3

Marvelous 是一个面向 iOS 和 OSX 平台的,非官方的漫威漫画 API 原生接口。它建立在Foundation 框架之上,并使用了 Cocoa 框架中内置的高层操作和网络抽象。此接口的设计旨在使您的项目使用简单,与 API 之间语义相关。

要求

Marvelous 需要

  • XCode 5.0 或更高版本
  • iOS 7.0(或更高版本)或 OSX 10.8 山狮(或更高版本)
  • ARC

如何开始

Marvelous 可以通过下载编译好的库或框架并手动设置它(这需要很多智慧和耐心)或者您可以使用 Cocoapods 作为 pod 使用库。

通过脏手安装

  1. 下载 iOS 的静态库OSX 的框架
  2. 静态库框架 安装到您的项目。
  3. 创建您的 Marvel 开发者账号 以获得签名 API 请求所需的公钥和私钥。当然,如果您已有开发者账号,可以跳过此步骤。
  4. 玩玩它,直到你厌倦为止!
  5. 检查包含在库/框架 .zip 文件中的文档,以了解有关库的更多信息。
  6. 检查漫威漫画在线文档,以了解有关 API 调用的更多信息。

架构

API 接口

管理器(或单例)类提供 API 接口,并能够调用特定的 API 并将其响应作为回调返回。

  • RCMarvelAPI

您可能使用的过滤器

根据调用,您可以使用过滤器来细化搜索。您只需将这些过滤器作为参数传递给在 RCMarvelAPI 类上调用的方法即可。

  • RCCharacterFilter
  • RCComicsFilter
  • RCCreatorFilter
  • RCEventFilter
  • RCSeriesFilter
  • RCStoriesFilter

可能收到的对象

每当 RCMarvelAPI 类从 API 收到非错误响应时,它将返回一个 RCQueryInfoObject 对象以及一个 RCCharacterObjectRCComicsObjectRCCreatorObjectRCEventObjectRCSeriesObjectRCStoryObject 对象。这些对象也可以包含其他自定义对象。

  • RCQueryInfoObject
  • RCCharacterObject
  • RCComicsObject
  • RCCreatorObject
  • RCEventObject
  • RCSeriesObject
  • RCStoryObject
  • RCListObject
  • RCImageObject
  • RCComicPriceObject
  • RCComicDateObject
  • RCTextObject
  • RCSummaryObject
  • RCURLObject

可能遇到的枚举类型

过滤器和对象都提供了枚举类型,以避免任何歧义并使您的操作更加便捷。

  • RCAPITypes
  • RCOrderByTypeCodes
  • RCIssueFormatCodes
  • RCIssueTypeCodes
  • RCFrequencyTypeCodes
  • RCDateDescriptorCodes
  • RCImageAspectRatioCodes
  • RCImageSizeCodes
  • RCBooleanValueCodes

示例用法

#import <Marvelous/RCMarvelAPI.h>

// First, you need to define your Marvel developer public and private keys
[RCMarvelAPI api].publicKey = @"YourMarvelPublicKey";
[RCMarvelAPI api].privateKey = @"YourMarvelPrivateKey";

// Then, you can use the API interface to search for a single resource by its identifier
NSNumber *identifier = @1234;

[[RCMarvelAPI api] characterByIdentifier:identifier andCallbackBlock:^(id result, RCQueryInfoObject *info, NSError *error) {
  NSLog(@"ERROR: %@", error);
  NSLog(@"QUERY INFO: %@", info);
  NSLog(@"RESULT: %@", result);
}];

// Or you can use the API interface to search for multiple resources by its filter
RCCharacterFilter * filter = [[RCCharacterFilter alloc] init];

filter.nameStartsWith = @"Wol";
filter.limit = @2;
filter.orderBy = @[@(RCOrderByTypeCodeNameAscending)];

[[RCMarvelAPI api] charactersByFilter:filter andCallbackBlock:^(NSArray *results, RCQueryInfoObject *info, NSError *error) {
  NSLog(@"ERROR: %@", error);
  NSLog(@"QUERY INFO: %@", info);
  NSLog(@"RESULTS: %@", results);
}];

// Finally, you can use the API interface to search for multiple resources by an identifier and a filter
NSNumber identifier = @4321;
RCCharacterFilter * filter = [[RCCharacterFilter alloc] init];

filter.name = @"Captain America";
filter.orderBy = @[@(RCOrderByTypeCodeDateModifieDescending)];

[[RCMarvelAPI api] charactersByComicIdentifier:identifier filter:filter andCallbackBlock:^(NSArray *results, RCQueryInfoObject *info, NSError *error) {
  NSLog(@"ERROR: %@", error);
  NSLog(@"QUERY INFO: %@", info);
  NSLog(@"RESULTS: %@", results);
}];

单元测试

Marvelous 包含了一个位于 MarvelousTests 文件夹中的单元测试集合。您可以在 XCode 中通过选择 MarvelousMarvelousOSX 方案,然后按 ⌘+U 快捷键执行测试套件。

文档

Marvelous 包含了用 HeaderDoc 编写的文档,该文档是 XCode 自带的。它还支持 XCode 5.0 引入的新功能,即在 Quick Help InspectorHelp PopupCode Completion 中将源代码注释作为文档显示。

在线文档

Marvelous 的在线文档可在 CocoaDocs 上找到。您还可以将这些文档作为 docsets 导入到 XCode 和/或 Dash 中。

待办事项

  • RCMarvelAPI 异步测试

致谢

Marvelous 是由 Javier Cicchelli 在同时处理其他项目时作为一个小项目创建的。我(实际上是)一位大 《Marvel》 粉丝(我可以告诉你,我是看着《X-Men》长大的...),在阅读了 Marvel 的交互式文档 中如此简单又棒妙的 API 设计后受到很大启发。好吧,我花了一些时间来精心制作这个您即将使用的美丽之作。

说实话,在这个库上的工作帮助我清空了大脑,保持了理智! :P

联系方式

敬请关注有关这个优秀库的其他更新,以及其他一些很酷的东西!此外,请不要犹豫,提出评论、建议、问题和建设性的批评。

维护者

各位,还有一件事...

卓越是用Objective-C、一些软件工程和许多极客精神、粉丝和爱打造的。欢迎你们以任何可能的方式为它做出贡献:从报告问题或修复缺陷到在Twitter/Facebook等上分享它的存在,或者在你们的应用程序中使用它。只是别忘了提一下,传递这份爱,好吗?

如果你们中有人在致力于漫威工作的,读到了这几段话,我只是想你们能在你们的应用程序中使用这个库!那将像美梦成真一样,我将会因为能给你们一些回响感到非常开心,自从我记得开始,你们就一直在支持我。总之,这是我对你们小小的感谢漫威。 ;)

许可证

卓越遵循MIT许可证。请参阅LICENSE文件以获取更多信息。

署名

API数据由漫威提供。版权所有 © 2014 漫威官方网站