在IOS应用程序中播放SoundCloud文件

使用提供的快速入门指南想在 IOS应用程序中播放SoundCloud轨道.

提供播放流的代码如下:

SCAccount *account = [ScsoundCloud account];

    [SCRequest performMethod:SCRequestMethodGET
                  onResource:[NSURL URLWithString:audioFile]
             usingParameters:nil
                 withAccount:account
      sendingProgressHandler:nil
             responseHandler:^(NSURLResponse *response,NSData *data,NSError *error) {
                 NSError *playerError;
                 audioPlayer = [[AVAudioPlayer alloc] initWithData:data error:&playerError];
                 audioPlayer.numberOfLoops = 0;

                 [audioPlayer preparetoPlay];
                 [audioPlayer play];
             }];

问题:有没有一种方法可以播放SoundCloud文件而无需先登录到您的SoundCloud帐户?我们希望所有用户都考虑使用SoundCloud – 但是,如果新用户之前可以收听多个曲目,那么可用性是有用的.

解决方法

要使用IOS Soundcloud SDK进行公共访问,您需要将Soundcloud clientID作为参数添加到请求字符串中:
Nsstring *urlString = [Nsstring stringWithFormat:@"%@?client_id=%@",publicTrackUrlString,yourScclientID];
[SCRequest performMethod: SCRequestMethodGET 
              onResource: [NSURL URLWithString:urlString]
         usingParameters: nil 
             withAccount: nil
  sendingProgressHandler: nil 
         responseHandler:^(NSURLResponse *response,NSError *error){
                      // 
         }];

然后,当withAccount:参数为nil时,它将适用于公共轨道.

更优雅的是,你可以将“client_id”打包在字典中并与usingParameters一起使用:

NSDictionary * params = @ {@“client_id”:yourScclientID};

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...