LastFm 1.17.0

LastFm 1.17.0

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
Released最新版本2016年10月

Kevin Renskerseightytwo 维护。



LastFm 1.17.0

  • 作者
  • Kevin Renskers

LastFm - 基于 block 的 Last.fm SDK 用于 iOS 和 Mac OS X

基于旧 Last.fm iPhone 应用中的 LastFMService,但非阻塞、更易读、更易用(且易于扩展),且依赖更少。

特性

  • 基于 block 编程,易于使用
  • 只有一个依赖项 (KissXML)
  • 返回正确的数据类型值 (NSDate, NSURL, NSNumber, 等)
  • 挂钩自己的缓存方法 (GVCache, NSCache, Core Data, SYCache, EGOCache, ...)
  • 可取消的操作,适用于单元格滚动出屏幕且您不再需要 API 调用的情况
  • 积极开发和维护(在官方 Last.fm Scrobbler 应用中使用!)

使用

// Set the Last.fm session info
[LastFm sharedInstance].apiKey = @"xxx";
[LastFm sharedInstance].apiSecret = @"xxx";
[LastFm sharedInstance].session = session;
[LastFm sharedInstance].username = username;

// Get artist info
[[LastFm sharedInstance] getInfoForArtist:@"Pink Floyd" successHandler:^(NSDictionary *result) {
    NSLog(@"result: %@", result);
} failureHandler:^(NSError *error) {
    NSLog(@"error: %@", error);
}];

// Scrobble a track
[[LastFm sharedInstance] sendScrobbledTrack:@"Wish You Were Here" byArtist:@"Pink Floyd" onAlbum:@"Wish You Were Here" withDuration:534 atTimestamp:(int)[[NSDate date] timeIntervalSince1970] successHandler:^(NSDictionary *result) {
    NSLog(@"result: %@", result);
} failureHandler:^(NSError *error) {
    NSLog(@"error: %@", error);
}];

将使用 getSessionForUser:password:successHandler:failureHandler: 获取的用户名和会话保存在某处,例如在 NSUserDefaults 中,并在应用启动时将它们设置回 [LastFm sharedInstance].username[LastFm sharedInstance].session

请参见包含的 iOS 项目以获取有关登录、注销、获取艺术家信息等示例。

示例应用程序

有一个功能丰富的示例应用程序可用于处理登录、注销、在 tableview 中获取大量艺术家并将其详细信息显示出来、缓存、取消 API 调用等。

要安装示例应用程序,您需要使用 CocoaPods:运行 pod install。您还可以通过运行 pod try LastFm 来尝试它。

由于使用了 storyboards,示例应用程序仅适用于 iOS 5 及更高版本。本身 SDK 在 iOS 4 及更高版本上工作。

安装

您可以使用 CocoaPods 安装 LastFm。只需将以下行添加到您的 Podfile 中,然后运行 pod install

pod 'LastFm'

您也可以简单地克隆存储库并将 LastFm 子文件夹拖到您的 Xcode 项目中。请确保您自己安装了 KissXML。

要求

  • LastFm 是使用 ARC 和现代 Objective-C 语法构建的。您需要 iOS 4 和 Xcode 4.4 或更高版本才能在项目中使用它。
  • 您需要通过在http://www.last.fm/api注册来获取自己的API密钥。
  • KissXML

问题和疑问

有bug吗?请在GitHub上创建一个问题

使用LastFm的应用程序

您是否在iOS或Mac OS X应用中使用LastFm?请发送包含更新的README.md文件的pull request。

许可

LastFm受MIT许可证的约束。有关更多信息,请参阅LICENSE文件。