Vungle playAd API无法在Swift中运行

时间:2016-03-26 22:28:34

标签: swift swift2.2 vungle-ads

我正在尝试使用VungleSDK广告框架的playAd API,并且需要以下两个函数。它说要使用带有错误参数的下两个:

- (void)playAd:(UIViewController *)viewController __attribute__((deprecated));
- (void)playAd:(UIViewController *)viewController withOptions:(id)options __attribute__((deprecated));


- (BOOL)playAd:(UIViewController *)viewController error:(NSError **)error;
- (BOOL)playAd:(UIViewController *)viewController withOptions:(id)options error:(NSError **)error;

在Swift中,我如何调用这样的API?

我尝试了多种方法,包括以下内容:

let sdk = VungleSDK.sharedSDK()
var error : NSError?

do {
   try sdk.playAd(viewController, error:err)
} catch let err as NSError {
   // error handling
}

我也试过传递& err,因为它期望指向NSError指针(并且还尝试将错误定义为NSErrorPointer)。 它们都无法在新的Swift 2.2中进行编译。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

这似乎有效(尽管我无法在任何地方记录):

try! sdk.playAd(viewController, error: ())

以下是相同的工作解决方案,错误处理:

do {
  try sdk.playAd(viewController, error: ())
} catch let error as NSError {
  print(error)
}