Skip to content

Latest commit

 

History

History
83 lines (72 loc) · 1.97 KB

README.md

File metadata and controls

83 lines (72 loc) · 1.97 KB

Swift-iTunesAPI-Demo

An iTunes API demo written in Swift.

Screenshots

  • Top screen

APIs

Objects

  • iTunes Feed types:
    • TopAudiobooks
    • TopFreeEbooks
    • TopPaidEbooks
    • TopTextbooks
    • NewApps
    • NewFreeApps
    • NewPaidApps
    • TopFreeApps
    • TopFreeIPadApps
    • TopGrossingApps
    • TopGrossingIPadApps
    • TopPaidApps
    • TopPaidIPadApps
    • TopMovies
    • TopSongs
    • TopAlbums
    • TopIMixes
    • TopMusicVideos
    • TopPodcasts
    • TopTVEpisodes
    • TopTVSeasons
  • iTunes Search result types:
    • Movie
    • Podcast
    • Music
    • MusicVideo
    • AudioBook
    • ShortFilm
    • TVShow
    • Software
    • Ebook:

Sample code

// Get entries from a specific RSS feed type
let target = ItunesAPITarget(query: ItunesFeedQuery(country: "us",feedType: feedType, genre: nil, limit: 50))

ItunesProvider.request(target, completion: { (result) -> () in
	switch result {
	case let .Success(response):
		do {
			let json = try response.mapJSON() as! [String: AnyObject]
			let ModelClass = ItunesFeedType.associatedModel(forFeedType: self.feedType)
			switch ModelClass {
			case is IOSAppFeedEntry.Type:
				self.items = Mapper<IOSAppFeedEntry>().mapArray(json["feed"]!["entry"])!
			default:
				self.items = Mapper<ItunesFeedEntry>().mapArray(json["feed"]!["entry"])!
			}
		} catch {
			// Error
			self.items = []
		}
	case let .Failure(error):
		// Do something to handle error
	}
})

Libraries

This demo uses:

License

SegmentedController is released under the MIT license. See LICENSE for details.