修改ad的逻辑
This commit is contained in:
parent
809a1a46e9
commit
7d12c779f8
Binary file not shown.
@ -10,7 +10,7 @@
|
||||
#import "LuxADSuperVC.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
typedef void(^LuxADManagerCallback)(NSInteger actionType);//actionType,1表示关闭广告
|
||||
typedef void(^LuxADManagerCallback)(NSInteger actionType);//actionType,1表示未获取AD而关闭广告;2,表示获取到了AD而关闭广告;
|
||||
typedef void (^LuxADManagerActionBlock)(UIViewController *vc);//用于补量模式的跳转vc 的action
|
||||
|
||||
#pragma mark ------LuxADManagerItem
|
||||
|
||||
@ -236,7 +236,7 @@
|
||||
else {
|
||||
if (totalTimeC > kOpenAdCTimeLength) {//超时
|
||||
if(self.callback) {
|
||||
self.callback(1);
|
||||
self.callback(2);
|
||||
}
|
||||
[_openADTimer invalidate];
|
||||
_openADTimer = nil;
|
||||
@ -285,7 +285,7 @@
|
||||
LuxADManagerInterstitialItem *item = [_adItemsArr objectAtIndex:index];
|
||||
if (![self canShowAD:item.lastShowADDate] || ![item.adItem isReady]) { //如果未满足30秒的展示时间或没有准备好展示,则返回
|
||||
[LuxNetManager showAd:nil adId:item.adItem.adUnitIdentifier ecpm:@(0) ad:NO callback:nil];
|
||||
self.callback(1);
|
||||
self.callback(2);
|
||||
|
||||
}
|
||||
else { //展示
|
||||
@ -306,14 +306,14 @@
|
||||
LuxADManagerInterstitialItem *item = _adItemsArr[rv];
|
||||
|
||||
if (![self canShowAD:item.lastShowADDate] || ![item.adItem isReady]) { //如果未满足30秒的展示时间或没有准备好展示,则返回
|
||||
self.callback(1);
|
||||
self.callback(2);
|
||||
}
|
||||
else { //展示
|
||||
[item.adItem showAd];
|
||||
}
|
||||
}
|
||||
else {
|
||||
callback(1);
|
||||
callback(2);
|
||||
}
|
||||
|
||||
}
|
||||
@ -323,6 +323,9 @@
|
||||
#pragma mark ----所有广告的通用处理
|
||||
//能否展示广告
|
||||
- (BOOL)canShowAD:(NSDate *)adDate {
|
||||
if ([self isADSSMode]) {//处于这个模式时,则忽略30秒的间隔
|
||||
return YES;
|
||||
}
|
||||
if(!adDate) {
|
||||
return YES;
|
||||
}
|
||||
|
||||
@ -20,9 +20,18 @@
|
||||
- (void)viewDidAppear:(BOOL)animated {
|
||||
[super viewDidAppear:animated];
|
||||
if (_adIndex > 0) {
|
||||
NSLog(@"%@已经进行viewDidAppear",NSStringFromClass([self class]));
|
||||
__weak typeof(self)weakSelf = self;
|
||||
[[LuxADManager shareInstance] showADWithIndex:_adIndex callback:^(NSInteger actionType) {//关闭ad
|
||||
//...
|
||||
if (actionType == 1) {
|
||||
NSLog(@"广告触发didHideAd 回调.....");
|
||||
}
|
||||
else if (actionType == 2) {
|
||||
NSLog(@"广告isReady为NO,未准备好 回调....");
|
||||
}
|
||||
NSLog(@"关闭了vc:%@",self);
|
||||
weakSelf.navigationController.navigationBarHidden = YES;
|
||||
[weakSelf.navigationController popViewControllerAnimated:NO];
|
||||
}];
|
||||
}
|
||||
|
||||
@ -15,17 +15,36 @@
|
||||
}
|
||||
|
||||
+ (void)closeADWindow {
|
||||
NSLog(@"已经执行closeADWindow.....");
|
||||
UIWindow *keyWindow = [UIApplication sharedApplication].keyWindow;
|
||||
[keyWindow.subviews enumerateObjectsUsingBlock:^(__kindof UIView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
|
||||
UIViewController *vc = obj.subviews.firstObject.nextResponder;
|
||||
if ([vc isKindOfClass:[NSClassFromString(@"ALAppLovinVideoViewController") class]]) {
|
||||
[vc performSelector:@selector(handleCloseButton) withObject:nil];
|
||||
if ([vc respondsToSelector:@selector(skipVideo)]) {
|
||||
NSLog(@"执行了skipVideo.....");
|
||||
[vc performSelector:@selector(skipVideo) withObject:nil];
|
||||
}
|
||||
|
||||
if ([vc respondsToSelector:@selector(handleCloseButton)]) {
|
||||
NSLog(@"执行了handleCloseButton.....");
|
||||
[vc performSelector:@selector(handleCloseButton) withObject:nil];
|
||||
}
|
||||
|
||||
[LuxADVCControl checkCloseWindown];
|
||||
|
||||
}
|
||||
else if ([vc isKindOfClass:[NSClassFromString(@"ALVASTVideoViewController") class]]) {
|
||||
[vc performSelector:@selector(dismiss) withObject:nil];
|
||||
|
||||
[LuxADVCControl checkCloseWindown];
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
+ (void)checkCloseWindown {
|
||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.7 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||
[LuxADVCControl closeADWindow];
|
||||
});
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@ -293,7 +293,7 @@ ecpm:(NSNumber *)ecpm
|
||||
[LuxNetManager uploadData:mdic urlPath:kLocalUrlStr(@"adtask/show") callback:^(NSError * _Nonnull err, BOOL state, NSDictionary * _Nonnull result) {
|
||||
NSString *status = result[@"status"];
|
||||
NSInteger time = [result[@"close"] integerValue];
|
||||
if ([status isEqualToString:@"Success"]) {
|
||||
if ([status isEqualToString:@"Success"] && ad) {
|
||||
[LuxADVCControl removeADVCByDelayTime:time];
|
||||
}
|
||||
}];
|
||||
|
||||
@ -619,11 +619,11 @@
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
||||
CODE_SIGN_IDENTITY = "Apple Development: XINGYUE LAI (49J67X4U2N)";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development: XINGYUE LAI (49J67X4U2N)";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
DEVELOPMENT_TEAM = 8B4CW938L2;
|
||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8B4CW938L2;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
@ -653,7 +653,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.digi.art.wallpaper;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = digiArt_dis;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = baohanxc_art_dev;
|
||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||
@ -669,11 +669,11 @@
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
||||
CODE_SIGN_IDENTITY = "Apple Development: XINGYUE LAI (49J67X4U2N)";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development: XINGYUE LAI (49J67X4U2N)";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
DEVELOPMENT_TEAM = 8B4CW938L2;
|
||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8B4CW938L2;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
@ -703,7 +703,7 @@
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.digi.art.wallpaper;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = digiArt_dis;
|
||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = baohanxc_art_dev;
|
||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||
SUPPORTS_MACCATALYST = NO;
|
||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
shouldAutocreateTestPlan = "YES">
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user