我正在尝试创建一个新的视图控制器,用于使用 UnityAds 和 Vungle(取决于可用的)向用户显示奖励视频。
在 Vungle 视频视图之后,我已经实现的VungleSDKDelegate
will callvungleSDKwillCloseAdWithViewInfo
如下:
- (void)vungleSDKwillCloseAdWithViewInfo:(NSDictionary *)viewInfo willPresentProductSheet:(BOOL)willPresentProductSheet {
NSLog(@"vungleSDKwillCloseAdWithViewInfo");
[self finishVideoView];
}
并且finishVideoView
作为:
- (void) finishVideoView {
NSLog(@"finishVideoView");
[self dismissViewControllerAnimated:YES completion:nil];
}
这很好用,完成后,视图控制器被关闭,应用程序恢复。但是,当我尝试在 Unity 的方法中执行此方法时UnityAdsDelegate
,unityAdsDidFinish
视图控制器只是挂在那里并且从不关闭。
- (void)unityAdsDidFinish:(NSString *)placementId withFinishState:(UnityAdsFinishState)state{
NSLog(@"unityAdsDidFinish");
[self finishVideoView];
}
任何想法为什么?似乎unityAdsDidFinish
回调发生在我点击完成视频顶部的 x 之后。
我认为这可能是时间问题,所以我也尝试这样做:
[self performSelector:@selector(finishVideoView) withObject:nil afterDelay:1.0];
但这似乎也无济于事。