Skip to content

Commit

Permalink
Release 7.3.2
Browse files Browse the repository at this point in the history
  • Loading branch information
mobile-ads-github committed Aug 8, 2024
1 parent a37f13d commit 1a24466
Show file tree
Hide file tree
Showing 25 changed files with 149 additions and 59 deletions.
10 changes: 5 additions & 5 deletions Examples/ThirdPartyMediationAdapterTemplate/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,16 +56,16 @@ Successfully initializing the Yandex Mobile Ads SDK is an important condition fo
Manual initialization of the SDK can be used like this (this method is safety and can be reinvoked if SDK already initialized):

```swift
YMAMobileAds.initializeSDK()
MobileAds.initializeSDK()
```

### Privacy policies

Privacy policies can be configured like this:

```swift
YMAMobileAds.setLocationTrackingEnabled(locationTracking)
YMAMobileAds.setUserConsent(userConsent)
MobileAds.setLocationTrackingEnabled(locationTracking)
MobileAds.setUserConsent(userConsent)
```

> You should configure policies every time when it changed.
Expand All @@ -77,7 +77,7 @@ See also: [GDPR](https://ads.yandex.com/helpcenter/en/dev/ios/gdpr).
As shown in the [template](./ThirdPartyMediationAdapterTemplate/AdapterTemplate/YandexAdapters.swift#L42), the bidder token can be obtained as follows:

```swift
let bidderTokenLoader = YMABidderTokenLoader()
let bidderTokenLoader = BidderTokenLoader()
bidderTokenLoader.loadBidderToken(requestConfiguration: requestConfiguraton) { token in
completion(token)
}
Expand All @@ -86,7 +86,7 @@ bidderTokenLoader.loadBidderToken(requestConfiguration: requestConfiguraton) { t
You need to load a bidder token for each new ad request. Token request can be created as follows (also shown in [template](./ThirdPartyMediationAdapterTemplate/AdapterTemplate/YandexAdapters.swift#L27)):

```swift
let requestConfiguraton = YMABidderTokenRequestConfiguration(adType: adType)
let requestConfiguraton = BidderTokenRequestConfiguration(adType: adType)
if adType == .banner {
requestConfiguraton.bannerAdSize = bannerAdSize
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 7.3.1;
CURRENT_PROJECT_VERSION = 7.3.2;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
Expand All @@ -305,7 +305,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MARKETING_VERSION = 7.3.1;
MARKETING_VERSION = 7.3.2;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
Expand Down Expand Up @@ -349,7 +349,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 7.3.1;
CURRENT_PROJECT_VERSION = 7.3.2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
Expand All @@ -364,7 +364,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
LOCALIZATION_PREFERS_STRING_CATALOGS = YES;
MARKETING_VERSION = 7.3.1;
MARKETING_VERSION = 7.3.2;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ class YandexBaseAdapter: NSObject, MediationBidding, MediationInitialization {
private static let bidderTokenLoader = BidderTokenLoader()

/// This method implements obtaining a bid token in order to use it with in-app bidding integration with Yandex.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Classes/YMABidderTokenLoader.html
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Classes/BidderTokenLoader.html
static func getBiddingToken(parameters: AdapterParameters, completion: @escaping (String?) -> Void) {

/// Configure all necessary parameters and create YMABidderTokenRequestConfiguration.
/// Configure all necessary parameters and create `BidderTokenRequestConfiguration`.
let requestConfiguraton: BidderTokenRequestConfiguration
switch parameters.adFormat {
case .banner(let size):
Expand Down Expand Up @@ -53,7 +53,7 @@ class YandexBaseAdapter: NSObject, MediationBidding, MediationInitialization {
]
}

/// This method implements setting up YMAMobileAds parameters, which must be current before each request to the Yandex API.
/// This method implements setting up `MobileAds` parameters, which must be current before each request to the Yandex API.
static func setupYandexSDK(with parameters: AdapterParameters) {
if let userConsent = parameters.userConsent {
MobileAds.setUserConsent(userConsent)
Expand All @@ -76,7 +76,7 @@ class YandexBaseAdapter: NSObject, MediationBidding, MediationInitialization {
MobileAds.initializeSDK()
}

/// This method implements creation of YMAAdRequestConfiguration with all the necessary parameters.
/// This method implements creation of `AdRequestConfiguration` with all the necessary parameters.
func makeAdRequestConfiguration(with adData: AdData, parameters: AdapterParameters) -> AdRequestConfiguration {
let configuration = MutableAdRequestConfiguration(adUnitID: adData.adUinitId)
let configParameters = Self.makeConfigurationParameters(parameters)
Expand All @@ -103,8 +103,8 @@ final class YandexBannerAdapter: YandexBaseAdapter, MediationBanner {
delegate: MediationBannerDelegate,
parameters: AdapterParameters) {

/// Creates an object of the YMABannerAdSize class with the specified maximum height and width of the banner.
/// Also you coud use another sizes: https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Classes/YMABannerAdSize.html
/// Creates an object of the `BannerAdSize` class with the specified maximum height and width of the banner.
/// Also you coud use another sizes: https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Classes/BannerAdSize.html
let adSize = BannerAdSize.fixedSize(withWidth: size.width, height: size.height)
let adView = AdView(adUnitID: adData.adUinitId,
adSize: adSize)
Expand All @@ -125,8 +125,8 @@ final class YandexBannerAdapter: YandexBaseAdapter, MediationBanner {
}
}

/// YMAAdViewDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMAAdViewDelegate.html
/// `AdViewDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/AdViewDelegate.html
extension YandexBannerAdapter: AdViewDelegate {
func adViewDidLoad(_ adView: AdView) {
delegate?.didLoadAd(with: adView)
Expand Down Expand Up @@ -195,8 +195,8 @@ final class YandexInterstitialAdapter: YandexBaseAdapter, MediationInterstitial
}
}

/// YMAInterstitialAdDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMAInterstitialAdDelegate.html
/// `InterstitialAdDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/InterstitialAdDelegate.html
extension YandexInterstitialAdapter: InterstitialAdDelegate {
func interstitialAdDidShow(_ interstitialAd: InterstitialAd) {
delegate?.interstitialDidShow()
Expand All @@ -219,8 +219,8 @@ extension YandexInterstitialAdapter: InterstitialAdDelegate {
}
}

/// YMAInterstitialAdLoaderDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMAInterstitialAdLoaderDelegate.html
/// `InterstitialAdLoaderDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/InterstitialAdLoaderDelegate.html
extension YandexInterstitialAdapter: InterstitialAdLoaderDelegate {
func interstitialAdLoader(_ adLoader: InterstitialAdLoader, didLoad interstitialAd: InterstitialAd) {
interstitialAd.delegate = self
Expand Down Expand Up @@ -271,8 +271,8 @@ final class YandexRewardedAdapter: YandexBaseAdapter, MediationRewarded {
}
}

/// YMARewardedAdDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMARewardedAdDelegate.html
/// `RewardedAdDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/RewardedAdDelegate.html
extension YandexRewardedAdapter: RewardedAdDelegate {
func rewardedAd(_ rewardedAd: RewardedAd, didReward reward: Reward) {
delegate?.didRewardUser()
Expand All @@ -299,8 +299,8 @@ extension YandexRewardedAdapter: RewardedAdDelegate {
}
}

/// YMARewardedAdLoaderDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMARewardedAdLoaderDelegate.html
/// `RewardedAdLoaderDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/RewardedAdLoaderDelegate.html
extension YandexRewardedAdapter: RewardedAdLoaderDelegate {
func rewardedAdLoader(_ adLoader: RewardedAdLoader, didLoad rewardedAd: RewardedAd) {
rewardedAd.delegate = self
Expand Down Expand Up @@ -351,8 +351,8 @@ final class YandexAppOpenAdapter: YandexBaseAdapter, MediationAppOpen {
}
}

/// YMAAppOpenAdDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMAAppOpenAdDelegate.html
/// `AppOpenAdDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/AppOpenAdDelegate.html
extension YandexAppOpenAdapter: AppOpenAdDelegate {
func appOpenAdDidShow(_ appOpenAd: AppOpenAd) {
delegate?.appOpenDidShow()
Expand All @@ -375,8 +375,8 @@ extension YandexAppOpenAdapter: AppOpenAdDelegate {
}
}

/// YMAAppOpenAdLoaderDelegate implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/YMAAppOpenAdLoaderDelegate.html
/// `AppOpenAdLoaderDelegate` implementation.
/// https://yastatic.net/s3/doc-binary/src/dev/mobile-ads/ru/jazzy/Protocols/AppOpenAdLoaderDelegate.html
extension YandexAppOpenAdapter: AppOpenAdLoaderDelegate {
func appOpenAdLoader(_ adLoader: AppOpenAdLoader, didLoad appOpenAd: AppOpenAd) {
appOpenAd.delegate = self
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
/* Begin PBXBuildFile section */
0D118F702C3FBF0200E02305 /* AdFoxSliderViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D118F6F2C3FBF0200E02305 /* AdFoxSliderViewController.swift */; };
0D118F722C3FCA2200E02305 /* NativeSliderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D118F712C3FCA2200E02305 /* NativeSliderView.swift */; };
0D47BB7F2C5D0B510042AA30 /* YandexMobileAds in Frameworks */ = {isa = PBXBuildFile; productRef = 0D47BB7E2C5D0B510042AA30 /* YandexMobileAds */; };
0D47BB812C5D0B590042AA30 /* YandexMobileAdsInstream in Frameworks */ = {isa = PBXBuildFile; productRef = 0D47BB802C5D0B590042AA30 /* YandexMobileAdsInstream */; };
14033F5E27201B8A00A24D5E /* MobileMediationInterstitialViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14033F5D27201B8A00A24D5E /* MobileMediationInterstitialViewController.swift */; };
14033F6527201E2700A24D5E /* MobileMediationNativeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14033F6427201E2700A24D5E /* MobileMediationNativeViewController.swift */; };
14033F6827201F7900A24D5E /* MobileMediationRewardedViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14033F6727201F7900A24D5E /* MobileMediationRewardedViewController.swift */; };
Expand Down Expand Up @@ -111,8 +113,6 @@
64F70DFC2B0B64D300A31CE8 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1467E35B271EA91700DF104A /* Assets.xcassets */; };
64F70DFD2B0B64D300A31CE8 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1467E358271EA91500DF104A /* Main.storyboard */; };
76DEC6852B0E18B10014B6B4 /* IronSourceBannerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76DEC6842B0E18B10014B6B4 /* IronSourceBannerViewController.swift */; };
7A2B6FAA2C5A5EC60074CD06 /* YandexMobileAds in Frameworks */ = {isa = PBXBuildFile; productRef = 7A2B6FA92C5A5EC60074CD06 /* YandexMobileAds */; };
7A2B6FAC2C5A5ECC0074CD06 /* YandexMobileAdsInstream in Frameworks */ = {isa = PBXBuildFile; productRef = 7A2B6FAB2C5A5ECC0074CD06 /* YandexMobileAdsInstream */; };
7A527BBD2B1E36480002B416 /* CommonAccessibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A851DDA2B1E2D8100D03655 /* CommonAccessibility.swift */; };
7A527BBE2B1E36480002B416 /* StateUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AC09FFE2B1DF5D200FF69F9 /* StateUtils.swift */; };
7A527BBF2B1E36480002B416 /* RootAccessibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A851DF82B1E313C00D03655 /* RootAccessibility.swift */; };
Expand Down Expand Up @@ -334,8 +334,8 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
7A2B6FAA2C5A5EC60074CD06 /* YandexMobileAds in Frameworks */,
7A2B6FAC2C5A5ECC0074CD06 /* YandexMobileAdsInstream in Frameworks */,
0D47BB7F2C5D0B510042AA30 /* YandexMobileAds in Frameworks */,
0D47BB812C5D0B590042AA30 /* YandexMobileAdsInstream in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -798,8 +798,8 @@
);
name = YandexMobileAdsExampleSPM;
packageProductDependencies = (
7A2B6FA92C5A5EC60074CD06 /* YandexMobileAds */,
7A2B6FAB2C5A5ECC0074CD06 /* YandexMobileAdsInstream */,
0D47BB7E2C5D0B510042AA30 /* YandexMobileAds */,
0D47BB802C5D0B590042AA30 /* YandexMobileAdsInstream */,
);
productName = YandexMobileAdsSampleApp;
productReference = 64F70E022B0B64D300A31CE8 /* YandexMobileAdsExampleSPM.app */;
Expand Down Expand Up @@ -1208,7 +1208,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 7.3.1;
CURRENT_PROJECT_VERSION = 7.3.2;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
Expand All @@ -1227,7 +1227,7 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 7.3.1;
MARKETING_VERSION = 7.3.2;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
Expand Down Expand Up @@ -1271,7 +1271,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 7.3.1;
CURRENT_PROJECT_VERSION = 7.3.2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
Expand All @@ -1284,7 +1284,7 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 7.3.1;
MARKETING_VERSION = 7.3.2;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
Expand Down Expand Up @@ -1382,7 +1382,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 7.3.1;
CURRENT_PROJECT_VERSION = 7.3.2;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
Expand All @@ -1395,7 +1395,7 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 14.5;
MARKETING_VERSION = 7.3.1;
MARKETING_VERSION = 7.3.2;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
Expand Down Expand Up @@ -1612,11 +1612,11 @@
/* End XCConfigurationList section */

/* Begin XCSwiftPackageProductDependency section */
7A2B6FA92C5A5EC60074CD06 /* YandexMobileAds */ = {
0D47BB7E2C5D0B510042AA30 /* YandexMobileAds */ = {
isa = XCSwiftPackageProductDependency;
productName = YandexMobileAds;
};
7A2B6FAB2C5A5ECC0074CD06 /* YandexMobileAdsInstream */ = {
0D47BB802C5D0B590042AA30 /* YandexMobileAdsInstream */ = {
isa = XCSwiftPackageProductDependency;
productName = YandexMobileAdsInstream;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,66 +9,66 @@ struct YandexInstreamPage: PageObject {
var playInrollButton: XCUIElement { element(id: YandexInstreamAccessibility.playInrollButton, type: .button) }
var pauseInrollButton: XCUIElement { element(id: YandexInstreamAccessibility.pauseInrollButton, type: .button) }
var resumeInrollButton: XCUIElement { element(id: YandexInstreamAccessibility.resumeInrollButton, type: .button) }

var goButton: XCUIElement {
app
.descendants(matching: .button)
.matching(Query.contains(.label, "Go").predicate)
.firstMatch
}

var skipButton: XCUIElement {
element(id: "Skip", type: .button)
element(id: "mac_instream_skip_button", type: .button)
}

func tapLoadAd() {
step("Tap load ad") {
loadButton.tap()
}
}

func tapPrepareAd() {
step("Tap prepare ad") {
prepareButton.tap()
}
}

func tapPresentAd() {
step("Tap present") {
presentButton.tap()
}
}

func tapGo() {
step("Tap go") {
goButton.tap()
}
}

func tapSkip() {
step("Tap skip") {
skipButton.tap()
}
}

func tapStartPlayback() {
step("Tap start playback") {
startPlaybackButton.tap()
}
}

func tapPlayInroll() {
step("Tap play inroll") {
playInrollButton.tap()
}
}

func tapPauseInroll() {
step("Tap pause inroll") {
pauseInrollButton.tap()
}
}

func tapResumeInroll() {
step("Tap resume inroll") {
resumeInrollButton.tap()
Expand Down
8 changes: 4 additions & 4 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,13 @@ let package = Package(
),
.binaryTarget(
name: "YandexMobileAds",
url: "https://ads-mobile-sdk.s3.yandex.net/Yandex/YandexMobileAds/7.3.1/spm/ff069641-e2f8-4667-9548-66799a131ba0.zip",
checksum: "709bf7d8dfa561b81bc07476f44779628b32160b6daec863b046635ee5d232a7"
url: "https://ads-mobile-sdk.s3.yandex.net/Yandex/YandexMobileAds/7.3.2/spm/56843dc3-2094-4ea3-a075-39cbc62bda08.zip",
checksum: "13b8c957f08b420f39b013d91b4a48235a818823defd8fd2d9e8978ce7b74fa5"
),
.binaryTarget(
name: "YandexMobileAdsInstream",
url: "https://ads-mobile-sdk.s3.yandex.net/YandexMobileAdsInstream/0.33.0/spm/1f7ed375-39f4-4506-b0f4-6f51c3f0e7be.zip",
checksum: "6cd5c40908979ef00ea5bc8bcd498e554c81bfb985df71e8a3e610ff12bb1323"
url: "https://ads-mobile-sdk.s3.yandex.net/YandexMobileAdsInstream/0.34.0/spm/963aed1e-988e-4644-8987-8ee159fa4e67.zip",
checksum: "e3e6d75460cf44ce0acd0de8954842998dc72d4cd6ca115351d2af4fcd9bbfa6"
)
]
)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading

0 comments on commit 1a24466

Please sign in to comment.