AlbumFolks 1.0.2

AlbumFolks 1.0.2

Carlos Correia维护。



 
依赖项
AlamofireObjectMapper= 6.0.0
ObjectMapper>= 0
Kingfisher>= 0
PopupDialog= 0.9.2
 

AlbumFolks

CI Status Version License Platform

这个库允许像插入即用一样下载音乐轨道(专辑信息),并提供简单的UI/界面进行搜索/获取。它受到了这个原始项目(持久专辑信息存储)的启发。

示例

要运行示例项目,请克隆仓库,然后首先从Example目录运行pod install

使用 - API_KEY

虽然示例项目中有一个填充的AF_LASTFM_API_KEY_VALUE,但在安装Pod时您应该提供自己的。在这里获取它

然后简单地更改全局常量AF_LASTFM_API_KEY_VALUE

安装

AlbumFolks可以通过(尚不支持)CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中

pod 'AlbumFolks'

简单用法

查看示例 ViewController 这里

 AF_LASTFM_API_KEY_VALUE = "YOUR API KEY"

 @IBAction func searchClicked(_ sender: UIBarButtonItem) {
        let albumFolksController = AlbumFolksController(passingDelegate: self)
        self.present(albumFolksController, animated: true, completion: nil)
    }
extension ViewController : TrackChosenDelegate {
    func trackChoosen(_ track: TrackViewPopulator) {

        if let image = track.album.inMemoryImage {
            self.albumImage.image = image
        }
        
        self.trackName.text = "Track: \(track.number) - \(track.title)"

        self.trackLength.text = "Track Length: \(track.lengthStatic ?? "No Info")"
        
        self.album.text = "Album: \(track.album.name)"
        
        self.artist.text = "Artist: \(track.album.artist.name)"
        
        self.tags.text = "Tags: \(track.album.tags ?? "No Info")"
    }
}

可配置参数

所有可配置参数均以前缀 AF 开头。可以通过这些参数调整有用的参数。

搜索(SearchArtistsVC)

/* When not searching */
public var AF_MAX_RECENT_SEARCH_ENTRIES : Int

/* I recommend 2,3 minimum */
public var AF_MIN_SEARCH_QUERY_LENGTH : Int

/* Limit for the API Query - Limit number to display on the screen */
public var AF_MAX_SEARCH_RESULTS : Int

/* Last FM API present a lot of irrelevant pages w/unadmissible content... */
public var AF_MAX_PAGE_NUMBER : Int
 
/* load less pages as you write more content */
public var AF_PAGE_DECREMENT_FACTOR_PER_EXTRA_CHAR : Int

艺术家专辑(ArtistAlbumsVC)

/* After this threshold user gets a link displayed to open a webbrowser  */
public var AF_MAX_ALBUMS_TO_SHOW : Int

依赖

Pods

  • Alamofire
  • AlamofireObjectMapper(及ObjectMapper)
  • AlamofireImage
  • PopupDialog(直接插入到AlbumFolks中)

连接代码(复制的Objective-C)

  • UIScrollView+无限滚动

测试

AlbumVCEntryPointsTests.swift - 与APP核心用户交互对应的数据流测试,即从API或保存中可视化专辑。

LaunchAppTests.swift - UI测试

在此处咨询UI测试实现细节

作者

carlosmouracorreia, [email protected]

我也在推特 - twitter.com/correiask8

许可

AlbumFolks遵循MIT许可证。有关更多信息,请参阅LICENSE文件。