Tapjoy/13.1.0.0
This commit is contained in:
Родитель
8a0aac2d47
Коммит
031468f5f8
|
@ -2,7 +2,7 @@ Pod::Spec.new do |s|
|
|||
|
||||
s.authors = 'AppLovin Corporation'
|
||||
s.name = 'AppLovinMediationTapjoyAdapter'
|
||||
s.version = '13.0.1.0'
|
||||
s.version = '13.1.0.0'
|
||||
s.platform = :ios, '10.0'
|
||||
s.summary = 'Tapjoy adapter used for mediation with the AppLovin MAX SDK'
|
||||
s.homepage = "https://github.com/CocoaPods/Specs/search?o=desc&q=#{s.name}&s=indexed"
|
||||
|
@ -26,17 +26,9 @@ s.source =
|
|||
|
||||
s.vendored_frameworks = "#{s.name}-#{s.version}/#{s.name}.xcframework"
|
||||
|
||||
s.dependency 'TapjoySDK', '= 13.0.1'
|
||||
s.dependency 'TapjoySDK', '= 13.1.0'
|
||||
s.dependency 'AppLovinSDK'
|
||||
|
||||
s.pod_target_xcconfig =
|
||||
{
|
||||
'VALID_ARCHS' => 'arm64 arm64e armv7 armv7s x86_64',
|
||||
'VALID_ARCHS[sdk=iphoneos*]' => 'arm64 arm64e armv7 armv7s',
|
||||
'VALID_ARCHS[sdk=iphonesimulator*]' => 'arm64 arm64e x86_64',
|
||||
'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386'
|
||||
}
|
||||
|
||||
s.description = <<-DESC
|
||||
|
||||
AppLovin turns mobile into the medium of choice for advertisers.
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
# Changelog
|
||||
|
||||
## 13.1.0.0
|
||||
* Certified with Tapjoy SDK 13.1.0.
|
||||
* Remove the `privacySettingForSelector:fromParameters:` function and call privacy methods directly.
|
||||
* Now requires MAX SDK version 6.14.0 or higher.
|
||||
* Fixed potential memory leaks by clearing delegates in `destroy:` method.
|
||||
|
||||
## 13.0.1.0
|
||||
* Certified with Tapjoy SDK 13.0.1.
|
||||
* Updated minimum Xcode requirement to 14.0.
|
||||
|
||||
## 13.0.0.0
|
||||
* Certified with Tapjoy SDK 13.0.0.
|
||||
|
|
|
@ -280,7 +280,6 @@
|
|||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
VALID_ARCHS = "$(ARCHS_STANDARD)";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
|
@ -335,7 +334,6 @@
|
|||
ONLY_ACTIVE_ARCH = NO;
|
||||
SDKROOT = iphoneos;
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VALID_ARCHS = "$(ARCHS_STANDARD)";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
@ -349,7 +347,6 @@
|
|||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = X8JXXK4FF5;
|
||||
ENABLE_BITCODE = NO;
|
||||
EXCLUDED_ARCHS = i386;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"${PODS_ROOT}/TapjoySDK/TapjoySDK_iOS_v12.11.1/Libraries\"/**",
|
||||
|
@ -374,7 +371,6 @@
|
|||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = X8JXXK4FF5;
|
||||
ENABLE_BITCODE = NO;
|
||||
EXCLUDED_ARCHS = i386;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"${PODS_ROOT}/TapjoySDK/TapjoySDK_iOS_v12.11.1/Libraries\"/**",
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
#import "ALTapjoyMediationAdapter.h"
|
||||
#import <Tapjoy/Tapjoy.h>
|
||||
|
||||
#define ADAPTER_VERSION @"13.0.1.0"
|
||||
#define ADAPTER_VERSION @"13.1.0.0"
|
||||
|
||||
@interface ALTapjoyMediationAdapterInterstitialDelegate : NSObject <TJPlacementDelegate, TJPlacementVideoDelegate>
|
||||
@property (nonatomic, weak) ALTapjoyMediationAdapter *parentAdapter;
|
||||
|
@ -124,7 +124,20 @@
|
|||
return ADAPTER_VERSION;
|
||||
}
|
||||
|
||||
- (void)destroy {}
|
||||
- (void)destroy
|
||||
{
|
||||
self.interstitialPlacement.delegate = nil;
|
||||
self.interstitialPlacement.videoDelegate = nil;
|
||||
self.interstitialPlacement = nil;
|
||||
self.interstitialDelegate.delegate = nil;
|
||||
self.interstitialDelegate = nil;
|
||||
|
||||
self.rewardedPlacement.delegate = nil;
|
||||
self.rewardedPlacement.videoDelegate = nil;
|
||||
self.rewardedPlacement = nil;
|
||||
self.rewardedDelegate.delegate = nil;
|
||||
self.rewardedDelegate = nil;
|
||||
}
|
||||
|
||||
- (void)dealloc
|
||||
{
|
||||
|
@ -275,56 +288,26 @@
|
|||
{
|
||||
TJPrivacyPolicy *tjPrivacyPolicy = [Tapjoy getPrivacyPolicy];
|
||||
|
||||
NSNumber *isAgeRestrictedUser = [self privacySettingForSelector: @selector(isAgeRestrictedUser) fromParameters: parameters];
|
||||
NSNumber *isAgeRestrictedUser = [parameters isAgeRestrictedUser];
|
||||
if ( isAgeRestrictedUser )
|
||||
{
|
||||
[tjPrivacyPolicy setBelowConsentAge: isAgeRestrictedUser.boolValue];
|
||||
}
|
||||
|
||||
NSNumber *hasUserConsent = [self privacySettingForSelector: @selector(hasUserConsent) fromParameters: parameters];
|
||||
NSNumber *hasUserConsent = [parameters hasUserConsent];
|
||||
if ( hasUserConsent )
|
||||
{
|
||||
[tjPrivacyPolicy setUserConsent: hasUserConsent.boolValue ? @"1" : @"0"];
|
||||
}
|
||||
|
||||
if ( ALSdk.versionCode >= 61100 )
|
||||
NSNumber *isDoNotSell = [parameters isDoNotSell];
|
||||
if ( isDoNotSell )
|
||||
{
|
||||
NSNumber *isDoNotSell = [self privacySettingForSelector: @selector(isDoNotSell) fromParameters: parameters];
|
||||
if ( isDoNotSell )
|
||||
{
|
||||
[tjPrivacyPolicy setUSPrivacy: isDoNotSell.boolValue ? @"1YY-" : @"1YN-"];
|
||||
}
|
||||
else
|
||||
{
|
||||
[tjPrivacyPolicy setUSPrivacy: @"1---"];
|
||||
}
|
||||
[tjPrivacyPolicy setUSPrivacy: isDoNotSell.boolValue ? @"1YY-" : @"1YN-"];
|
||||
}
|
||||
}
|
||||
|
||||
- (nullable NSNumber *)privacySettingForSelector:(SEL)selector fromParameters:(id<MAAdapterParameters>)parameters
|
||||
{
|
||||
// Use reflection because compiled adapters have trouble fetching `BOOL` from old SDKs and `NSNumber` from new SDKs (above 6.14.0)
|
||||
NSMethodSignature *signature = [[parameters class] instanceMethodSignatureForSelector: selector];
|
||||
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature: signature];
|
||||
[invocation setSelector: selector];
|
||||
[invocation setTarget: parameters];
|
||||
[invocation invoke];
|
||||
|
||||
// Privacy parameters return nullable `NSNumber` on newer SDKs
|
||||
if ( ALSdk.versionCode >= 6140000 )
|
||||
{
|
||||
NSNumber *__unsafe_unretained value;
|
||||
[invocation getReturnValue: &value];
|
||||
|
||||
return value;
|
||||
}
|
||||
// Privacy parameters return BOOL on older SDKs
|
||||
else
|
||||
{
|
||||
BOOL rawValue;
|
||||
[invocation getReturnValue: &rawValue];
|
||||
|
||||
return @(rawValue);
|
||||
[tjPrivacyPolicy setUSPrivacy: @"1---"];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче