OStack程序员社区-中国程序员成长平台

标题: ios - 无法让 Rdio iOS SDK 播放工作 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 05:07
标题: ios - 无法让 Rdio iOS SDK 播放工作

我在搞乱 Rdio 的 iOS SDK。我已经在此处概述的“入门”中正确设置了所有内容 (http://www.rdio.com/developers/docs/libraries/ios/)。应用程序委托(delegate)中的轨道键在我启动应用程序后工作和播放。

现在我正在尝试通过简单的 UIButton 点击​​来播放轨道,但我一辈子都无法让它工作。

我在 ViewController.h 中有这个

#import <UIKit/UIKit.h>
#import <Rdio/Rdio.h>

@interface ViewController : UIViewController <RdioDelegate, RDPlayerDelegate>
@property (readonly) Rdio *rdio;

@end

在 ViewController.m 中

- (IBAction)playButtonUIButton *)sender
{
    [self.rdio preparePlayerWithDelegate:nil];
    NSArray *sources = [NSArray arrayWithObjects"t1", @"p1", @"a1", nil];
    [self.rdio.player playSources:sources];

}

非常感谢您的帮助!



Best Answer-推荐答案


我解决了我的问题。我的问题是我没有调用我的 App Delegate 中的初始化程序 initWithConsumerKey...。我也未能正确地将其设置为代表。

所以我的 App Delegate 看起来像这样:

#import "AppDelegate.h"

static AppDelegate *launchedDelegate;

@interface AppDelegate ()

@end

@implementation AppDelegate

+ (Rdio *)rdioInstance
{
    return launchedDelegate.rdio;
}


- (BOOL)applicationUIApplication *)application didFinishLaunchingWithOptionsNSDictionary *)launchOptions {

    launchedDelegate = self;

    _rdio = [[Rdio alloc] initWithConsumerKey"removed" andSecret"removed" delegate:nil];
    return YES;
}

在 ViewController.m 中:

- (IBAction)listenButtonUIButton *)sender
{
    _rdio = [AppDelegate rdioInstance];
    [self.rdio preparePlayerWithDelegate:nil];
    [self.rdio.player playSource"p12691138"];

}

我一开始没有明白这一点,感觉很傻!把它放在这里以防它对任何人有帮助。

关于ios - 无法让 Rdio iOS SDK 播放工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28248822/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4