Spotify API для ios: загрузка, сохранение, доступ к трекам из ios spotify api
Я хотел бы знать, возможна ли загрузка треков на устройства iphone / ipod / ipad с использованием spotify ios api (CocoaLibSpotify IOS Library). Если это так, мне также нужно получить к ним доступ и играть в любое время, когда захочу. Я буду использовать их в моем приложении позже.
Я думаю, что мы можем проверить автономный статус трека, который воспроизводится, используя sp_track_offline_status. Но я не могу пройти через это.
Любой пример кода будет очень полезен.
Simplifying the requirement: загрузите и сохраните спойт-треки на устройствах iOS
В качестве обновления, в ответ на ответ iKenndac, свойство offlineStatus стало «1». Это означает, что плейлист синхронизирован для локального хранения.
SP_PLAYLIST_OFFLINE_STATUS_YES = 1, /// & lt; Плейлист синхронизирован с локальным хранилищем
1. Значит ли это, что все треки в плейлисте загружены?
Я так не думаю. потому что есть другие состояния следующим образом:
typedef enum sp_playlist_offline_status {
SP_PLAYLIST_OFFLINE_STATUS_NO = 0, ///< Playlist is not offline enabled
SP_PLAYLIST_OFFLINE_STATUS_YES = 1, ///< Playlist is synchronized to local storage
SP_PLAYLIST_OFFLINE_STATUS_DOWNLOADING = 2, ///< This playlist is currently downloading. Only one playlist can be in this state any given time
SP_PLAYLIST_OFFLINE_STATUS_WAITING = 3, ///< Playlist is queued for download
} sp_playlist_offline_status;
Я никогда не получал offlineStatus 2 или 3.
Also my offlineDownloadProgress property is always showing me '0'.It has to increase from '0' to '1', if I am not wrong.
CODE snippet:
[SPAsyncLoading waitUntilLoaded:playList
timeout:kSPAsyncLoadingDefaultTimeout
then:^(NSArray *loadedItems, NSArray *notLoadedItems) {
playList.markedForOfflinePlayback = YES;
currentPlaylist = playList;
statusTimer = [NSTimer scheduledTimerWithTimeInterval:0.3 target:self selector:@selector(checkOfflineStatus) userInfo:nil repeats:YES];
I am checking the status as follows:
-(void)checkOfflineStatus {
NSLog(@"playlist offline progress is: %f",currentPlaylist.offlineDownloadProgress);
NSLog(@"offline status: %d",currentPlaylist.offlineStatus);
}
The output looks like this:
2012-07-06 20: 34: 05.891 Simple Player [6571: 10703] плейлист В автономном режиме, прогресс: 0.000000
2012-07-06 20: 34: 05.892 Простой игрок [6571: 10703] офлайн статус: 1
2012-07-06 20: 34: 06.039 Простой игрок [6571: 10703] плейлиста офлайн прогресс: 0.000000
2012-07-06 20: 34: 06.039 Простой игрок [6571: 10703] офлайн статус: 1
Что я могу делать дальше?