With the Musixmatch app installed and just a few lines of code your app can access the world's largest lyrics catalog to provide a better experience to your users. With the Musixmatch extension you can:
You can open Musixmatch whenever you want to show lyrics on time for your nowplaying track. Just give to Musixmatch extension these datas:
Adding Musixmatch support to your app is easy. To demonstrate how it works, we have demo sample app for iOS that showcase all of the Musixmatch features.
Step 1: Download the Source Code and Demo Apps
To get started, download the Musixmatch App Extension Github project or get the latest build here.
Inside the downloaded folder, you'll find the resources and examples needed to integrate with Musixmatch.
Step 2: Chose a song
Tap on 'Add Music' button to reproduce a song
Step 3: Open Musixmatch Extension
Tap on 'Lyrics' button and choose Musixmatch (the fist time you ave to enable if from 'More').
Add lyrics button on your view, you can enable it by check isSystemAppExtensionAPIAvailable, Musixmatch Extension is available for every iOS8 devices. Note that if users doesn't have Musixmatch installed or old version installed without Lyrics Extension the Extension open the AppStore on Musixmatch app page to download/update. Next we need to wire up the action for this button to this method in your UIViewController:
- (IBAction)lyrics:(id)sender {
MPMediaItem *item = [[MPMusicPlayerController iPodMusicPlayer] nowPlayingItem];
if (item) {
[[MXMLyricsAction sharedExtension] findLyricsForSongWithTitle:item.title
artist:item.artist
album:item.albumTitle
artWork:[item.artwork imageWithSize:artWork.frame.size]
currentProgress:[[MPMusicPlayerController iPodMusicPlayer] currentPlaybackTime]
trackDuration:item.playbackDuration
forViewController:self
sender:sender
competionHandler:^(NSError *error) {
}];
}
}
Data needed in deep:
Provide a NSString for song title.
Provide a NSString for song artist name.
Pass a NSString for song album name.
Pass an UIImage for the view's background (artwork).
Provide a NSTimeInterval for the current seek time.
Provide a NSTimeInterval for the song duration.
Provide a UIViewController from the Extesion can appear.
Provide a completion block that will be called when the user finishes their selection.