From 1e4cd3f326cfb114bfd45fa8d45cda26bf74b324 Mon Sep 17 00:00:00 2001 From: Abhishek Sharma Date: Mon, 20 Feb 2023 12:28:57 +0000 Subject: [PATCH 1/3] Banner Video MultiAd Load Squashed commit of the following: commit 169c8357a1ea79370e788d0dd380a4bf24bbff1c Author: asharma Date: Wed Feb 15 22:46:26 2023 +0530 Fixed video ad multi load commit 12544f71664b6dccc4ee6b3522c84dd224f7adf8 Merge: bfcf76cfa b41df0c16 Author: Kirubakar Muruganandam Date: Tue Dec 20 20:40:37 2022 +0000 Merge pull request #875 in MOBILE-SDK/app_mobile-sdk-ios from release_branch_v8.3.0 to master * commit 'b41df0c1620d7fa48b2e5941cafa691c28cbf49a': Update SDK version to 8.3.0 for release Merge pull request #874 in MOBILE-SDK/app_mobile-sdk-ios from MS-5197-Add-new-files-references-to-test-cases to develop Merge pull request #873 in MOBILE-SDK/app_mobile-sdk-ios from MS-5197-Google-AdMob-crashing-iPad-multi-window to develop Merge pull request #872 in MOBILE-SDK/app_mobile-sdk-ios from MS-5214-OMID-Upgrade-1.4.2 to develop Merge pull request #871 in MOBILE-SDK/app_mobile-sdk-ios from MS-5213-Update-AdMob-to-9.14.0 to develop commit bfcf76cfa72fdeeee6a55df8b104eb2af6be3e98 Merge: 400f83944 bf702162a Author: Kowshickkarthick Subramanian Date: Thu Dec 1 20:48:02 2022 +0000 Merge pull request #870 in MOBILE-SDK/app_mobile-sdk-ios from Release_8.2.0 to master * commit 'bf702162a96dad320b2b9d865a9ff857f5d4e126': Release changes and version updates Merge pull request #868 in MOBILE-SDK/app_mobile-sdk-ios from Fixed_Unit_Tests to develop Merge pull request #866 in MOBILE-SDK/app_mobile-sdk-ios from MS-5183-iOS-SDK-initialization-8.1.1 to develop Merge pull request #864 in MOBILE-SDK/app_mobile-sdk-ios from MS-5137_gpp_ios to develop Merge pull request #865 in MOBILE-SDK/app_mobile-sdk-ios from ppid-2 to develop Updated Facebook SDK to 6.12 and tested with AppNexusSDKApp MS-5112 Update logic to pass PPID to impbus commit 400f83944b3e00e13fef83bc48765ae016d2b76a Merge: e775e1931 8c8144423 Author: Abhishek Sharma Date: Fri Oct 28 14:05:27 2022 +0000 SDK v8.1.1 * commit '8c8144423019e0110bffd2f0f62dfb01332fa44f': SDK v8.1.1 added detachClickableView Tracker is not getting fired on multiple screens Merge pull request #859 in MOBILE-SDK/app_mobile-sdk-ios from clickRenameIssue to develop MS-5128 Refactor MacOS SDK code MacOS SDK registerviewforTracking API commit e775e1931c9ea895d11f9a54dd6e8e18e08c102a Merge: 1ce912d74 b80c9dcb3 Author: Abhishek Sharma Date: Thu Oct 6 20:55:41 2022 +0000 Updated source * commit 'b80c9dcb31be4b018198400bf0244887c740f494': updated source commit 1ce912d740163092c3c30316d7c3c5f53d1d0d85 Merge: 6bf04da0a 21e70ddd7 Author: Abhishek Sharma Date: Thu Oct 6 20:22:15 2022 +0000 SDK8.1.0 * commit '21e70ddd7c13b4d34cba7dc06f6fe6d946137760': SDKv8.1.0 MacOS SDK Support MS-5080 added support for High Impact media commit 6bf04da0a5515c0830ad4198fb1d19bc8eaef6cd Merge: 6d3aa7f62 11894becd Author: Kowshickkarthick Subramanian Date: Thu Oct 6 14:49:38 2022 +0000 Merge pull request #847 in MOBILE-SDK/app_mobile-sdk-ios from github_sync_oklocalisation to master * commit '11894becdbab118fe94458087b3e22d92c399b66': Configuration option for SDK browser dismiss button (#80) --- .../internal/ANAdWebViewController.m | 2 +- sdk/sourcefiles/internal/ANWebView.h | 1 + sdk/sourcefiles/internal/ANWebView.m | 31 ++++++++++++++++--- 3 files changed, 28 insertions(+), 6 deletions(-) diff --git a/sdk/sourcefiles/internal/ANAdWebViewController.m b/sdk/sourcefiles/internal/ANAdWebViewController.m index 8f1a78da5..72b99c2d8 100644 --- a/sdk/sourcefiles/internal/ANAdWebViewController.m +++ b/sdk/sourcefiles/internal/ANAdWebViewController.m @@ -190,7 +190,7 @@ - (instancetype) initWithSize: (CGSize)size [self handleMRAIDURL:[NSURL URLWithString:@"mraid://enable"]]; - _webView = [[ANWebView alloc] initWithSize:size URL:[[[ANSDKSettings sharedInstance] baseUrlConfig] videoWebViewUrl]]; + _webView = [[ANWebView alloc] initWithSize:size URL:[[[ANSDKSettings sharedInstance] baseUrlConfig] videoWebViewUrl] isVASTVideoAd:true]; self.firstNavigation = _webView.navigation; [self loadWebViewWithUserScripts]; diff --git a/sdk/sourcefiles/internal/ANWebView.h b/sdk/sourcefiles/internal/ANWebView.h index 23626444c..eb0cc7073 100644 --- a/sdk/sourcefiles/internal/ANWebView.h +++ b/sdk/sourcefiles/internal/ANWebView.h @@ -28,6 +28,7 @@ baseURL:(NSURL *)baseURL; -(instancetype) initWithSize:(CGSize)size URL:(NSURL *)URL; + -(instancetype) initWithSize:(CGSize)size URL:(NSURL *)URL isVASTVideoAd:(BOOL)videoAd; -(void) loadWithSize:(CGSize)size content:(NSString *) contentString baseURL:(NSURL *)baseURL; diff --git a/sdk/sourcefiles/internal/ANWebView.m b/sdk/sourcefiles/internal/ANWebView.m index 30589b3f8..4729766b1 100644 --- a/sdk/sourcefiles/internal/ANWebView.m +++ b/sdk/sourcefiles/internal/ANWebView.m @@ -31,13 +31,22 @@ NSMutableArray *webViewQueue; +@interface ANWebView () +@property (nonatomic, readwrite, assign) BOOL isVASTVideoAd; +@end + + @implementation ANWebView -(instancetype) initWithSize:(CGSize)size { [[self class] loadWebViewConfigurations]; - - WKWebViewConfiguration *configuration = [[self class] webConfiguration]; + WKWebViewConfiguration *configuration; + if(self.isVASTVideoAd){ + configuration = [[self class] prepareWebConfiguration]; + }else{ + configuration = [[self class] webConfiguration]; + } self = [super initWithFrame:CGRectMake(0, 0, size.width, size.height) configuration:configuration]; if (!self) { return nil; } @@ -91,7 +100,12 @@ -(instancetype) initWithSize:(CGSize)size content:(NSString *)htmlContent baseUR [self loadHTMLString:htmlContent baseURL:baseURL]; return self; } - + + -(instancetype) initWithSize:(CGSize)size URL:(NSURL *)URL isVASTVideoAd:(BOOL)videoAd { + self.isVASTVideoAd = videoAd; + return [self initWithSize:size URL:URL]; + } + -(instancetype) initWithSize:(CGSize)size URL:(NSURL *)URL { self = [self initWithSize:size]; @@ -148,6 +162,11 @@ -(void) loadWebViewWithUserScripts { + (void) addDefaultWebViewConfiguration { + [self prepareWebConfiguration]; + } + + + +(WKWebViewConfiguration *)prepareWebConfiguration { static dispatch_once_t processPoolToken; static WKProcessPool *anSdkProcessPool; @@ -159,7 +178,7 @@ + (void) addDefaultWebViewConfiguration configuration.processPool = anSdkProcessPool; configuration.allowsInlineMediaPlayback = YES; - + if (@available(iOS 10.0, *)) { configuration.requiresUserActionForMediaPlayback = NO; configuration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeAudio; @@ -174,7 +193,7 @@ + (void) addDefaultWebViewConfiguration configuration.requiresUserActionForMediaPlayback = YES; } } - + WKUserContentController *controller = [[WKUserContentController alloc] init]; configuration.userContentController = controller; @@ -212,8 +231,10 @@ + (void) addDefaultWebViewConfiguration [controller addUserScript:execCurrentPositionDeniedScript]; } + return configuration; } + + (void) loadWebViewConfigurations { if(mraidScript == nil){ mraidScript = [[WKUserScript alloc] initWithSource: [[self class] mraidJS] From 2658278193fb1e645307d0e79dd8ce5a915b045a Mon Sep 17 00:00:00 2001 From: Kirubakar Muruganandam Date: Mon, 27 Feb 2023 15:18:11 +0000 Subject: [PATCH 2/3] Merge pull request #881 in MOBILE-SDK/app_mobile-sdk-ios from MS-5227_outstream_ad_webview_config_update to develop Squashed commit of the following: commit ff2a208a5827d752595c5459d18dd29085de647c Author: Kirubakar Muruganandam Date: Fri Feb 24 09:12:37 2023 -0600 Create new webview configuration --- sdk/sourcefiles/internal/ANWebView.m | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk/sourcefiles/internal/ANWebView.m b/sdk/sourcefiles/internal/ANWebView.m index 4729766b1..8d0faea54 100644 --- a/sdk/sourcefiles/internal/ANWebView.m +++ b/sdk/sourcefiles/internal/ANWebView.m @@ -162,7 +162,7 @@ -(void) loadWebViewWithUserScripts { + (void) addDefaultWebViewConfiguration { - [self prepareWebConfiguration]; + configuration = [self prepareWebConfiguration]; } @@ -174,7 +174,7 @@ +(WKWebViewConfiguration *)prepareWebConfiguration { anSdkProcessPool = [[WKProcessPool alloc] init]; }); - configuration = [[WKWebViewConfiguration alloc] init]; + WKWebViewConfiguration *configuration = [[WKWebViewConfiguration alloc] init]; configuration.processPool = anSdkProcessPool; configuration.allowsInlineMediaPlayback = YES; From f2d31855b2c1a390c6882f16dbc178abaa0e6861 Mon Sep 17 00:00:00 2001 From: Kirubakar Muruganandam Date: Tue, 7 Mar 2023 17:20:45 -0600 Subject: [PATCH 3/3] 8.5.0 Improvement/Bug Fixes MS-5227 Fixed issue with loading multiple outstream video ads simultaneously --- AppNexusSDK.podspec | 2 +- RELEASE-NOTES.md | 5 +++++ sdk/AppNexusSDK.xcodeproj/project.pbxproj | 12 ++++++------ sdk/sourcefiles/internal/ANGlobal.h | 4 ++-- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/AppNexusSDK.podspec b/AppNexusSDK.podspec index aeb957401..a8a149617 100644 --- a/AppNexusSDK.podspec +++ b/AppNexusSDK.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "AppNexusSDK" - s.version = "8.4.0" + s.version = "8.5.0" s.platform = :ios, "10.0" s.summary = "AppNexus iOS Mobile Advertising SDK" diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index a6ca4f34e..09ff9e2d5 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -1,3 +1,8 @@ +## 8.5.0 + +### Improvement/Bug Fixes ++ MS-5227 Fixed issue with loading multiple outstream video ads simultaneously + ## 8.4.0 Update version to match Android SDK. No changes from 8.3.0 diff --git a/sdk/AppNexusSDK.xcodeproj/project.pbxproj b/sdk/AppNexusSDK.xcodeproj/project.pbxproj index ea496d1ab..0a9bcf59d 100644 --- a/sdk/AppNexusSDK.xcodeproj/project.pbxproj +++ b/sdk/AppNexusSDK.xcodeproj/project.pbxproj @@ -1905,7 +1905,7 @@ "@loader_path/Frameworks", ); MACOSX_DEPLOYMENT_TARGET = 10.14; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = Xandr.AppNexusNativeMacOSSDK; @@ -1950,7 +1950,7 @@ "@loader_path/Frameworks", ); MACOSX_DEPLOYMENT_TARGET = 10.14; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = Xandr.AppNexusNativeMacOSSDK; @@ -1996,7 +1996,7 @@ "@loader_path/Frameworks", ); LIBRARY_SEARCH_PATHS = ""; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = YES; PRODUCT_BUNDLE_IDENTIFIER = "corp.appnexus.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -2038,7 +2038,7 @@ "@loader_path/Frameworks", ); LIBRARY_SEARCH_PATHS = ""; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = NO; PRODUCT_BUNDLE_IDENTIFIER = "corp.appnexus.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -2202,7 +2202,7 @@ "@loader_path/Frameworks", ); LIBRARY_SEARCH_PATHS = ""; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = corp.appnexus.AppNexusSDK; @@ -2253,7 +2253,7 @@ "@loader_path/Frameworks", ); LIBRARY_SEARCH_PATHS = ""; - MARKETING_VERSION = 8.4.0; + MARKETING_VERSION = 8.5.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = corp.appnexus.AppNexusSDK; diff --git a/sdk/sourcefiles/internal/ANGlobal.h b/sdk/sourcefiles/internal/ANGlobal.h index 43da749b8..37631ea1a 100644 --- a/sdk/sourcefiles/internal/ANGlobal.h +++ b/sdk/sourcefiles/internal/ANGlobal.h @@ -29,9 +29,9 @@ #if !APPNEXUS_NATIVE_MACOS_SDK - #define AN_SDK_VERSION @"8.4.0" + #define AN_SDK_VERSION @"8.5.0" #else - #define AN_SDK_VERSION @"8.4.0-mac" + #define AN_SDK_VERSION @"8.5.0-mac" #endif