Я пытаюсь создать пример приложения, используя GoogleCast SDK. Я застрял на первом этапе.
По какой-то странной причине я не могу создать контейнер приведения в Obj- c.
Я не использую стручки. Я скачал фреймворки и добавил их в проект.
Вот метод, который я вызываю в AppDelegate метод didFinishLaunching:
-(void)setupChromeCastContainer {
GCKDiscoveryCriteria *discoveryCriteria = [[GCKDiscoveryCriteria alloc]initWithApplicationID:kGCKDefaultMediaReceiverApplicationID];
GCKCastOptions *options = [[GCKCastOptions alloc]initWithDiscoveryCriteria:discoveryCriteria];
[GCKCastContext setSharedInstanceWithOptions:options];
[GCKCastContext sharedInstance].useDefaultExpandedMediaControls = YES;
UIStoryboard *st = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UINavigationController *nav = [st instantiateViewControllerWithIdentifier:@"navVc"];
GCKUICastContainerViewController * containerVc = [[GCKCastContext sharedInstance]createCastContainerControllerForViewController:nav];
containerVc.miniMediaControlsItemEnabled = YES;
self.window.rootViewController = containerVc;
[self.window makeKeyAndVisible];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[self setupChromeCastContainer];
return YES;
}
В приведенном выше методе GCKUICastContainerViewController * containerVc
возвращает ноль. И также навигация НЕ равна нулю, поэтому я передаю действительный объект.
Я не могу найти, почему createCastContainerControllerForViewController
возвращает ноль или в этом случае он возвращает ноль.
Мой среда Xcode 11.3.1.
Я даже пытался добавить кнопку приведения на панель навигации, и код кнопки приведения также возвращает ноль.
GCKUICastButton *castButton = [[GCKUICastButton alloc] initWithFrame:CGRectMake(0, 0, 24, 24)]; //castButton returns nill