From bc420d0b3edac4db9f9e5fa7a51d5d863f9d2cd4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 15:02:02 -0700 Subject: [PATCH 001/318] Bump swift-actions/setup-swift from 1 to 2 (#1104) * Bump swift-actions/setup-swift from 1 to 2 Bumps [swift-actions/setup-swift](https://github.com/swift-actions/setup-swift) from 1 to 2. - [Release notes](https://github.com/swift-actions/setup-swift/releases) - [Commits](https://github.com/swift-actions/setup-swift/compare/v1...v2) --- updated-dependencies: - dependency-name: swift-actions/setup-swift dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] * Updating compileSdkVersion to 34 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: LTphantom --- .github/workflows/gma_mediation_liftoffmonetize.yaml | 2 +- .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index a3c5932d5..202ee42e3 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -53,7 +53,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: swift-actions/setup-swift@v1 + - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 682160f13..d8fa94eb8 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -29,7 +29,7 @@ android { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' } - compileSdkVersion 33 + compileSdkVersion 34 compileOptions { sourceCompatibility JavaVersion.VERSION_11 From 94cc028ab44d2ef9cf78d3fb8ca76d63364c2215 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 22:57:01 -0700 Subject: [PATCH 002/318] Bump actions/checkout from 4.1.2 to 4.1.6 (#1105) * Bump actions/checkout from 4.1.2 to 4.1.6 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.2 to 4.1.6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.1.2...a5ac7e51b41094c92402da3b24376905380afc29) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Updated compileSdkVersion --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: LTphantom --- .github/workflows/build.yaml | 6 +++--- .github/workflows/gma_mediation_applovin.yaml | 6 +++--- .github/workflows/gma_mediation_dtexchange.yaml | 2 +- .github/workflows/gma_mediation_inmobi.yaml | 2 +- .github/workflows/gma_mediation_ironsource.yaml | 6 +++--- .github/workflows/gma_mediation_liftoffmonetize.yaml | 6 +++--- .github/workflows/gma_mediation_meta.yaml | 2 +- .github/workflows/gma_mediation_mintegral.yaml | 2 +- .github/workflows/gma_mediation_pangle.yaml | 2 +- .github/workflows/gma_mediation_unity.yaml | 6 +++--- .github/workflows/google_mobile_ads.yaml | 6 +++--- packages/google_mobile_ads/android/build.gradle | 2 +- .../mediation/gma_mediation_applovin/android/build.gradle | 2 +- packages/mediation/gma_mediation_unity/android/build.gradle | 2 +- 14 files changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 08a0073a1..4304cb4cc 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,7 +29,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -60,7 +60,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -92,7 +92,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index c0f4cd118..7a33c8dd4 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index a86cb9eea..57c5129b4 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_inmobi.yaml b/.github/workflows/gma_mediation_inmobi.yaml index 004f35100..6dcbdc7b5 100644 --- a/.github/workflows/gma_mediation_inmobi.yaml +++ b/.github/workflows/gma_mediation_inmobi.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 3596af566..283d2e65b 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -55,7 +55,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -81,7 +81,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index 202ee42e3..5b6cfd99b 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_meta.yaml b/.github/workflows/gma_mediation_meta.yaml index 9bf985959..cbab38665 100644 --- a/.github/workflows/gma_mediation_meta.yaml +++ b/.github/workflows/gma_mediation_meta.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_mintegral.yaml b/.github/workflows/gma_mediation_mintegral.yaml index e4742ab22..38e06e3d1 100644 --- a/.github/workflows/gma_mediation_mintegral.yaml +++ b/.github/workflows/gma_mediation_mintegral.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_pangle.yaml b/.github/workflows/gma_mediation_pangle.yaml index a687124b0..5a1fb7e6d 100644 --- a/.github/workflows/gma_mediation_pangle.yaml +++ b/.github/workflows/gma_mediation_pangle.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index 050c69a94..4d9bff4ab 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -53,7 +53,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -80,7 +80,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index cd4e830a9..263e1dc7f 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -34,7 +34,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b + - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/packages/google_mobile_ads/android/build.gradle b/packages/google_mobile_ads/android/build.gradle index 4399d31d9..8a7b48e34 100644 --- a/packages/google_mobile_ads/android/build.gradle +++ b/packages/google_mobile_ads/android/build.gradle @@ -22,7 +22,7 @@ rootProject.allprojects { apply plugin: 'com.android.library' android { - compileSdkVersion 33 + compileSdkVersion 34 if (project.android.hasProperty('namespace')) { namespace 'io.flutter.plugins.googlemobileads' diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index a0279a2d7..650da4413 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -29,7 +29,7 @@ android { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' } - compileSdkVersion 33 + compileSdkVersion 34 compileOptions { sourceCompatibility JavaVersion.VERSION_11 diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index cdbd8591c..67ef428fc 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -29,7 +29,7 @@ android { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' } - compileSdkVersion 33 + compileSdkVersion 34 compileOptions { sourceCompatibility JavaVersion.VERSION_11 From fe544bf52158ef12dc79392239f74ce1017c4c82 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Thu, 20 Jun 2024 09:20:06 -0700 Subject: [PATCH 003/318] Updated Adapters' iOS Framework to become static libraries (#1112) * Updated adapters to be static frameworks for iOS --- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 1 + .../ios/gma_mediation_dtexchange.podspec | 1 + .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 1 + .../ios/gma_mediation_ironsource.podspec | 1 + .../ios/gma_mediation_liftoffmonetize.podspec | 1 + .../mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec | 1 + .../gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec | 1 + .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 1 + .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 1 + 9 files changed, 9 insertions(+) diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index ccace3ca9..e7cb4b9d7 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -18,6 +18,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 12.4.2.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 0ce39abd3..921e52412 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -18,6 +18,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.2.8.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } s.swift_version = '5.0' diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 4736ae1e5..2ec171d2f 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -18,6 +18,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.7.2.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index a81538d8e..8c2289324 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -18,6 +18,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.0.0.0.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 51d33fa14..8d0793d58 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -18,6 +18,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.dependency 'GoogleMobileAdsMediationVungle', '~>7.3.2.0' s.dependency 'Flutter' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index b0df40b70..45bfec6db 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -18,6 +18,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.15.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 280a45748..909c59075 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -18,6 +18,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.6.3.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index db0186f7b..86d3e41de 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -18,6 +18,7 @@ Pod::Spec.new do |s| s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationPangle', '~> 5.9.0.7.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 093edf278..3da1149ff 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -18,6 +18,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationUnity', '~>4.10.0.0' s.platform = :ios, '12.0' + s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } From 0baba2ecde049dbca164238b579705667db73319 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Thu, 20 Jun 2024 12:10:37 -0700 Subject: [PATCH 004/318] Added Privacy API implementation for DT Exchange Flutter Adapter (#1056) * Added DT Exchange Privacy API usage * Added Android and iOS jobs to the DT Exchange github action * Updated iOS versions to run swift tests --- .../workflows/gma_mediation_dtexchange.yaml | 51 ++++++ .../android/build.gradle | 22 ++- .../DTExchangePrivacyApi.g.kt | 139 +++++++++++++++++ .../GmaMediationDTExchangePlugin.kt | 29 +++- .../GmaMediationDtexchangePluginTest.kt | 89 ++++++++--- .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../example/ios/Podfile | 43 +++++ .../ios/Runner.xcodeproj/project.pbxproj | 119 +++++++++++++- .../contents.xcworkspacedata | 3 + .../GmaMediationDtexchangePluginTests.swift | 88 +++++++++++ .../example/ios/RunnerTests/RunnerTests.swift | 26 ---- .../ios/Classes/DTExchangePrivacyApi.g.swift | 147 ++++++++++++++++++ .../GmaMediationDTExchangePlugin.swift | 65 +++++++- .../lib/dtexchange_privacy_api.g.dart | 134 ++++++++++++++++ .../lib/gma_mediation_dtexchange.dart | 22 ++- .../pigeons/dtexchange_privacy_api.dart | 47 ++++++ .../gma_mediation_dtexchange/pubspec.yaml | 3 +- 18 files changed, 965 insertions(+), 64 deletions(-) create mode 100644 packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/DTExchangePrivacyApi.g.kt create mode 100644 packages/mediation/gma_mediation_dtexchange/example/ios/Podfile create mode 100644 packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/GmaMediationDtexchangePluginTests.swift delete mode 100644 packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/RunnerTests.swift create mode 100644 packages/mediation/gma_mediation_dtexchange/ios/Classes/DTExchangePrivacyApi.g.swift create mode 100644 packages/mediation/gma_mediation_dtexchange/lib/dtexchange_privacy_api.g.dart create mode 100644 packages/mediation/gma_mediation_dtexchange/pigeons/dtexchange_privacy_api.dart diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index 57c5129b4..ce11b2371 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -26,6 +26,57 @@ on: - main jobs: + android: + runs-on: macos-latest + if: github.event_name == 'pull_request' + timeout-minutes: 30 + steps: + - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + with: + fetch-depth: 0 + - uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + - name: "Install Flutter" + run: ./.github/workflows/scripts/install-flutter.sh stable + - name: "Install Tools" + run: ./.github/workflows/scripts/install-tools.sh + - name: "Build Example" + run: ./.github/workflows/scripts/build-example.sh android ./lib/main.dart packages/mediation/gma_mediation_dtexchange/example + - name: "Unit Tests" + run: | + cd packages/mediation/gma_mediation_dtexchange/example/android + ./gradlew :gma_mediation_dtexchange:testDebugUnitTest + + iOS: + runs-on: macos-latest + timeout-minutes: 40 + steps: + - uses: swift-actions/setup-swift@v2 + with: + swift-version: "5.7.2" + - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + with: + fetch-depth: 0 + - name: "Install Flutter" + run: ./.github/workflows/scripts/install-flutter.sh stable + - name: "Install Tools" + run: | + ./.github/workflows/scripts/install-tools.sh + - name: "Unit Tests" + run: | + cd packages/mediation/gma_mediation_dtexchange/example/ios + flutter clean + flutter pub get + flutter precache --ios + pod install + xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test + - uses: actions/upload-artifact@v4 + if: failure() + with: + name: iOSTestResults + path: packages/mediation/gma_mediation_dtexchange/example/ios/TestResults.xcresult flutter: runs-on: ubuntu-latest if: github.event_name == 'pull_request' diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 5683d014f..bc5e08aa3 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -51,19 +51,29 @@ android { dependencies { implementation 'com.google.ads.mediation:fyber:8.2.7.0' - testImplementation 'org.jetbrains.kotlin:kotlin-test' - testImplementation 'org.mockito:mockito-core:5.0.0' + testImplementation 'junit:junit:4.13.2' + testImplementation 'androidx.test:core:1.5.0' + testImplementation 'androidx.test:core-ktx:1.5.0' + testImplementation 'androidx.test.ext:junit:1.1.5' + testImplementation 'org.jetbrains.kotlin:kotlin-stdlib:1.8.20' + testImplementation 'org.mockito:mockito-core:5.5.0' + testImplementation 'org.mockito.kotlin:mockito-kotlin:5.1.0' + testImplementation 'org.robolectric:robolectric:4.10.3' } testOptions { unitTests.all { - useJUnitPlatform() + useJUnit() testLogging { - events "passed", "skipped", "failed", "standardOut", "standardError" - outputs.upToDateWhen {false} - showStandardStreams = true + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true } } + unitTests { + includeAndroidResources = true + unitTests.returnDefaultValues = true + } } } diff --git a/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/DTExchangePrivacyApi.g.kt b/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/DTExchangePrivacyApi.g.kt new file mode 100644 index 000000000..ba689dcf9 --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/DTExchangePrivacyApi.g.kt @@ -0,0 +1,139 @@ +// Autogenerated from Pigeon (v19.0.0), do not edit directly. +// See also: https://pub.dev/packages/pigeon +@file:Suppress("UNCHECKED_CAST", "ArrayInDataClass") + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange + +import android.util.Log +import io.flutter.plugin.common.BasicMessageChannel +import io.flutter.plugin.common.BinaryMessenger +import io.flutter.plugin.common.MessageCodec +import io.flutter.plugin.common.StandardMessageCodec +import java.io.ByteArrayOutputStream +import java.nio.ByteBuffer + +private fun wrapResult(result: Any?): List { + return listOf(result) +} + +private fun wrapError(exception: Throwable): List { + return if (exception is FlutterError) { + listOf( + exception.code, + exception.message, + exception.details + ) + } else { + listOf( + exception.javaClass.simpleName, + exception.toString(), + "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception) + ) + } +} + +/** + * Error class for passing custom error details to Flutter via a thrown PlatformException. + * @property code The error code. + * @property message The error message. + * @property details The error details. Must be a datatype supported by the api codec. + */ +class FlutterError ( + val code: String, + override val message: String? = null, + val details: Any? = null +) : Throwable() +/** + * The generated classes set the channels to call the methods in the corresponding kotlin DTExchangePrivacyApi interface and swift DTExchangePrivacyApi protocol from the dart layer. + * + * Generated interface from Pigeon that represents a handler of messages from Flutter. + */ +interface DTExchangePrivacyApi { + /** Used to configure LGDP on the Android or iOS DTExchange SDK. */ + fun setLgpdConsent(wasConsentGiven: Boolean) + /** Used to clear the LGDP flag on the Android or iOS DTExchange SDK. */ + fun clearLgpdConsentData() + /** Used to configure consent to Sell Personal Information on the Android or iOS DTExchange SDK. */ + fun setUSPrivacyString(usPrivacyString: String) + /** Used to clear the US Privacy flag on the Android or iOS DTExchange SDK. */ + fun clearUSPrivacyString() + + companion object { + /** The codec used by DTExchangePrivacyApi. */ + val codec: MessageCodec by lazy { + StandardMessageCodec() + } + /** Sets up an instance of `DTExchangePrivacyApi` to handle messages through the `binaryMessenger`. */ + fun setUp(binaryMessenger: BinaryMessenger, api: DTExchangePrivacyApi?, messageChannelSuffix: String = "") { + val separatedMessageChannelSuffix = if (messageChannelSuffix.isNotEmpty()) ".$messageChannelSuffix" else "" + run { + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setLgpdConsent$separatedMessageChannelSuffix", codec) + if (api != null) { + channel.setMessageHandler { message, reply -> + val args = message as List + val wasConsentGivenArg = args[0] as Boolean + val wrapped: List = try { + api.setLgpdConsent(wasConsentGivenArg) + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } + reply.reply(wrapped) + } + } else { + channel.setMessageHandler(null) + } + } + run { + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearLgpdConsentData$separatedMessageChannelSuffix", codec) + if (api != null) { + channel.setMessageHandler { _, reply -> + val wrapped: List = try { + api.clearLgpdConsentData() + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } + reply.reply(wrapped) + } + } else { + channel.setMessageHandler(null) + } + } + run { + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setUSPrivacyString$separatedMessageChannelSuffix", codec) + if (api != null) { + channel.setMessageHandler { message, reply -> + val args = message as List + val usPrivacyStringArg = args[0] as String + val wrapped: List = try { + api.setUSPrivacyString(usPrivacyStringArg) + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } + reply.reply(wrapped) + } + } else { + channel.setMessageHandler(null) + } + } + run { + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearUSPrivacyString$separatedMessageChannelSuffix", codec) + if (api != null) { + channel.setMessageHandler { _, reply -> + val wrapped: List = try { + api.clearUSPrivacyString() + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } + reply.reply(wrapped) + } + } else { + channel.setMessageHandler(null) + } + } + } + } +} diff --git a/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDTExchangePlugin.kt b/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDTExchangePlugin.kt index 6477b3a14..d07fd5298 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDTExchangePlugin.kt +++ b/packages/mediation/gma_mediation_dtexchange/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDTExchangePlugin.kt @@ -1,10 +1,31 @@ package io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange +import com.fyber.inneractive.sdk.external.InneractiveAdManager import io.flutter.embedding.engine.plugins.FlutterPlugin -/** Class that serves as bridge to get the adapter android dependency and make it available to a Flutter app. */ -class GmaMediationDTExchangePlugin: FlutterPlugin { - override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} +/** Manages DTExchangePrivacyApi and implements the needed methods. */ +class GmaMediationDTExchangePlugin: FlutterPlugin, DTExchangePrivacyApi { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { + DTExchangePrivacyApi.setUp(flutterPluginBinding.binaryMessenger, this) + } - override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { + DTExchangePrivacyApi.setUp(binding.binaryMessenger, null) + } + + override fun setLgpdConsent(wasConsentGiven: Boolean) { + InneractiveAdManager.setLgpdConsent(wasConsentGiven) + } + + override fun clearLgpdConsentData() { + InneractiveAdManager.clearLgpdConsentData() + } + + override fun setUSPrivacyString(usPrivacyString: String) { + InneractiveAdManager.setUSPrivacyString(usPrivacyString) + } + + override fun clearUSPrivacyString() { + InneractiveAdManager.clearUSPrivacyString() + } } diff --git a/packages/mediation/gma_mediation_dtexchange/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDtexchangePluginTest.kt b/packages/mediation/gma_mediation_dtexchange/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDtexchangePluginTest.kt index 215f07eb9..e0a2238fc 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDtexchangePluginTest.kt +++ b/packages/mediation/gma_mediation_dtexchange/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/GmaMediationDtexchangePluginTest.kt @@ -1,27 +1,80 @@ package io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import kotlin.test.Test -import org.mockito.Mockito - -/* - * This demonstrates a simple unit test of the Kotlin portion of this plugin's implementation. - * - * Once you have built the plugin's example app, you can run these tests from the command - * line by running `./gradlew testDebugUnitTest` in the `example/android/` directory, or - * you can run them directly from IDEs that support JUnit such as Android Studio. - */ +import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.fyber.inneractive.sdk.external.InneractiveAdManager +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.Mockito.mockStatic +import org.mockito.kotlin.eq +@RunWith(AndroidJUnit4::class) internal class GmaMediationDtexchangePluginTest { @Test - fun onMethodCall_getPlatformVersion_returnsExpectedValue() { - val plugin = GmaMediationDtexchangePlugin() + fun setLgpdConsent_withTrueValue_invokesSetLgpdConsentWithTrueValue() { + val plugin = GmaMediationDTExchangePlugin() + mockStatic(InneractiveAdManager::class.java).use { mockedDTExchangeAdManager -> - val call = MethodCall("getPlatformVersion", null) - val mockResult: MethodChannel.Result = Mockito.mock(MethodChannel.Result::class.java) - plugin.onMethodCall(call, mockResult) + plugin.setLgpdConsent(true) - Mockito.verify(mockResult).success("Android " + android.os.Build.VERSION.RELEASE) + mockedDTExchangeAdManager.verify { + InneractiveAdManager.setLgpdConsent(eq(true)) + } + } + } + + @Test + fun setLgpdConsent_withFalseValue_invokesSetLgpdConsentWithFalseValue() { + val plugin = GmaMediationDTExchangePlugin() + mockStatic(InneractiveAdManager::class.java).use { mockedDTExchangeAdManager -> + + plugin.setLgpdConsent(false) + + mockedDTExchangeAdManager.verify { + InneractiveAdManager.setLgpdConsent(eq(false)) + } + } + } + + @Test + fun clearLgpdConsentData_invokesClearLgpdConsentData() { + val plugin = GmaMediationDTExchangePlugin() + mockStatic(InneractiveAdManager::class.java).use { mockedDTExchangeAdManager -> + + plugin.clearLgpdConsentData() + + mockedDTExchangeAdManager.verify { + InneractiveAdManager.clearLgpdConsentData() + } + } + } + + @Test + fun setUSPrivacyString_invokesSetUSPrivacyString() { + val plugin = GmaMediationDTExchangePlugin() + mockStatic(InneractiveAdManager::class.java).use { mockedDTExchangeAdManager -> + + plugin.setUSPrivacyString(TEST_CONSENT_STRING) + + mockedDTExchangeAdManager.verify { + InneractiveAdManager.setUSPrivacyString(eq(TEST_CONSENT_STRING)) + } + } + } + + @Test + fun clearUSPrivacyString_invokesClearUSPrivacyString() { + val plugin = GmaMediationDTExchangePlugin() + mockStatic(InneractiveAdManager::class.java).use { mockedDTExchangeAdManager -> + + plugin.clearUSPrivacyString() + + mockedDTExchangeAdManager.verify { + InneractiveAdManager.clearUSPrivacyString() + } + } + } + + companion object { + const val TEST_CONSENT_STRING = "testConsentString" } } diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Debug.xcconfig index 592ceee85..ec97fc6f3 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Debug.xcconfig +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Release.xcconfig index 592ceee85..c4855bfe2 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Release.xcconfig +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile b/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile new file mode 100644 index 000000000..38b28ff0d --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile @@ -0,0 +1,43 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '12.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_modular_headers! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj index a4c29d867..9ba859137 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,14 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 331C808B294A63AB00263BE5 /* GmaMediationDtexchangePluginTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* GmaMediationDtexchangePluginTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 7ED3FF60DFA5AF8AFF6AB4C8 /* libPods-Runner.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E92C8C6658B2F16CF151B264 /* libPods-Runner.a */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + B7373BCFDC6F242653274BD8 /* libPods-RunnerTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FE6932FC6A221D2A065BA19 /* libPods-RunnerTests.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -40,13 +42,15 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 0FE6932FC6A221D2A065BA19 /* libPods-RunnerTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-RunnerTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C807B294A618700263BE5 /* GmaMediationDtexchangePluginTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GmaMediationDtexchangePluginTests.swift; sourceTree = ""; }; 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7890833C8A06A38A9C6B8346 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; @@ -55,13 +59,28 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 9B3AD38CDF99309487DCE609 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + DD3DB214A5A7FC659D11247C /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; + E6B8122A81F4D5FEF3259BB4 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; }; + E92C8C6658B2F16CF151B264 /* libPods-Runner.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Runner.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + EEF3DFF0CD2042A5E4AA0DCA /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; + F8929DB9C0880FE085C306CE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 7479BD3A993BCA69DD5BAE53 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + B7373BCFDC6F242653274BD8 /* libPods-RunnerTests.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 97C146EB1CF9000F007C117D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 7ED3FF60DFA5AF8AFF6AB4C8 /* libPods-Runner.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -71,11 +90,33 @@ 331C8082294A63A400263BE5 /* RunnerTests */ = { isa = PBXGroup; children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, + 331C807B294A618700263BE5 /* GmaMediationDtexchangePluginTests.swift */, ); path = RunnerTests; sourceTree = ""; }; + 477D1DB2ED00F2BF4C86A6A4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + E92C8C6658B2F16CF151B264 /* libPods-Runner.a */, + 0FE6932FC6A221D2A065BA19 /* libPods-RunnerTests.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 7F5876306538D9102F2D1064 /* Pods */ = { + isa = PBXGroup; + children = ( + F8929DB9C0880FE085C306CE /* Pods-Runner.debug.xcconfig */, + 7890833C8A06A38A9C6B8346 /* Pods-Runner.release.xcconfig */, + 9B3AD38CDF99309487DCE609 /* Pods-Runner.profile.xcconfig */, + EEF3DFF0CD2042A5E4AA0DCA /* Pods-RunnerTests.debug.xcconfig */, + DD3DB214A5A7FC659D11247C /* Pods-RunnerTests.release.xcconfig */, + E6B8122A81F4D5FEF3259BB4 /* Pods-RunnerTests.profile.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -94,6 +135,8 @@ 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, 331C8082294A63A400263BE5 /* RunnerTests */, + 7F5876306538D9102F2D1064 /* Pods */, + 477D1DB2ED00F2BF4C86A6A4 /* Frameworks */, ); sourceTree = ""; }; @@ -128,8 +171,10 @@ isa = PBXNativeTarget; buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( + 1BA28C831D9FE41B481A5CD7 /* [CP] Check Pods Manifest.lock */, 331C807D294A63A400263BE5 /* Sources */, 331C807F294A63A400263BE5 /* Resources */, + 7479BD3A993BCA69DD5BAE53 /* Frameworks */, ); buildRules = ( ); @@ -145,12 +190,14 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + FF8E996C495CEC35947A4FF9 /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 835FC7364862FD04126FFAAF /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -222,6 +269,28 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 1BA28C831D9FE41B481A5CD7 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -238,6 +307,23 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 835FC7364862FD04126FFAAF /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Copy Pods Resources"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -253,6 +339,28 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; + FF8E996C495CEC35947A4FF9 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -260,7 +368,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + 331C808B294A63AB00263BE5 /* GmaMediationDtexchangePluginTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -378,6 +486,7 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = EEF3DFF0CD2042A5E4AA0DCA /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,6 +504,7 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = DD3DB214A5A7FC659D11247C /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -410,6 +520,7 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; + baseConfigurationReference = E6B8122A81F4D5FEF3259BB4 /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcworkspace/contents.xcworkspacedata index 1d526a16e..21a3cc14c 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcworkspace/contents.xcworkspacedata +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/GmaMediationDtexchangePluginTests.swift b/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/GmaMediationDtexchangePluginTests.swift new file mode 100644 index 000000000..bfe8262a1 --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/GmaMediationDtexchangePluginTests.swift @@ -0,0 +1,88 @@ +import UIKit +import XCTest + +@testable import gma_mediation_dtexchange + +class GmaMediationDtexchangePluginTests: XCTestCase { + func testSetLgpdConsent() { + let dtExchangeFake = DTExchangePrivacyFake() + let plugin = GmaMediationDTExchangePlugin.init(dtExchangeApi: dtExchangeFake) + + do { + try plugin.setLgpdConsent(wasConsentGiven: true) + } catch { + fatalError("testSetLgpdConsent FAILED: setLgpdConsent did not complete.") + } + + XCTAssertEqual(dtExchangeFake.lgdpConsent, true) + } + + func testClearLgpdConsentData() { + let dtExchangeFake = DTExchangePrivacyFake() + let plugin = GmaMediationDTExchangePlugin.init(dtExchangeApi: dtExchangeFake) + + do { + try plugin.clearLgpdConsentData() + } catch { + fatalError("testClearLgpdConsentData FAILED: clearLgpdConsentData did not complete.") + } + + XCTAssertEqual(dtExchangeFake.clearLgdp, 1) + } + + func testSetUSPrivacyString() { + let dtExchangeFake = DTExchangePrivacyFake() + let plugin = GmaMediationDTExchangePlugin.init(dtExchangeApi: dtExchangeFake) + + do { + try plugin.setUSPrivacyString(usPrivacyString: "testString") + } catch { + fatalError("testSetUSPrivacyString FAILED: setUSPrivacyString did not complete.") + } + + XCTAssertEqual(dtExchangeFake.usPrivacyString, "testString") + } + + func testClearUSPrivacyString() { + let dtExchangeFake = DTExchangePrivacyFake() + let plugin = GmaMediationDTExchangePlugin.init(dtExchangeApi: dtExchangeFake) + + do { + try plugin.clearUSPrivacyString() + } catch { + fatalError("testClearUSPrivacyString FAILED: clearUSPrivacyString did not complete.") + } + + XCTAssertEqual(dtExchangeFake.clearUSPrivacy, 1) + } +} + +class DTExchangePrivacyFake : DTExchangePrivacyProtocol { + var lgdpConsent: Bool + var clearLgdp: Int + var usPrivacyString: String + var clearUSPrivacy: Int + + init() { + lgdpConsent = false + clearLgdp = 0 + usPrivacyString = "" + clearUSPrivacy = 0 + } + + func setLgpdConsent(wasConsentGiven: Bool) { + self.lgdpConsent = wasConsentGiven + } + + func clearLgpdConsentData() { + self.clearLgdp += 1 + } + + func setUSPrivacyString(usPrivacyString: String) { + self.usPrivacyString = usPrivacyString + } + + func clearUSPrivacyString() { + self.clearUSPrivacy += 1 + } +} diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/RunnerTests.swift b/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/RunnerTests.swift deleted file mode 100644 index 93479ea0b..000000000 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/RunnerTests/RunnerTests.swift +++ /dev/null @@ -1,26 +0,0 @@ -import Flutter -import UIKit -import XCTest - -@testable import gma_mediation_dtexchange - -// This demonstrates a simple unit test of the Swift portion of this plugin's implementation. -// -// See https://developer.apple.com/documentation/xctest for more information about using XCTest. - -class RunnerTests: XCTestCase { - - func testGetPlatformVersion() { - let plugin = GmaMediationDtexchangePlugin() - - let call = FlutterMethodCall(methodName: "getPlatformVersion", arguments: []) - - let resultExpectation = expectation(description: "result block must be called.") - plugin.handle(call) { result in - XCTAssertEqual(result as! String, "iOS " + UIDevice.current.systemVersion) - resultExpectation.fulfill() - } - waitForExpectations(timeout: 1) - } - -} diff --git a/packages/mediation/gma_mediation_dtexchange/ios/Classes/DTExchangePrivacyApi.g.swift b/packages/mediation/gma_mediation_dtexchange/ios/Classes/DTExchangePrivacyApi.g.swift new file mode 100644 index 000000000..ef5dd6be6 --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/ios/Classes/DTExchangePrivacyApi.g.swift @@ -0,0 +1,147 @@ +// Autogenerated from Pigeon (v19.0.0), do not edit directly. +// See also: https://pub.dev/packages/pigeon + +import Foundation + +#if os(iOS) + import Flutter +#elseif os(macOS) + import FlutterMacOS +#else + #error("Unsupported platform.") +#endif + +/// Error class for passing custom error details to Dart side. +final class PigeonError: Error { + let code: String + let message: String? + let details: Any? + + init(code: String, message: String?, details: Any?) { + self.code = code + self.message = message + self.details = details + } + + var localizedDescription: String { + return + "PigeonError(code: \(code), message: \(message ?? ""), details: \(details ?? "")" + } +} + +private func wrapResult(_ result: Any?) -> [Any?] { + return [result] +} + +private func wrapError(_ error: Any) -> [Any?] { + if let pigeonError = error as? PigeonError { + return [ + pigeonError.code, + pigeonError.message, + pigeonError.details, + ] + } + if let flutterError = error as? FlutterError { + return [ + flutterError.code, + flutterError.message, + flutterError.details, + ] + } + return [ + "\(error)", + "\(type(of: error))", + "Stacktrace: \(Thread.callStackSymbols)", + ] +} + +private func isNullish(_ value: Any?) -> Bool { + return value is NSNull || value == nil +} + +private func nilOrValue(_ value: Any?) -> T? { + if value is NSNull { return nil } + return value as! T? +} +/// The generated classes set the channels to call the methods in the corresponding kotlin DTExchangePrivacyApi interface and swift DTExchangePrivacyApi protocol from the dart layer. +/// +/// Generated protocol from Pigeon that represents a handler of messages from Flutter. +protocol DTExchangePrivacyApi { + /// Used to configure LGDP on the Android or iOS DTExchange SDK. + func setLgpdConsent(wasConsentGiven: Bool) throws + /// Used to clear the LGDP flag on the Android or iOS DTExchange SDK. + func clearLgpdConsentData() throws + /// Used to configure consent to Sell Personal Information on the Android or iOS DTExchange SDK. + func setUSPrivacyString(usPrivacyString: String) throws + /// Used to clear the US Privacy flag on the Android or iOS DTExchange SDK. + func clearUSPrivacyString() throws +} + +/// Generated setup class from Pigeon to handle messages through the `binaryMessenger`. +class DTExchangePrivacyApiSetup { + /// The codec used by DTExchangePrivacyApi. + /// Sets up an instance of `DTExchangePrivacyApi` to handle messages through the `binaryMessenger`. + static func setUp(binaryMessenger: FlutterBinaryMessenger, api: DTExchangePrivacyApi?, messageChannelSuffix: String = "") { + let channelSuffix = messageChannelSuffix.count > 0 ? ".\(messageChannelSuffix)" : "" + /// Used to configure LGDP on the Android or iOS DTExchange SDK. + let setLgpdConsentChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setLgpdConsent\(channelSuffix)", binaryMessenger: binaryMessenger) + if let api = api { + setLgpdConsentChannel.setMessageHandler { message, reply in + let args = message as! [Any?] + let wasConsentGivenArg = args[0] as! Bool + do { + try api.setLgpdConsent(wasConsentGiven: wasConsentGivenArg) + reply(wrapResult(nil)) + } catch { + reply(wrapError(error)) + } + } + } else { + setLgpdConsentChannel.setMessageHandler(nil) + } + /// Used to clear the LGDP flag on the Android or iOS DTExchange SDK. + let clearLgpdConsentDataChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearLgpdConsentData\(channelSuffix)", binaryMessenger: binaryMessenger) + if let api = api { + clearLgpdConsentDataChannel.setMessageHandler { _, reply in + do { + try api.clearLgpdConsentData() + reply(wrapResult(nil)) + } catch { + reply(wrapError(error)) + } + } + } else { + clearLgpdConsentDataChannel.setMessageHandler(nil) + } + /// Used to configure consent to Sell Personal Information on the Android or iOS DTExchange SDK. + let setUSPrivacyStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setUSPrivacyString\(channelSuffix)", binaryMessenger: binaryMessenger) + if let api = api { + setUSPrivacyStringChannel.setMessageHandler { message, reply in + let args = message as! [Any?] + let usPrivacyStringArg = args[0] as! String + do { + try api.setUSPrivacyString(usPrivacyString: usPrivacyStringArg) + reply(wrapResult(nil)) + } catch { + reply(wrapError(error)) + } + } + } else { + setUSPrivacyStringChannel.setMessageHandler(nil) + } + /// Used to clear the US Privacy flag on the Android or iOS DTExchange SDK. + let clearUSPrivacyStringChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearUSPrivacyString\(channelSuffix)", binaryMessenger: binaryMessenger) + if let api = api { + clearUSPrivacyStringChannel.setMessageHandler { _, reply in + do { + try api.clearUSPrivacyString() + reply(wrapResult(nil)) + } catch { + reply(wrapError(error)) + } + } + } else { + clearUSPrivacyStringChannel.setMessageHandler(nil) + } + } +} diff --git a/packages/mediation/gma_mediation_dtexchange/ios/Classes/GmaMediationDTExchangePlugin.swift b/packages/mediation/gma_mediation_dtexchange/ios/Classes/GmaMediationDTExchangePlugin.swift index 15402e8c9..11671ac31 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/Classes/GmaMediationDTExchangePlugin.swift +++ b/packages/mediation/gma_mediation_dtexchange/ios/Classes/GmaMediationDTExchangePlugin.swift @@ -1,7 +1,66 @@ import Flutter +import IASDKCore import UIKit -/// Class that serves as bridge to get the adapter iOS dependency and make it available to a Flutter app. -public class GmaMediationDTExchangePlugin: NSObject, FlutterPlugin { - public static func register(with registrar: FlutterPluginRegistrar) {} +/// Manages DTExchangePrivacyApi and implements the needed methods. +public class GmaMediationDTExchangePlugin: NSObject, FlutterPlugin, DTExchangePrivacyApi { + let dtExchangeApi: DTExchangePrivacyProtocol + + init (dtExchangeApi: DTExchangePrivacyProtocol) { + self.dtExchangeApi = dtExchangeApi + } + + public static func register(with registrar: FlutterPluginRegistrar) { + let messenger : FlutterBinaryMessenger = registrar.messenger() + let api : DTExchangePrivacyApi&NSObjectProtocol=GmaMediationDTExchangePlugin.init(dtExchangeApi: DTExchangePrivacyImpl()) + DTExchangePrivacyApiSetup.setUp(binaryMessenger: messenger, api: api) + } + public func detachFromEngine(for registrar: FlutterPluginRegistrar) { + let messenger : FlutterBinaryMessenger = registrar.messenger() + DTExchangePrivacyApiSetup.setUp(binaryMessenger: messenger, api: nil) + } + + func setLgpdConsent(wasConsentGiven: Bool) throws { + dtExchangeApi.setLgpdConsent(wasConsentGiven: wasConsentGiven) + } + + func clearLgpdConsentData() throws { + dtExchangeApi.clearLgpdConsentData() + } + + func setUSPrivacyString(usPrivacyString: String) throws { + dtExchangeApi.setUSPrivacyString(usPrivacyString: usPrivacyString) + } + + func clearUSPrivacyString() throws { + dtExchangeApi.clearUSPrivacyString() + } +} + +protocol DTExchangePrivacyProtocol { + func setLgpdConsent(wasConsentGiven: Bool) + + func clearLgpdConsentData() + + func setUSPrivacyString(usPrivacyString: String) + + func clearUSPrivacyString() +} + +class DTExchangePrivacyImpl : DTExchangePrivacyProtocol { + func setLgpdConsent(wasConsentGiven: Bool) { + IASDKCore.sharedInstance().lgpdConsent = wasConsentGiven ? IALGPDConsentType.given : IALGPDConsentType.denied + } + + func clearLgpdConsentData() { + IASDKCore.sharedInstance().clearLGPDConsentData() + } + + func setUSPrivacyString(usPrivacyString: String) { + IASDKCore.sharedInstance().ccpaString = usPrivacyString + } + + func clearUSPrivacyString() { + IASDKCore.sharedInstance().ccpaString = nil + } } diff --git a/packages/mediation/gma_mediation_dtexchange/lib/dtexchange_privacy_api.g.dart b/packages/mediation/gma_mediation_dtexchange/lib/dtexchange_privacy_api.g.dart new file mode 100644 index 000000000..19917f254 --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/lib/dtexchange_privacy_api.g.dart @@ -0,0 +1,134 @@ +// Autogenerated from Pigeon (v19.0.0), do not edit directly. +// See also: https://pub.dev/packages/pigeon +// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers + +import 'dart:async'; +import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List; + +import 'package:flutter/foundation.dart' show ReadBuffer, WriteBuffer; +import 'package:flutter/services.dart'; + +PlatformException _createConnectionError(String channelName) { + return PlatformException( + code: 'channel-error', + message: 'Unable to establish connection on channel: "$channelName".', + ); +} + +/// The generated classes set the channels to call the methods in the corresponding kotlin DTExchangePrivacyApi interface and swift DTExchangePrivacyApi protocol from the dart layer. +class DTExchangePrivacyApi { + /// Constructor for [DTExchangePrivacyApi]. The [binaryMessenger] named argument is + /// available for dependency injection. If it is left null, the default + /// BinaryMessenger will be used which routes to the host platform. + DTExchangePrivacyApi( + {BinaryMessenger? binaryMessenger, String messageChannelSuffix = ''}) + : __pigeon_binaryMessenger = binaryMessenger, + __pigeon_messageChannelSuffix = + messageChannelSuffix.isNotEmpty ? '.$messageChannelSuffix' : ''; + final BinaryMessenger? __pigeon_binaryMessenger; + + static const MessageCodec pigeonChannelCodec = + StandardMessageCodec(); + + final String __pigeon_messageChannelSuffix; + + /// Used to configure LGDP on the Android or iOS DTExchange SDK. + Future setLgpdConsent(bool wasConsentGiven) async { + final String __pigeon_channelName = + 'dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setLgpdConsent$__pigeon_messageChannelSuffix'; + final BasicMessageChannel __pigeon_channel = + BasicMessageChannel( + __pigeon_channelName, + pigeonChannelCodec, + binaryMessenger: __pigeon_binaryMessenger, + ); + final List? __pigeon_replyList = await __pigeon_channel + .send([wasConsentGiven]) as List?; + if (__pigeon_replyList == null) { + throw _createConnectionError(__pigeon_channelName); + } else if (__pigeon_replyList.length > 1) { + throw PlatformException( + code: __pigeon_replyList[0]! as String, + message: __pigeon_replyList[1] as String?, + details: __pigeon_replyList[2], + ); + } else { + return; + } + } + + /// Used to clear the LGDP flag on the Android or iOS DTExchange SDK. + Future clearLgpdConsentData() async { + final String __pigeon_channelName = + 'dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearLgpdConsentData$__pigeon_messageChannelSuffix'; + final BasicMessageChannel __pigeon_channel = + BasicMessageChannel( + __pigeon_channelName, + pigeonChannelCodec, + binaryMessenger: __pigeon_binaryMessenger, + ); + final List? __pigeon_replyList = + await __pigeon_channel.send(null) as List?; + if (__pigeon_replyList == null) { + throw _createConnectionError(__pigeon_channelName); + } else if (__pigeon_replyList.length > 1) { + throw PlatformException( + code: __pigeon_replyList[0]! as String, + message: __pigeon_replyList[1] as String?, + details: __pigeon_replyList[2], + ); + } else { + return; + } + } + + /// Used to configure consent to Sell Personal Information on the Android or iOS DTExchange SDK. + Future setUSPrivacyString(String usPrivacyString) async { + final String __pigeon_channelName = + 'dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.setUSPrivacyString$__pigeon_messageChannelSuffix'; + final BasicMessageChannel __pigeon_channel = + BasicMessageChannel( + __pigeon_channelName, + pigeonChannelCodec, + binaryMessenger: __pigeon_binaryMessenger, + ); + final List? __pigeon_replyList = await __pigeon_channel + .send([usPrivacyString]) as List?; + if (__pigeon_replyList == null) { + throw _createConnectionError(__pigeon_channelName); + } else if (__pigeon_replyList.length > 1) { + throw PlatformException( + code: __pigeon_replyList[0]! as String, + message: __pigeon_replyList[1] as String?, + details: __pigeon_replyList[2], + ); + } else { + return; + } + } + + /// Used to clear the US Privacy flag on the Android or iOS DTExchange SDK. + Future clearUSPrivacyString() async { + final String __pigeon_channelName = + 'dev.flutter.pigeon.gma_mediation_dtexchange.DTExchangePrivacyApi.clearUSPrivacyString$__pigeon_messageChannelSuffix'; + final BasicMessageChannel __pigeon_channel = + BasicMessageChannel( + __pigeon_channelName, + pigeonChannelCodec, + binaryMessenger: __pigeon_binaryMessenger, + ); + final List? __pigeon_replyList = + await __pigeon_channel.send(null) as List?; + if (__pigeon_replyList == null) { + throw _createConnectionError(__pigeon_channelName); + } else if (__pigeon_replyList.length > 1) { + throw PlatformException( + code: __pigeon_replyList[0]! as String, + message: __pigeon_replyList[1] as String?, + details: __pigeon_replyList[2], + ); + } else { + return; + } + } +} diff --git a/packages/mediation/gma_mediation_dtexchange/lib/gma_mediation_dtexchange.dart b/packages/mediation/gma_mediation_dtexchange/lib/gma_mediation_dtexchange.dart index d645a3381..1821de350 100644 --- a/packages/mediation/gma_mediation_dtexchange/lib/gma_mediation_dtexchange.dart +++ b/packages/mediation/gma_mediation_dtexchange/lib/gma_mediation_dtexchange.dart @@ -12,5 +12,23 @@ // See the License for the specific language governing permissions and // limitations under the License. -/// This empty class is needed to allow correct compatibility analysis with host platforms. -class GmaMediationDTExchange {} +import 'package:gma_mediation_dtexchange/dtexchange_privacy_api.g.dart'; + +/// This class has entrypoint to call DT Exchange's SDK APIs. +class GmaMediationDTExchange { + Future setLgpdConsent(bool wasConsentGiven) async { + DTExchangePrivacyApi().setLgpdConsent(wasConsentGiven); + } + + Future clearLgpdConsentData() async { + DTExchangePrivacyApi().clearLgpdConsentData(); + } + + Future setUSPrivacyString(String usPrivacyString) async { + DTExchangePrivacyApi().setUSPrivacyString(usPrivacyString); + } + + Future clearUSPrivacyString() async { + DTExchangePrivacyApi().clearUSPrivacyString(); + } +} diff --git a/packages/mediation/gma_mediation_dtexchange/pigeons/dtexchange_privacy_api.dart b/packages/mediation/gma_mediation_dtexchange/pigeons/dtexchange_privacy_api.dart new file mode 100644 index 000000000..1344795d0 --- /dev/null +++ b/packages/mediation/gma_mediation_dtexchange/pigeons/dtexchange_privacy_api.dart @@ -0,0 +1,47 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:pigeon/pigeon.dart'; + +@ConfigurePigeon( + PigeonOptions( + dartOut: 'lib/dtexchange_privacy_api.g.dart', + dartOptions: DartOptions(), + kotlinOut: + 'android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_dtexchange/DTExchangePrivacyApi.g.kt', + kotlinOptions: KotlinOptions( + package: + 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange', + ), + swiftOut: 'ios/Classes/DTExchangePrivacyApi.g.swift', + swiftOptions: SwiftOptions(), + dartPackageName: 'gma_mediation_dtexchange', + ), +) +@HostApi() + +/// The generated classes set the channels to call the methods in the corresponding kotlin DTExchangePrivacyApi interface and swift DTExchangePrivacyApi protocol from the dart layer. +abstract class DTExchangePrivacyApi { + /// Used to configure LGDP on the Android or iOS DTExchange SDK. + void setLgpdConsent(bool wasConsentGiven); + + /// Used to clear the LGDP flag on the Android or iOS DTExchange SDK. + void clearLgpdConsentData(); + + /// Used to configure consent to Sell Personal Information on the Android or iOS DTExchange SDK. + void setUSPrivacyString(String usPrivacyString); + + /// Used to clear the US Privacy flag on the Android or iOS DTExchange SDK. + void clearUSPrivacyString(); +} diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index 69de9bf79..c15b9a3e3 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -14,10 +14,11 @@ dependencies: plugin_platform_interface: ^2.0.2 dev_dependencies: - flutter_lints: ^3.0.0 + flutter_lints: ^4.0.0 flutter_test: sdk: flutter lint: ^2.3.0 + pigeon: ^19.0.0 flutter: plugin: From ad4f3b296eb086d0cff2d71e0e253ac182abd81e Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Mon, 1 Jul 2024 15:46:43 -0400 Subject: [PATCH 005/318] [Sample] Updated test ad unit id for Android inline adaptive banner (#1119) * Updated ad id for banner sample * Updated android only --------- Co-authored-by: Justin Malandruccolo --- packages/google_mobile_ads/example/android/app/build.gradle | 4 ++-- .../example/lib/inline_adaptive_example.dart | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/google_mobile_ads/example/android/app/build.gradle b/packages/google_mobile_ads/example/android/app/build.gradle index 55a3b0117..fc0e073d4 100644 --- a/packages/google_mobile_ads/example/android/app/build.gradle +++ b/packages/google_mobile_ads/example/android/app/build.gradle @@ -25,7 +25,7 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 33 + compileSdkVersion 34 namespace 'io.flutter.plugins.googlemobileadsexample' @@ -36,7 +36,7 @@ android { defaultConfig { applicationId "io.flutter.plugins.googlemobileadsexample" minSdkVersion 21 - targetSdkVersion 33 + targetSdkVersion 34 versionCode flutterVersionCode.toInteger() versionName flutterVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/packages/google_mobile_ads/example/lib/inline_adaptive_example.dart b/packages/google_mobile_ads/example/lib/inline_adaptive_example.dart index 48709bae4..c6d4fc59e 100644 --- a/packages/google_mobile_ads/example/lib/inline_adaptive_example.dart +++ b/packages/google_mobile_ads/example/lib/inline_adaptive_example.dart @@ -14,6 +14,8 @@ // ignore_for_file: public_member_api_docs +import 'dart:io'; + import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; import 'constants.dart'; @@ -55,7 +57,9 @@ class _InlineAdaptiveExampleState extends State { _adWidth.truncate()); _inlineAdaptiveAd = AdManagerBannerAd( - adUnitId: '/6499/example/adaptive-banner', + adUnitId: Platform.isAndroid + ? '/21775744923/example/banner' + : '/6499/example/adaptive-banner', sizes: [size], request: AdManagerAdRequest(), listener: AdManagerBannerAdListener( From 8e0834ee7f9b8f0ac1b886c5b3cae8937835c605 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 12 Jul 2024 16:41:14 -0700 Subject: [PATCH 006/318] Bump actions/checkout from 4.1.2 to 4.1.7 (#1120) Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.2 to 4.1.7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.1.2...692973e3d937129bcbf40652eb9f2f61becf3332) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yaml | 6 +++--- .github/workflows/gma_mediation_applovin.yaml | 6 +++--- .github/workflows/gma_mediation_dtexchange.yaml | 6 +++--- .github/workflows/gma_mediation_inmobi.yaml | 2 +- .github/workflows/gma_mediation_ironsource.yaml | 6 +++--- .github/workflows/gma_mediation_liftoffmonetize.yaml | 6 +++--- .github/workflows/gma_mediation_meta.yaml | 2 +- .github/workflows/gma_mediation_mintegral.yaml | 2 +- .github/workflows/gma_mediation_pangle.yaml | 2 +- .github/workflows/gma_mediation_unity.yaml | 6 +++--- .github/workflows/google_mobile_ads.yaml | 6 +++--- 11 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 4304cb4cc..fc52e543f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,7 +29,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -60,7 +60,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -92,7 +92,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index 7a33c8dd4..e6e745f8d 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index ce11b2371..e0104b1fe 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_inmobi.yaml b/.github/workflows/gma_mediation_inmobi.yaml index 6dcbdc7b5..7f2627ddc 100644 --- a/.github/workflows/gma_mediation_inmobi.yaml +++ b/.github/workflows/gma_mediation_inmobi.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 283d2e65b..abfa7a4ef 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -55,7 +55,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -81,7 +81,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index 5b6cfd99b..2f535bb8e 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_meta.yaml b/.github/workflows/gma_mediation_meta.yaml index cbab38665..c8c9295e8 100644 --- a/.github/workflows/gma_mediation_meta.yaml +++ b/.github/workflows/gma_mediation_meta.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_mintegral.yaml b/.github/workflows/gma_mediation_mintegral.yaml index 38e06e3d1..726b7ef2e 100644 --- a/.github/workflows/gma_mediation_mintegral.yaml +++ b/.github/workflows/gma_mediation_mintegral.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_pangle.yaml b/.github/workflows/gma_mediation_pangle.yaml index 5a1fb7e6d..9723d52e2 100644 --- a/.github/workflows/gma_mediation_pangle.yaml +++ b/.github/workflows/gma_mediation_pangle.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index 4d9bff4ab..24942e1fc 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -53,7 +53,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -80,7 +80,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index 263e1dc7f..e06ee82c7 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -34,7 +34,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 with: fetch-depth: 0 - name: "Install Flutter" From a1ef9f5ca2e560e3c01ddab2b20c297186571e97 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 10:55:22 -0400 Subject: [PATCH 007/318] Add Ad Inspector button to Banner Example (#1125) * Added ad inspector to app bar * removed changes * removed * new line * no changes * no changes pt 2 * Updated minimum to iOS 12 --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 29 +++---- .../banner_example/lib/app_bar_item.dart | 9 ++ samples/admob/banner_example/lib/main.dart | 86 +++++++++++-------- 4 files changed, 72 insertions(+), 54 deletions(-) create mode 100644 samples/admob/banner_example/lib/app_bar_item.dart diff --git a/samples/admob/banner_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/banner_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/banner_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/banner_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/banner_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/banner_example/ios/Runner.xcodeproj/project.pbxproj index d9c210628..1917bf7db 100644 --- a/samples/admob/banner_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/banner_example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,12 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +42,8 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -53,8 +55,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,6 +68,14 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -79,14 +87,6 @@ name = Flutter; sourceTree = ""; }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( @@ -129,7 +129,6 @@ buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( 331C807D294A63A400263BE5 /* Sources */, - 331C807E294A63A400263BE5 /* Frameworks */, 331C807F294A63A400263BE5 /* Resources */, ); buildRules = ( @@ -363,6 +362,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,7 +377,6 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE0B7B92F70575B8D7E0D07E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,7 +394,6 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89B67EB44CE7B6631473024E /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -411,7 +409,6 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 640959BDD8F10B91D80A66BE /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -541,6 +538,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -563,6 +561,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/banner_example/lib/app_bar_item.dart b/samples/admob/banner_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/banner_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index 3b28efa10..845f0c3cc 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; +import 'app_bar_item.dart'; import 'consent_manager.dart'; void main() { @@ -12,7 +13,7 @@ void main() { )); } -/// A simple app that loads a banner ad. +/// An example app that loads a banner ad. class BannerExample extends StatefulWidget { const BannerExample({super.key}); @@ -21,10 +22,9 @@ class BannerExample extends StatefulWidget { } class BannerExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _consentManager = ConsentManager(); var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; BannerAd? _bannerAd; bool _isLoaded = false; Orientation? _currentOrientation; @@ -44,6 +44,9 @@ class BannerExampleState extends State { "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); } + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -58,10 +61,7 @@ class BannerExampleState extends State { title: 'Banner Example', home: Scaffold( appBar: AppBar( - title: const Text('Banner Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null), + title: const Text('Banner Example'), actions: _appBarActions()), body: OrientationBuilder( builder: (context, orientation) { if (_currentOrientation != orientation) { @@ -88,33 +88,36 @@ class BannerExampleState extends State { ))); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } }) ]; } @@ -169,6 +172,15 @@ class BannerExampleState extends State { ).load(); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -176,14 +188,12 @@ class BannerExampleState extends State { return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } From 596bf161d64def473ee5b663e66ca7e04f4ef452 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:04:00 -0400 Subject: [PATCH 008/318] Add Ad inspector button to Interstitial example (#1126) * Added ad inspector code to interstitial example * iOS 12 * pause/resume updated * pause/resume --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 29 +++--- .../lib/app_bar_item.dart | 9 ++ .../admob/interstitial_example/lib/main.dart | 90 +++++++++++-------- 4 files changed, 75 insertions(+), 55 deletions(-) create mode 100644 samples/admob/interstitial_example/lib/app_bar_item.dart diff --git a/samples/admob/interstitial_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/interstitial_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/interstitial_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/interstitial_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/interstitial_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/interstitial_example/ios/Runner.xcodeproj/project.pbxproj index 84e9ca1c3..36654e194 100644 --- a/samples/admob/interstitial_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/interstitial_example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,12 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +42,8 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -53,8 +55,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,6 +68,14 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -79,14 +87,6 @@ name = Flutter; sourceTree = ""; }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( @@ -129,7 +129,6 @@ buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( 331C807D294A63A400263BE5 /* Sources */, - 331C807E294A63A400263BE5 /* Frameworks */, 331C807F294A63A400263BE5 /* Resources */, ); buildRules = ( @@ -363,6 +362,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,7 +377,6 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE0B7B92F70575B8D7E0D07E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,7 +394,6 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89B67EB44CE7B6631473024E /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -411,7 +409,6 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 640959BDD8F10B91D80A66BE /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -541,6 +538,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -563,6 +561,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/interstitial_example/lib/app_bar_item.dart b/samples/admob/interstitial_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/interstitial_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/interstitial_example/lib/main.dart b/samples/admob/interstitial_example/lib/main.dart index 7ba3528b7..23c6b927a 100644 --- a/samples/admob/interstitial_example/lib/main.dart +++ b/samples/admob/interstitial_example/lib/main.dart @@ -4,6 +4,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; +import 'app_bar_item.dart'; import 'consent_manager.dart'; void main() { @@ -13,7 +14,7 @@ void main() { )); } -/// A simple app that loads an interstitial ad. +/// An example app that loads an interstitial ad. class InterstitialExample extends StatefulWidget { const InterstitialExample({super.key}); @@ -22,14 +23,13 @@ class InterstitialExample extends StatefulWidget { } class InterstitialExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - InterstitialAd? _interstitialAd; final _consentManager = ConsentManager(); final _gameLength = 5; var _gamePaused = false; var _gameOver = false; var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; late var _counter = _gameLength; Timer? _timer; @@ -51,6 +51,9 @@ class InterstitialExampleState extends State { // Kick off the first play of the "game". _startNewGame(); + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -90,9 +93,7 @@ class InterstitialExampleState extends State { home: Scaffold( appBar: AppBar( title: const Text('Interstitial Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null, + actions: _appBarActions(), ), body: Stack( children: [ @@ -129,35 +130,39 @@ class InterstitialExampleState extends State { ); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _pauseGame(); - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } }) ]; } @@ -234,6 +239,15 @@ class InterstitialExampleState extends State { }); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -241,14 +255,12 @@ class InterstitialExampleState extends State { return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } From 39bccbf7dcb9c0c2329fbd96ffbd0d879b07f6f2 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:04:15 -0400 Subject: [PATCH 009/318] Add Ad inspector button to rewarded example (#1127) * Added ad inspector button to rewarded example * iOS 12 * pause/resume --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 29 +++--- .../rewarded_example/lib/app_bar_item.dart | 9 ++ samples/admob/rewarded_example/lib/main.dart | 94 +++++++++++-------- 4 files changed, 77 insertions(+), 57 deletions(-) create mode 100644 samples/admob/rewarded_example/lib/app_bar_item.dart diff --git a/samples/admob/rewarded_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/rewarded_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/rewarded_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/rewarded_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/rewarded_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/rewarded_example/ios/Runner.xcodeproj/project.pbxproj index d16f639a9..882fbd103 100644 --- a/samples/admob/rewarded_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/rewarded_example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,12 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +42,8 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -53,8 +55,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,6 +68,14 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -79,14 +87,6 @@ name = Flutter; sourceTree = ""; }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( @@ -129,7 +129,6 @@ buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( 331C807D294A63A400263BE5 /* Sources */, - 331C807E294A63A400263BE5 /* Frameworks */, 331C807F294A63A400263BE5 /* Resources */, ); buildRules = ( @@ -363,6 +362,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,7 +377,6 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE0B7B92F70575B8D7E0D07E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,7 +394,6 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89B67EB44CE7B6631473024E /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -411,7 +409,6 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 640959BDD8F10B91D80A66BE /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -541,6 +538,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -563,6 +561,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/rewarded_example/lib/app_bar_item.dart b/samples/admob/rewarded_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/rewarded_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/rewarded_example/lib/main.dart b/samples/admob/rewarded_example/lib/main.dart index edd1319e4..01c667d9a 100644 --- a/samples/admob/rewarded_example/lib/main.dart +++ b/samples/admob/rewarded_example/lib/main.dart @@ -1,9 +1,11 @@ -import 'countdown_timer.dart'; import 'dart:io'; + import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; +import 'app_bar_item.dart'; import 'consent_manager.dart'; +import 'countdown_timer.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); @@ -12,7 +14,7 @@ void main() { )); } -/// A simple app that loads a rewarded ad. +/// An example app that loads a rewarded ad. class RewardedExample extends StatefulWidget { const RewardedExample({super.key}); @@ -21,14 +23,13 @@ class RewardedExample extends StatefulWidget { } class RewardedExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _consentManager = ConsentManager(); final CountdownTimer _countdownTimer = CountdownTimer(); var _showWatchVideoButton = false; var _gamePaused = false; var _gameOver = false; var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; var _coins = 0; RewardedAd? _rewardedAd; @@ -50,6 +51,9 @@ class RewardedExampleState extends State { // Kick off the first play of the "game". _startNewGame(); + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -97,10 +101,7 @@ class RewardedExampleState extends State { title: 'Rewarded Example', home: Scaffold( appBar: AppBar( - title: const Text('Rewarded Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null), + title: const Text('Rewarded Example'), actions: _appBarActions()), body: Stack( children: [ const Align( @@ -161,35 +162,39 @@ class RewardedExampleState extends State { ); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _pauseGame(); - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } }) ]; } @@ -231,6 +236,15 @@ class RewardedExampleState extends State { })); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -238,14 +252,12 @@ class RewardedExampleState extends State { return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } From 0b2c793e714c572a0cb04eec1e5b6c359405c131 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:06:21 -0400 Subject: [PATCH 010/318] Add Ad Inspector button to rewarded interstitial Example (#1128) * Add ad inspector to rewarded interstititla * iOS 12 --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 29 +++--- .../lib/app_bar_item.dart | 9 ++ .../lib/main.dart | 99 +++++++++++-------- 4 files changed, 80 insertions(+), 59 deletions(-) create mode 100644 samples/admob/rewarded_interstitial_example/lib/app_bar_item.dart diff --git a/samples/admob/rewarded_interstitial_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/rewarded_interstitial_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/rewarded_interstitial_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/rewarded_interstitial_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/rewarded_interstitial_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/rewarded_interstitial_example/ios/Runner.xcodeproj/project.pbxproj index 0cb2bb9ad..13edd948a 100644 --- a/samples/admob/rewarded_interstitial_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/rewarded_interstitial_example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,12 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +42,8 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -53,8 +55,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,6 +68,14 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -79,14 +87,6 @@ name = Flutter; sourceTree = ""; }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( @@ -129,7 +129,6 @@ buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( 331C807D294A63A400263BE5 /* Sources */, - 331C807E294A63A400263BE5 /* Frameworks */, 331C807F294A63A400263BE5 /* Resources */, ); buildRules = ( @@ -363,6 +362,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,7 +377,6 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE0B7B92F70575B8D7E0D07E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,7 +394,6 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89B67EB44CE7B6631473024E /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -411,7 +409,6 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 640959BDD8F10B91D80A66BE /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -541,6 +538,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -563,6 +561,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/rewarded_interstitial_example/lib/app_bar_item.dart b/samples/admob/rewarded_interstitial_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/rewarded_interstitial_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/rewarded_interstitial_example/lib/main.dart b/samples/admob/rewarded_interstitial_example/lib/main.dart index 9e876b60b..3386b2651 100644 --- a/samples/admob/rewarded_interstitial_example/lib/main.dart +++ b/samples/admob/rewarded_interstitial_example/lib/main.dart @@ -1,9 +1,11 @@ -import 'countdown_timer.dart'; import 'dart:io'; + import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; -import 'package:rewarded_interstitial_example/ad_dialog.dart'; +import 'ad_dialog.dart'; +import 'app_bar_item.dart'; +import 'countdown_timer.dart'; import 'consent_manager.dart'; void main() { @@ -13,7 +15,7 @@ void main() { )); } -/// A simple app that loads a rewarded interstitial ad. +/// An example app that loads a rewarded interstitial ad. class RewardedInterstitialExample extends StatefulWidget { const RewardedInterstitialExample({super.key}); @@ -24,14 +26,13 @@ class RewardedInterstitialExample extends StatefulWidget { class RewardedInterstitialExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _consentManager = ConsentManager(); final CountdownTimer _countdownTimer = CountdownTimer(5); var _coins = 0; var _gamePaused = false; var _gameOver = false; var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; RewardedInterstitialAd? _rewardedInterstitialAd; final String _adUnitId = Platform.isAndroid @@ -53,6 +54,9 @@ class RewardedInterstitialExampleState // Kick off the first play of the "game". _startNewGame(); + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -114,10 +118,7 @@ class RewardedInterstitialExampleState home: Scaffold( appBar: AppBar( title: const Text('Rewarded Interstitial Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null - ), + actions: _appBarActions()), body: Stack( children: [ const Align( @@ -161,40 +162,45 @@ class RewardedInterstitialExampleState ); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _pauseGame(); - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => + array + .map((item) => + PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } }) ]; } - /// Loads a rewarded interstitial ad. void _loadAd() async { // Only load an ad if the Mobile Ads SDK has gathered consent aligned with @@ -233,6 +239,15 @@ class RewardedInterstitialExampleState })); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -240,14 +255,12 @@ class RewardedInterstitialExampleState return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } From a681f5e533c216c0b44cfed12748668d42c60af4 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:06:36 -0400 Subject: [PATCH 011/318] Add Ad Inspector button to app open Example (#1129) * Added ad inspector button * ios 12 --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 29 +++---- .../app_open_example/lib/app_bar_item.dart | 9 ++ samples/admob/app_open_example/lib/main.dart | 86 +++++++++++-------- 4 files changed, 72 insertions(+), 54 deletions(-) create mode 100644 samples/admob/app_open_example/lib/app_bar_item.dart diff --git a/samples/admob/app_open_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/app_open_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/app_open_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/app_open_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/app_open_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/app_open_example/ios/Runner.xcodeproj/project.pbxproj index a29da22a9..bdf5494d7 100644 --- a/samples/admob/app_open_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/app_open_example/ios/Runner.xcodeproj/project.pbxproj @@ -8,12 +8,12 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; - 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,6 +42,8 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; @@ -53,8 +55,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; - 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -68,6 +68,14 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -79,14 +87,6 @@ name = Flutter; sourceTree = ""; }; - 331C8082294A63A400263BE5 /* RunnerTests */ = { - isa = PBXGroup; - children = ( - 331C807B294A618700263BE5 /* RunnerTests.swift */, - ); - path = RunnerTests; - sourceTree = ""; - }; 97C146E51CF9000F007C117D = { isa = PBXGroup; children = ( @@ -129,7 +129,6 @@ buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( 331C807D294A63A400263BE5 /* Sources */, - 331C807E294A63A400263BE5 /* Frameworks */, 331C807F294A63A400263BE5 /* Resources */, ); buildRules = ( @@ -363,6 +362,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -377,7 +377,6 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE0B7B92F70575B8D7E0D07E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -395,7 +394,6 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 89B67EB44CE7B6631473024E /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -411,7 +409,6 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 640959BDD8F10B91D80A66BE /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -541,6 +538,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -563,6 +561,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/app_open_example/lib/app_bar_item.dart b/samples/admob/app_open_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/app_open_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/app_open_example/lib/main.dart b/samples/admob/app_open_example/lib/main.dart index ece68e33d..ec3fabe5f 100644 --- a/samples/admob/app_open_example/lib/main.dart +++ b/samples/admob/app_open_example/lib/main.dart @@ -16,9 +16,10 @@ import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; + +import 'app_bar_item.dart'; import 'app_lifecycle_reactor.dart'; import 'app_open_ad_manager.dart'; - import 'consent_manager.dart'; void main() { @@ -49,10 +50,9 @@ class HomePage extends StatefulWidget { /// Example home page for an app open ad. class _HomePageState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _appOpenAdManager = AppOpenAdManager(); var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; int _counter = 0; late AppLifecycleReactor _appLifecycleReactor; @@ -71,6 +71,9 @@ class _HomePageState extends State { "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); } + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -90,9 +93,7 @@ class _HomePageState extends State { return Scaffold( appBar: AppBar( title: const Text('App Open Demo Home Page'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null, + actions: _appBarActions(), ), body: Center( child: Column( @@ -116,38 +117,49 @@ class _HomePageState extends State { ); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: ConsentManager.instance.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - ConsentManager.instance - .showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + ConsentManager.instance.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } }) ]; } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await ConsentManager.instance.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -155,14 +167,12 @@ class _HomePageState extends State { return; } - var canRequestAds = await ConsentManager.instance.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await ConsentManager.instance.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _appOpenAdManager.loadAd(); } From afa237df39ff15cf56443c5ef5c5fe5dd39ceab0 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:07:02 -0400 Subject: [PATCH 012/318] Added ad inspector to native platform example (#1130) * Added ad inspector button * iOS 12 --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 3 + .../lib/app_bar_item.dart | 9 ++ .../native_platform_example/lib/main.dart | 86 +++++++++++-------- .../native_platform_example/pubspec.yaml | 2 +- 5 files changed, 62 insertions(+), 40 deletions(-) create mode 100644 samples/admob/native_platform_example/lib/app_bar_item.dart diff --git a/samples/admob/native_platform_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/native_platform_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/native_platform_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/native_platform_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/native_platform_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/native_platform_example/ios/Runner.xcodeproj/project.pbxproj index 61e8bcca4..4af18b4c3 100644 --- a/samples/admob/native_platform_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/native_platform_example/ios/Runner.xcodeproj/project.pbxproj @@ -364,6 +364,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -493,6 +494,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -516,6 +518,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/native_platform_example/lib/app_bar_item.dart b/samples/admob/native_platform_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/native_platform_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/native_platform_example/lib/main.dart b/samples/admob/native_platform_example/lib/main.dart index 1dbad0bd1..8a4bafc55 100644 --- a/samples/admob/native_platform_example/lib/main.dart +++ b/samples/admob/native_platform_example/lib/main.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; +import 'app_bar_item.dart'; import 'consent_manager.dart'; void main() { @@ -12,7 +13,7 @@ void main() { )); } -/// A simple app that loads a native ad. +/// An example app that loads a native ad. class NativeExample extends StatefulWidget { const NativeExample({super.key}); @@ -21,11 +22,10 @@ class NativeExample extends StatefulWidget { } class NativeExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _consentManager = ConsentManager(); final double _nativeAdHeight = Platform.isAndroid ? 320 : 300; var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; NativeAd? _nativeAd; bool _nativeAdIsLoaded = false; @@ -44,6 +44,9 @@ class NativeExampleState extends State { "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); } + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -58,10 +61,7 @@ class NativeExampleState extends State { title: 'Native Example', home: Scaffold( appBar: AppBar( - title: const Text('Native Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null), + title: const Text('Native Example'), actions: _appBarActions()), body: Center( child: Column( children: [ @@ -88,33 +88,36 @@ class NativeExampleState extends State { ))); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } }) ]; } @@ -159,6 +162,15 @@ class NativeExampleState extends State { )..load(); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -166,14 +178,12 @@ class NativeExampleState extends State { return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index e34b186db..a391bd753 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -19,7 +19,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=2.18.0 <3.0.0' + sdk: '>=3.2.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions From 6da4b59b3a81e1bbf3285afb9dcd2e3699762167 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:07:14 -0400 Subject: [PATCH 013/318] Add ad inspector to native template example (#1131) * Add ad inspector button * ioS 12 * formatted --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 3 + .../lib/app_bar_item.dart | 9 ++ .../native_template_example/lib/main.dart | 86 +++++++++++-------- .../native_template_example/pubspec.yaml | 2 +- 5 files changed, 62 insertions(+), 40 deletions(-) create mode 100644 samples/admob/native_template_example/lib/app_bar_item.dart diff --git a/samples/admob/native_template_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/native_template_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/native_template_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/native_template_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/native_template_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/native_template_example/ios/Runner.xcodeproj/project.pbxproj index 59f394fe2..45c507223 100644 --- a/samples/admob/native_template_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/native_template_example/ios/Runner.xcodeproj/project.pbxproj @@ -378,6 +378,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -507,6 +508,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -530,6 +532,7 @@ DEVELOPMENT_TEAM = EQHXZ8M8AV; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/native_template_example/lib/app_bar_item.dart b/samples/admob/native_template_example/lib/app_bar_item.dart new file mode 100644 index 000000000..e77175cee --- /dev/null +++ b/samples/admob/native_template_example/lib/app_bar_item.dart @@ -0,0 +1,9 @@ +class AppBarItem { + static const adInpsectorText = 'Ad Inspector'; + static const privacySettingsText = 'Privacy Settings'; + + final String label; + final int value; + + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/native_template_example/lib/main.dart b/samples/admob/native_template_example/lib/main.dart index 4fac7c35c..06764c077 100644 --- a/samples/admob/native_template_example/lib/main.dart +++ b/samples/admob/native_template_example/lib/main.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; +import 'app_bar_item.dart'; import 'consent_manager.dart'; void main() { @@ -12,7 +13,7 @@ void main() { )); } -/// A simple app that loads a native ad. +/// An example app that loads a native ad. class NativeExample extends StatefulWidget { const NativeExample({super.key}); @@ -21,10 +22,9 @@ class NativeExample extends StatefulWidget { } class NativeExampleState extends State { - static const privacySettingsText = 'Privacy Settings'; - final _consentManager = ConsentManager(); var _isMobileAdsInitializeCalled = false; + var _isPrivacyOptionsRequired = false; NativeAd? _nativeAd; bool _nativeAdIsLoaded = false; @@ -46,6 +46,9 @@ class NativeExampleState extends State { "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); } + // Check if a privacy options entry point is required. + _getIsPrivacyOptionsRequired(); + // Attempt to initialize the Mobile Ads SDK. _initializeMobileAdsSDK(); }); @@ -60,10 +63,7 @@ class NativeExampleState extends State { title: 'Native Example', home: Scaffold( appBar: AppBar( - title: const Text('Native Example'), - actions: _isMobileAdsInitializeCalled - ? _privacySettingsAppBarAction() - : null), + title: const Text('Native Example'), actions: _appBarActions()), body: SizedBox( height: MediaQuery.of(context).size.height, width: MediaQuery.of(context).size.width, @@ -96,33 +96,36 @@ class NativeExampleState extends State { ))); } - List _privacySettingsAppBarAction() { + List _appBarActions() { + var array = [AppBarItem(AppBarItem.adInpsectorText, 0)]; + + if (_isPrivacyOptionsRequired) { + array.add(AppBarItem(AppBarItem.privacySettingsText, 1)); + } + return [ - // Regenerate the options menu to include a privacy setting. - FutureBuilder( - future: _consentManager.isPrivacyOptionsRequired(), - builder: (context, snapshot) { - final bool visibility = snapshot.data ?? false; - return Visibility( - visible: visibility, - child: PopupMenuButton( - onSelected: (String result) { - if (result == privacySettingsText) { - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint( - "${formError.errorCode}: ${formError.message}"); - } - }); - } - }, - itemBuilder: (BuildContext context) => - >[ - const PopupMenuItem( - value: privacySettingsText, - child: Text(privacySettingsText)) - ], - )); + PopupMenuButton( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( + value: item, + child: Text( + item.label, + ), + )) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } }) ]; } @@ -185,6 +188,15 @@ class NativeExampleState extends State { ..load(); } + /// Redraw the app bar actions if a privacy options entry point is required. + void _getIsPrivacyOptionsRequired() async { + if (await _consentManager.isPrivacyOptionsRequired()) { + setState(() { + _isPrivacyOptionsRequired = true; + }); + } + } + /// Initialize the Mobile Ads SDK if the SDK has gathered consent aligned with /// the app's configured messages. void _initializeMobileAdsSDK() async { @@ -192,14 +204,12 @@ class NativeExampleState extends State { return; } - var canRequestAds = await _consentManager.canRequestAds(); - if (canRequestAds) { - setState(() { - _isMobileAdsInitializeCalled = true; - }); + if (await _consentManager.canRequestAds()) { + _isMobileAdsInitializeCalled = true; // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // Load an ad. _loadAd(); } diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index 107d45ac7..5c0ec8d84 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -19,7 +19,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=2.18.0 <3.0.0' + sdk: '>=3.2.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions From 9f989d3ea76b0da9300b4cf9e1926a134edbba4c Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 16 Jul 2024 11:08:46 -0400 Subject: [PATCH 014/318] Add ad inspector button to mediation example (#1132) * Added ad inspector button * iOS 12 * Added documentation * Added documentation * Documentation --------- Co-authored-by: Justin Malandruccolo --- .../ios/Flutter/AppFrameworkInfo.plist | 2 +- .../ios/Runner.xcodeproj/project.pbxproj | 3 + .../mediation_example/lib/app_bar_item.dart | 13 +++ samples/admob/mediation_example/lib/main.dart | 75 +++++--------- samples/admob/mediation_example/pubspec.yaml | 2 +- .../mediation_example/test/widget_test.dart | 30 ------ .../admob/mediation_example/web/favicon.png | Bin 917 -> 0 bytes .../mediation_example/web/icons/Icon-192.png | Bin 5292 -> 0 bytes .../mediation_example/web/icons/Icon-512.png | Bin 8252 -> 0 bytes .../admob/mediation_example/web/index.html | 98 ------------------ .../admob/mediation_example/web/manifest.json | 23 ---- 11 files changed, 43 insertions(+), 203 deletions(-) create mode 100644 samples/admob/mediation_example/lib/app_bar_item.dart delete mode 100644 samples/admob/mediation_example/test/widget_test.dart delete mode 100644 samples/admob/mediation_example/web/favicon.png delete mode 100644 samples/admob/mediation_example/web/icons/Icon-192.png delete mode 100644 samples/admob/mediation_example/web/icons/Icon-512.png delete mode 100644 samples/admob/mediation_example/web/index.html delete mode 100644 samples/admob/mediation_example/web/manifest.json diff --git a/samples/admob/mediation_example/ios/Flutter/AppFrameworkInfo.plist b/samples/admob/mediation_example/ios/Flutter/AppFrameworkInfo.plist index 9625e105d..7c5696400 100644 --- a/samples/admob/mediation_example/ios/Flutter/AppFrameworkInfo.plist +++ b/samples/admob/mediation_example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/samples/admob/mediation_example/ios/Runner.xcodeproj/project.pbxproj b/samples/admob/mediation_example/ios/Runner.xcodeproj/project.pbxproj index 05d14df16..440763196 100644 --- a/samples/admob/mediation_example/ios/Runner.xcodeproj/project.pbxproj +++ b/samples/admob/mediation_example/ios/Runner.xcodeproj/project.pbxproj @@ -375,6 +375,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -498,6 +499,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -516,6 +518,7 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/samples/admob/mediation_example/lib/app_bar_item.dart b/samples/admob/mediation_example/lib/app_bar_item.dart new file mode 100644 index 000000000..0c986a74d --- /dev/null +++ b/samples/admob/mediation_example/lib/app_bar_item.dart @@ -0,0 +1,13 @@ +/// Example app bar class. +class AppBarItem { + /// Helper variable for the ad inspector button text. + static const adInpsectorText = 'Ad Inspector'; + + /// Button text. + final String label; + /// Button value. + final int value; + + /// Initialize the class. + AppBarItem(this.label, this.value); +} diff --git a/samples/admob/mediation_example/lib/main.dart b/samples/admob/mediation_example/lib/main.dart index 7007051e2..6be0780a5 100644 --- a/samples/admob/mediation_example/lib/main.dart +++ b/samples/admob/mediation_example/lib/main.dart @@ -16,7 +16,9 @@ import 'package:flutter/material.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; -import 'package:mediationexample/my_method_channel.dart'; + +import 'app_bar_item.dart'; +import 'my_method_channel.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); @@ -30,7 +32,7 @@ void main() { runApp(MyApp()); } -/// A simple app that loads an ad and shows a button which increments a counter. +/// An example app that loads an ad and shows a button which increments a counter. class MyApp extends StatelessWidget { // This widget is the root of your application. @override @@ -38,15 +40,6 @@ class MyApp extends StatelessWidget { return MaterialApp( title: 'Flutter Mediation Example', theme: ThemeData( - // This is the theme of your application. - // - // Try running your application with "flutter run". You'll see the - // application has a blue toolbar. Then, without quitting the app, try - // changing the primarySwatch below to Colors.green and then invoke - // "hot reload" (press "r" in the console where you ran "flutter run", - // or simply save your changes to "hot reload" in a Flutter IDE). - // Notice that the counter didn't reset back to zero; the application - // is not restarted. primarySwatch: Colors.blue, ), home: MyHomePage(title: 'Flutter Demo Home Page'), @@ -57,15 +50,6 @@ class MyApp extends StatelessWidget { class MyHomePage extends StatefulWidget { MyHomePage({Key? key, required this.title}) : super(key: key); - // This widget is the home page of your application. It is stateful, meaning - // that it has a State object (defined below) that contains fields that affect - // how it looks. - - // This class is the configuration for the state. It holds the values (in this - // case the title) provided by the parent (in this case the App widget) and - // used by the build method of the State. Fields in a Widget subclass are - // always marked "final". - final String title; @override @@ -80,11 +64,6 @@ class _MyHomePageState extends State { void _incrementCounter() { setState(() { - // This call to setState tells the Flutter framework that something has - // changed in this State, which causes it to rerun the build method below - // so that the display can reflect the updated values. If we changed - // _counter without calling setState(), then the build method would not be - // called again, and so nothing would appear to happen. _counter++; }); } @@ -117,38 +96,34 @@ class _MyHomePageState extends State { )..load(); } + List _appBarActions() { + final adInspectorMenuItem = AppBarItem(AppBarItem.adInpsectorText, 0); + + return [ + PopupMenuButton( + itemBuilder: (BuildContext context) => >[ + PopupMenuItem( + value: adInspectorMenuItem, + child: Text(adInspectorMenuItem.label), + ), + ], + onSelected: (item) { + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + }) + ]; + } + @override Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. return Scaffold( appBar: AppBar( - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. title: Text(widget.title), + actions: _appBarActions(), ), body: Center( - // Center is a layout widget. It takes a single child and positions it - // in the middle of the parent. child: Column( - // Column is also a layout widget. It takes a list of children and - // arranges them vertically. By default, it sizes itself to fit its - // children horizontally, and tries to be as tall as its parent. - // - // Invoke "debug painting" (press "p" in the console, choose the - // "Toggle Debug Paint" action from the Flutter Inspector in Android - // Studio, or the "Toggle Debug Paint" command in Visual Studio Code) - // to see the wireframe for each widget. - // - // Column has various properties to control how it sizes itself and - // how it positions its children. Here we use mainAxisAlignment to - // center the children vertically; the main axis here is the vertical - // axis because Columns are vertical (the cross axis would be - // horizontal). mainAxisAlignment: MainAxisAlignment.center, children: [ Text( @@ -172,7 +147,7 @@ class _MyHomePageState extends State { onPressed: _incrementCounter, tooltip: 'Increment', child: Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. + ), ); } } diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index 321f474ff..f2023460a 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.12.0 <3.0.0" + sdk: '>=3.2.0 <4.0.0' dependencies: flutter: diff --git a/samples/admob/mediation_example/test/widget_test.dart b/samples/admob/mediation_example/test/widget_test.dart deleted file mode 100644 index 3f30c6c50..000000000 --- a/samples/admob/mediation_example/test/widget_test.dart +++ /dev/null @@ -1,30 +0,0 @@ -// This is a basic Flutter widget test. -// -// To perform an interaction with a widget in your test, use the WidgetTester -// utility that Flutter provides. For example, you can send tap and scroll -// gestures. You can also use WidgetTester to find child widgets in the widget -// tree, read text, and verify that the values of widget properties are correct. - -import 'package:flutter/material.dart'; -import 'package:flutter_test/flutter_test.dart'; - -import 'package:mediationexample/main.dart'; - -void main() { - testWidgets('Counter increments smoke test', (WidgetTester tester) async { - // Build our app and trigger a frame. - await tester.pumpWidget(MyApp()); - - // Verify that our counter starts at 0. - expect(find.text('0'), findsOneWidget); - expect(find.text('1'), findsNothing); - - // Tap the '+' icon and trigger a frame. - await tester.tap(find.byIcon(Icons.add)); - await tester.pump(); - - // Verify that our counter has incremented. - expect(find.text('0'), findsNothing); - expect(find.text('1'), findsOneWidget); - }); -} diff --git a/samples/admob/mediation_example/web/favicon.png b/samples/admob/mediation_example/web/favicon.png deleted file mode 100644 index 8aaa46ac1ae21512746f852a42ba87e4165dfdd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM diff --git a/samples/admob/mediation_example/web/icons/Icon-192.png b/samples/admob/mediation_example/web/icons/Icon-192.png deleted file mode 100644 index b749bfef07473333cf1dd31e9eed89862a5d52aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5292 zcmZ`-2T+sGz6~)*FVZ`aW+(v>MIm&M-g^@e2u-B-DoB?qO+b1Tq<5uCCv>ESfRum& zp%X;f!~1{tzL__3=gjVJ=j=J>+nMj%ncXj1Q(b|Ckbw{Y0FWpt%4y%$uD=Z*c-x~o zE;IoE;xa#7Ll5nj-e4CuXB&G*IM~D21rCP$*xLXAK8rIMCSHuSu%bL&S3)8YI~vyp@KBu9Ph7R_pvKQ@xv>NQ`dZp(u{Z8K3yOB zn7-AR+d2JkW)KiGx0hosml;+eCXp6+w%@STjFY*CJ?udJ64&{BCbuebcuH;}(($@@ znNlgBA@ZXB)mcl9nbX#F!f_5Z=W>0kh|UVWnf!At4V*LQP%*gPdCXd6P@J4Td;!Ur z<2ZLmwr(NG`u#gDEMP19UcSzRTL@HsK+PnIXbVBT@oHm53DZr?~V(0{rsalAfwgo zEh=GviaqkF;}F_5-yA!1u3!gxaR&Mj)hLuj5Q-N-@Lra{%<4ONja8pycD90&>yMB` zchhd>0CsH`^|&TstH-8+R`CfoWqmTTF_0?zDOY`E`b)cVi!$4xA@oO;SyOjJyP^_j zx^@Gdf+w|FW@DMdOi8=4+LJl$#@R&&=UM`)G!y%6ZzQLoSL%*KE8IO0~&5XYR9 z&N)?goEiWA(YoRfT{06&D6Yuu@Qt&XVbuW@COb;>SP9~aRc+z`m`80pB2o%`#{xD@ zI3RAlukL5L>px6b?QW1Ac_0>ew%NM!XB2(H+1Y3AJC?C?O`GGs`331Nd4ZvG~bMo{lh~GeL zSL|tT*fF-HXxXYtfu5z+T5Mx9OdP7J4g%@oeC2FaWO1D{=NvL|DNZ}GO?O3`+H*SI z=grGv=7dL{+oY0eJFGO!Qe(e2F?CHW(i!!XkGo2tUvsQ)I9ev`H&=;`N%Z{L zO?vV%rDv$y(@1Yj@xfr7Kzr<~0{^T8wM80xf7IGQF_S-2c0)0D6b0~yD7BsCy+(zL z#N~%&e4iAwi4F$&dI7x6cE|B{f@lY5epaDh=2-(4N05VO~A zQT3hanGy_&p+7Fb^I#ewGsjyCEUmSCaP6JDB*=_()FgQ(-pZ28-{qx~2foO4%pM9e z*_63RT8XjgiaWY|*xydf;8MKLd{HnfZ2kM%iq}fstImB-K6A79B~YoPVa@tYN@T_$ zea+9)<%?=Fl!kd(Y!G(-o}ko28hg2!MR-o5BEa_72uj7Mrc&{lRh3u2%Y=Xk9^-qa zBPWaD=2qcuJ&@Tf6ue&)4_V*45=zWk@Z}Q?f5)*z)-+E|-yC4fs5CE6L_PH3=zI8p z*Z3!it{1e5_^(sF*v=0{`U9C741&lub89gdhKp|Y8CeC{_{wYK-LSbp{h)b~9^j!s z7e?Y{Z3pZv0J)(VL=g>l;<}xk=T*O5YR|hg0eg4u98f2IrA-MY+StQIuK-(*J6TRR z|IM(%uI~?`wsfyO6Tgmsy1b3a)j6M&-jgUjVg+mP*oTKdHg?5E`!r`7AE_#?Fc)&a z08KCq>Gc=ne{PCbRvs6gVW|tKdcE1#7C4e`M|j$C5EYZ~Y=jUtc zj`+?p4ba3uy7><7wIokM79jPza``{Lx0)zGWg;FW1^NKY+GpEi=rHJ+fVRGfXO zPHV52k?jxei_!YYAw1HIz}y8ZMwdZqU%ESwMn7~t zdI5%B;U7RF=jzRz^NuY9nM)&<%M>x>0(e$GpU9th%rHiZsIT>_qp%V~ILlyt^V`=d z!1+DX@ah?RnB$X!0xpTA0}lN@9V-ePx>wQ?-xrJr^qDlw?#O(RsXeAvM%}rg0NT#t z!CsT;-vB=B87ShG`GwO;OEbeL;a}LIu=&@9cb~Rsx(ZPNQ!NT7H{@j0e(DiLea>QD zPmpe90gEKHEZ8oQ@6%E7k-Ptn#z)b9NbD@_GTxEhbS+}Bb74WUaRy{w;E|MgDAvHw zL)ycgM7mB?XVh^OzbC?LKFMotw3r@i&VdUV%^Efdib)3@soX%vWCbnOyt@Y4swW925@bt45y0HY3YI~BnnzZYrinFy;L?2D3BAL`UQ zEj))+f>H7~g8*VuWQ83EtGcx`hun$QvuurSMg3l4IP8Fe`#C|N6mbYJ=n;+}EQm;< z!!N=5j1aAr_uEnnzrEV%_E|JpTb#1p1*}5!Ce!R@d$EtMR~%9# zd;h8=QGT)KMW2IKu_fA_>p_und#-;Q)p%%l0XZOXQicfX8M~7?8}@U^ihu;mizj)t zgV7wk%n-UOb z#!P5q?Ex+*Kx@*p`o$q8FWL*E^$&1*!gpv?Za$YO~{BHeGY*5%4HXUKa_A~~^d z=E*gf6&+LFF^`j4$T~dR)%{I)T?>@Ma?D!gi9I^HqvjPc3-v~=qpX1Mne@*rzT&Xw zQ9DXsSV@PqpEJO-g4A&L{F&;K6W60D!_vs?Vx!?w27XbEuJJP&);)^+VF1nHqHBWu z^>kI$M9yfOY8~|hZ9WB!q-9u&mKhEcRjlf2nm_@s;0D#c|@ED7NZE% zzR;>P5B{o4fzlfsn3CkBK&`OSb-YNrqx@N#4CK!>bQ(V(D#9|l!e9(%sz~PYk@8zt zPN9oK78&-IL_F zhsk1$6p;GqFbtB^ZHHP+cjMvA0(LqlskbdYE_rda>gvQLTiqOQ1~*7lg%z*&p`Ry& zRcG^DbbPj_jOKHTr8uk^15Boj6>hA2S-QY(W-6!FIq8h$<>MI>PYYRenQDBamO#Fv zAH5&ImqKBDn0v5kb|8i0wFhUBJTpT!rB-`zK)^SNnRmLraZcPYK7b{I@+}wXVdW-{Ps17qdRA3JatEd?rPV z4@}(DAMf5EqXCr4-B+~H1P#;t@O}B)tIJ(W6$LrK&0plTmnPpb1TKn3?f?Kk``?D+ zQ!MFqOX7JbsXfQrz`-M@hq7xlfNz;_B{^wbpG8des56x(Q)H)5eLeDwCrVR}hzr~= zM{yXR6IM?kXxauLza#@#u?Y|o;904HCqF<8yT~~c-xyRc0-vxofnxG^(x%>bj5r}N zyFT+xnn-?B`ohA>{+ZZQem=*Xpqz{=j8i2TAC#x-m;;mo{{sLB_z(UoAqD=A#*juZ zCv=J~i*O8;F}A^Wf#+zx;~3B{57xtoxC&j^ie^?**T`WT2OPRtC`xj~+3Kprn=rVM zVJ|h5ux%S{dO}!mq93}P+h36mZ5aZg1-?vhL$ke1d52qIiXSE(llCr5i=QUS?LIjc zV$4q=-)aaR4wsrQv}^shL5u%6;`uiSEs<1nG^?$kl$^6DL z43CjY`M*p}ew}}3rXc7Xck@k41jx}c;NgEIhKZ*jsBRZUP-x2cm;F1<5$jefl|ppO zmZd%%?gMJ^g9=RZ^#8Mf5aWNVhjAS^|DQO+q$)oeob_&ZLFL(zur$)); zU19yRm)z<4&4-M}7!9+^Wl}Uk?`S$#V2%pQ*SIH5KI-mn%i;Z7-)m$mN9CnI$G7?# zo`zVrUwoSL&_dJ92YhX5TKqaRkfPgC4=Q&=K+;_aDs&OU0&{WFH}kKX6uNQC6%oUH z2DZa1s3%Vtk|bglbxep-w)PbFG!J17`<$g8lVhqD2w;Z0zGsh-r zxZ13G$G<48leNqR!DCVt9)@}(zMI5w6Wo=N zpP1*3DI;~h2WDWgcKn*f!+ORD)f$DZFwgKBafEZmeXQMAsq9sxP9A)7zOYnkHT9JU zRA`umgmP9d6=PHmFIgx=0$(sjb>+0CHG)K@cPG{IxaJ&Ueo8)0RWgV9+gO7+Bl1(F z7!BslJ2MP*PWJ;x)QXbR$6jEr5q3 z(3}F@YO_P1NyTdEXRLU6fp?9V2-S=E+YaeLL{Y)W%6`k7$(EW8EZSA*(+;e5@jgD^I zaJQ2|oCM1n!A&-8`;#RDcZyk*+RPkn_r8?Ak@agHiSp*qFNX)&i21HE?yuZ;-C<3C zwJGd1lx5UzViP7sZJ&|LqH*mryb}y|%AOw+v)yc`qM)03qyyrqhX?ub`Cjwx2PrR! z)_z>5*!*$x1=Qa-0uE7jy0z`>|Ni#X+uV|%_81F7)b+nf%iz=`fF4g5UfHS_?PHbr zB;0$bK@=di?f`dS(j{l3-tSCfp~zUuva+=EWxJcRfp(<$@vd(GigM&~vaYZ0c#BTs z3ijkxMl=vw5AS&DcXQ%eeKt!uKvh2l3W?&3=dBHU=Gz?O!40S&&~ei2vg**c$o;i89~6DVns zG>9a*`k5)NI9|?W!@9>rzJ;9EJ=YlJTx1r1BA?H`LWijk(rTax9(OAu;q4_wTj-yj z1%W4GW&K4T=uEGb+E!>W0SD_C0RR91 diff --git a/samples/admob/mediation_example/web/icons/Icon-512.png b/samples/admob/mediation_example/web/icons/Icon-512.png deleted file mode 100644 index 88cfd48dff1169879ba46840804b412fe02fefd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8252 zcmd5=2T+s!lYZ%-(h(2@5fr2dC?F^$C=i-}R6$UX8af(!je;W5yC_|HmujSgN*6?W z3knF*TL1$|?oD*=zPbBVex*RUIKsL<(&Rj9%^UD2IK3W?2j>D?eWQgvS-HLymHo9%~|N2Q{~j za?*X-{b9JRowv_*Mh|;*-kPFn>PI;r<#kFaxFqbn?aq|PduQg=2Q;~Qc}#z)_T%x9 zE|0!a70`58wjREmAH38H1)#gof)U3g9FZ^ zF7&-0^Hy{4XHWLoC*hOG(dg~2g6&?-wqcpf{ z&3=o8vw7lMi22jCG9RQbv8H}`+}9^zSk`nlR8?Z&G2dlDy$4#+WOlg;VHqzuE=fM@ z?OI6HEJH4&tA?FVG}9>jAnq_^tlw8NbjNhfqk2rQr?h(F&WiKy03Sn=-;ZJRh~JrD zbt)zLbnabttEZ>zUiu`N*u4sfQaLE8-WDn@tHp50uD(^r-}UsUUu)`!Rl1PozAc!a z?uj|2QDQ%oV-jxUJmJycySBINSKdX{kDYRS=+`HgR2GO19fg&lZKyBFbbXhQV~v~L za^U944F1_GtuFXtvDdDNDvp<`fqy);>Vw=ncy!NB85Tw{&sT5&Ox%-p%8fTS;OzlRBwErvO+ROe?{%q-Zge=%Up|D4L#>4K@Ke=x%?*^_^P*KD zgXueMiS63!sEw@fNLB-i^F|@Oib+S4bcy{eu&e}Xvb^(mA!=U=Xr3||IpV~3K zQWzEsUeX_qBe6fky#M zzOJm5b+l;~>=sdp%i}}0h zO?B?i*W;Ndn02Y0GUUPxERG`3Bjtj!NroLoYtyVdLtl?SE*CYpf4|_${ku2s`*_)k zN=a}V8_2R5QANlxsq!1BkT6$4>9=-Ix4As@FSS;1q^#TXPrBsw>hJ}$jZ{kUHoP+H zvoYiR39gX}2OHIBYCa~6ERRPJ#V}RIIZakUmuIoLF*{sO8rAUEB9|+A#C|@kw5>u0 zBd=F!4I)Be8ycH*)X1-VPiZ+Ts8_GB;YW&ZFFUo|Sw|x~ZajLsp+_3gv((Q#N>?Jz zFBf`~p_#^${zhPIIJY~yo!7$-xi2LK%3&RkFg}Ax)3+dFCjGgKv^1;lUzQlPo^E{K zmCnrwJ)NuSaJEmueEPO@(_6h3f5mFffhkU9r8A8(JC5eOkux{gPmx_$Uv&|hyj)gN zd>JP8l2U&81@1Hc>#*su2xd{)T`Yw< zN$dSLUN}dfx)Fu`NcY}TuZ)SdviT{JHaiYgP4~@`x{&h*Hd>c3K_To9BnQi@;tuoL z%PYQo&{|IsM)_>BrF1oB~+`2_uZQ48z9!)mtUR zdfKE+b*w8cPu;F6RYJiYyV;PRBbThqHBEu_(U{(gGtjM}Zi$pL8Whx}<JwE3RM0F8x7%!!s)UJVq|TVd#hf1zVLya$;mYp(^oZQ2>=ZXU1c$}f zm|7kfk>=4KoQoQ!2&SOW5|JP1)%#55C$M(u4%SP~tHa&M+=;YsW=v(Old9L3(j)`u z2?#fK&1vtS?G6aOt@E`gZ9*qCmyvc>Ma@Q8^I4y~f3gs7*d=ATlP>1S zyF=k&6p2;7dn^8?+!wZO5r~B+;@KXFEn^&C=6ma1J7Au6y29iMIxd7#iW%=iUzq&C=$aPLa^Q zncia$@TIy6UT@69=nbty5epP>*fVW@5qbUcb2~Gg75dNd{COFLdiz3}kODn^U*=@E z0*$7u7Rl2u)=%fk4m8EK1ctR!6%Ve`e!O20L$0LkM#f+)n9h^dn{n`T*^~d+l*Qlx z$;JC0P9+en2Wlxjwq#z^a6pdnD6fJM!GV7_%8%c)kc5LZs_G^qvw)&J#6WSp< zmsd~1-(GrgjC56Pdf6#!dt^y8Rg}!#UXf)W%~PeU+kU`FeSZHk)%sFv++#Dujk-~m zFHvVJC}UBn2jN& zs!@nZ?e(iyZPNo`p1i#~wsv9l@#Z|ag3JR>0#u1iW9M1RK1iF6-RbJ4KYg?B`dET9 zyR~DjZ>%_vWYm*Z9_+^~hJ_|SNTzBKx=U0l9 z9x(J96b{`R)UVQ$I`wTJ@$_}`)_DyUNOso6=WOmQKI1e`oyYy1C&%AQU<0-`(ow)1 zT}gYdwWdm4wW6|K)LcfMe&psE0XGhMy&xS`@vLi|1#Za{D6l@#D!?nW87wcscUZgELT{Cz**^;Zb~7 z(~WFRO`~!WvyZAW-8v!6n&j*PLm9NlN}BuUN}@E^TX*4Or#dMMF?V9KBeLSiLO4?B zcE3WNIa-H{ThrlCoN=XjOGk1dT=xwwrmt<1a)mrRzg{35`@C!T?&_;Q4Ce=5=>z^*zE_c(0*vWo2_#TD<2)pLXV$FlwP}Ik74IdDQU@yhkCr5h zn5aa>B7PWy5NQ!vf7@p_qtC*{dZ8zLS;JetPkHi>IvPjtJ#ThGQD|Lq#@vE2xdl%`x4A8xOln}BiQ92Po zW;0%A?I5CQ_O`@Ad=`2BLPPbBuPUp@Hb%a_OOI}y{Rwa<#h z5^6M}s7VzE)2&I*33pA>e71d78QpF>sNK;?lj^Kl#wU7G++`N_oL4QPd-iPqBhhs| z(uVM}$ItF-onXuuXO}o$t)emBO3Hjfyil@*+GF;9j?`&67GBM;TGkLHi>@)rkS4Nj zAEk;u)`jc4C$qN6WV2dVd#q}2X6nKt&X*}I@jP%Srs%%DS92lpDY^K*Sx4`l;aql$ zt*-V{U&$DM>pdO?%jt$t=vg5|p+Rw?SPaLW zB6nvZ69$ne4Z(s$3=Rf&RX8L9PWMV*S0@R zuIk&ba#s6sxVZ51^4Kon46X^9`?DC9mEhWB3f+o4#2EXFqy0(UTc>GU| zGCJmI|Dn-dX#7|_6(fT)>&YQ0H&&JX3cTvAq(a@ydM4>5Njnuere{J8p;3?1az60* z$1E7Yyxt^ytULeokgDnRVKQw9vzHg1>X@@jM$n$HBlveIrKP5-GJq%iWH#odVwV6cF^kKX(@#%%uQVb>#T6L^mC@)%SMd4DF? zVky!~ge27>cpUP1Vi}Z32lbLV+CQy+T5Wdmva6Fg^lKb!zrg|HPU=5Qu}k;4GVH+x z%;&pN1LOce0w@9i1Mo-Y|7|z}fbch@BPp2{&R-5{GLoeu8@limQmFF zaJRR|^;kW_nw~0V^ zfTnR!Ni*;-%oSHG1yItARs~uxra|O?YJxBzLjpeE-=~TO3Dn`JL5Gz;F~O1u3|FE- zvK2Vve`ylc`a}G`gpHg58Cqc9fMoy1L}7x7T>%~b&irrNMo?np3`q;d3d;zTK>nrK zOjPS{@&74-fA7j)8uT9~*g23uGnxwIVj9HorzUX#s0pcp2?GH6i}~+kv9fWChtPa_ z@T3m+$0pbjdQw7jcnHn;Pi85hk_u2-1^}c)LNvjdam8K-XJ+KgKQ%!?2n_!#{$H|| zLO=%;hRo6EDmnOBKCL9Cg~ETU##@u^W_5joZ%Et%X_n##%JDOcsO=0VL|Lkk!VdRJ z^|~2pB@PUspT?NOeO?=0Vb+fAGc!j%Ufn-cB`s2A~W{Zj{`wqWq_-w0wr@6VrM zbzni@8c>WS!7c&|ZR$cQ;`niRw{4kG#e z70e!uX8VmP23SuJ*)#(&R=;SxGAvq|&>geL&!5Z7@0Z(No*W561n#u$Uc`f9pD70# z=sKOSK|bF~#khTTn)B28h^a1{;>EaRnHj~>i=Fnr3+Fa4 z`^+O5_itS#7kPd20rq66_wH`%?HNzWk@XFK0n;Z@Cx{kx==2L22zWH$Yg?7 zvDj|u{{+NR3JvUH({;b*$b(U5U z7(lF!1bz2%06+|-v(D?2KgwNw7( zJB#Tz+ZRi&U$i?f34m7>uTzO#+E5cbaiQ&L}UxyOQq~afbNB4EI{E04ZWg53w0A{O%qo=lF8d zf~ktGvIgf-a~zQoWf>loF7pOodrd0a2|BzwwPDV}ShauTK8*fmF6NRbO>Iw9zZU}u zw8Ya}?seBnEGQDmH#XpUUkj}N49tP<2jYwTFp!P+&Fd(%Z#yo80|5@zN(D{_pNow*&4%ql zW~&yp@scb-+Qj-EmErY+Tu=dUmf@*BoXY2&oKT8U?8?s1d}4a`Aq>7SV800m$FE~? zjmz(LY+Xx9sDX$;vU`xgw*jLw7dWOnWWCO8o|;}f>cu0Q&`0I{YudMn;P;L3R-uz# zfns_mZED_IakFBPP2r_S8XM$X)@O-xVKi4`7373Jkd5{2$M#%cRhWer3M(vr{S6>h zj{givZJ3(`yFL@``(afn&~iNx@B1|-qfYiZu?-_&Z8+R~v`d6R-}EX9IVXWO-!hL5 z*k6T#^2zAXdardU3Ao~I)4DGdAv2bx{4nOK`20rJo>rmk3S2ZDu}))8Z1m}CKigf0 z3L`3Y`{huj`xj9@`$xTZzZc3je?n^yG<8sw$`Y%}9mUsjUR%T!?k^(q)6FH6Af^b6 zlPg~IEwg0y;`t9y;#D+uz!oE4VP&Je!<#q*F?m5L5?J3i@!0J6q#eu z!RRU`-)HeqGi_UJZ(n~|PSNsv+Wgl{P-TvaUQ9j?ZCtvb^37U$sFpBrkT{7Jpd?HpIvj2!}RIq zH{9~+gErN2+}J`>Jvng2hwM`=PLNkc7pkjblKW|+Fk9rc)G1R>Ww>RC=r-|!m-u7( zc(a$9NG}w#PjWNMS~)o=i~WA&4L(YIW25@AL9+H9!?3Y}sv#MOdY{bb9j>p`{?O(P zIvb`n?_(gP2w3P#&91JX*md+bBEr%xUHMVqfB;(f?OPtMnAZ#rm5q5mh;a2f_si2_ z3oXWB?{NF(JtkAn6F(O{z@b76OIqMC$&oJ_&S|YbFJ*)3qVX_uNf5b8(!vGX19hsG z(OP>RmZp29KH9Ge2kKjKigUmOe^K_!UXP`von)PR8Qz$%=EmOB9xS(ZxE_tnyzo}7 z=6~$~9k0M~v}`w={AeqF?_)9q{m8K#6M{a&(;u;O41j)I$^T?lx5(zlebpY@NT&#N zR+1bB)-1-xj}R8uwqwf=iP1GbxBjneCC%UrSdSxK1vM^i9;bUkS#iRZw2H>rS<2<$ zNT3|sDH>{tXb=zq7XZi*K?#Zsa1h1{h5!Tq_YbKFm_*=A5-<~j63he;4`77!|LBlo zR^~tR3yxcU=gDFbshyF6>o0bdp$qmHS7D}m3;^QZq9kBBU|9$N-~oU?G5;jyFR7>z hN`IR97YZXIo@y!QgFWddJ3|0`sjFx!m))><{BI=FK%f8s diff --git a/samples/admob/mediation_example/web/index.html b/samples/admob/mediation_example/web/index.html deleted file mode 100644 index 306437b1d..000000000 --- a/samples/admob/mediation_example/web/index.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - - - - - mediationexample - - - - - - - diff --git a/samples/admob/mediation_example/web/manifest.json b/samples/admob/mediation_example/web/manifest.json deleted file mode 100644 index 80b100c81..000000000 --- a/samples/admob/mediation_example/web/manifest.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "mediationexample", - "short_name": "mediationexample", - "start_url": ".", - "display": "standalone", - "background_color": "#0175C2", - "theme_color": "#0175C2", - "description": "A new Flutter project.", - "orientation": "portrait-primary", - "prefer_related_applications": false, - "icons": [ - { - "src": "icons/Icon-192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "icons/Icon-512.png", - "sizes": "512x512", - "type": "image/png" - } - ] -} From 51d1465196c916e5814b2fca7ad7596645a37695 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Tue, 13 Aug 2024 15:37:41 -0700 Subject: [PATCH 015/318] Updating iOS rootViewController use from loading time to showing time for fullscreen ads (#1153) * Updating iOS rootViewController use from loading time to showing time for Fullscreen ads * Removed rootViewController reference for fullscreen ads --- .../google_mobile_ads/example/ios/Podfile | 2 +- .../ios/RunnerTests/FLTAppOpenAdTest.m | 23 ++++------- .../RunnerTests/FLTGamInterstitialAdTest.m | 10 +---- .../ios/RunnerTests/FLTGoogleMobileAdsTest.m | 39 ++++++++----------- .../ios/RunnerTests/FLTInterstitialAdTest.m | 24 ++++-------- .../ios/RunnerTests/FLTRewardedAdTest.m | 25 ++++-------- .../FLTRewardedInterstitialAdTest.m | 8 +--- .../ios/Classes/FLTAd_Internal.h | 10 ----- .../ios/Classes/FLTAd_Internal.m | 26 +++---------- .../ios/Classes/FLTGoogleMobileAdsPlugin.m | 37 +++++++++++------- 10 files changed, 71 insertions(+), 133 deletions(-) diff --git a/packages/google_mobile_ads/example/ios/Podfile b/packages/google_mobile_ads/example/ios/Podfile index 1cad84c20..03efaafd8 100644 --- a/packages/google_mobile_ads/example/ios/Podfile +++ b/packages/google_mobile_ads/example/ios/Podfile @@ -36,7 +36,7 @@ target 'Runner' do inherit! :search_paths # Matches test_spec dependency. - pod 'OCMock', '3.6' + pod 'OCMock', '3.9.3' end end diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTAppOpenAdTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTAppOpenAdTest.m index 511e39706..1122044e4 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTAppOpenAdTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTAppOpenAdTest.m @@ -56,13 +56,9 @@ - (void)testLoadShowGAMRequest { // Helper method for testing with FLTAdRequest and FLTGAMAdRequest. - (void)testLoadShowAppOpenAd:(FLTAdRequest *)request gadOrGAMRequest:(GADRequest *)gadOrGAMRequest { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTAppOpenAd *ad = - [[FLTAppOpenAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTAppOpenAd *ad = [[FLTAppOpenAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; // Stub the load call to invoke successful load callback. @@ -130,8 +126,7 @@ - (void)testLoadShowAppOpenAd:(FLTAdRequest *)request [ad show]; - OCMVerify([appOpenClassMock - presentFromRootViewController:[OCMArg isEqual:mockRootViewController]]); + OCMVerify([appOpenClassMock presentFromRootViewController:[OCMArg isNil]]); // Verify full screen callbacks. OCMVerify([mockManager adWillPresentFullScreenContent:[OCMArg isEqual:ad]]); @@ -162,13 +157,9 @@ - (void)testFailedToLoadGAMRequest { // Helper for testing failed to load. - (void)testFailedToLoad:(FLTAdRequest *)request { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTAppOpenAd *ad = - [[FLTAppOpenAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTAppOpenAd *ad = [[FLTAppOpenAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; id appOpenClassMock = OCMClassMock([GADAppOpenAd class]); diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGamInterstitialAdTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGamInterstitialAdTest.m index c02b34fb1..da46fba0b 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGamInterstitialAdTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGamInterstitialAdTest.m @@ -35,12 +35,9 @@ - (void)testLoadShowInterstitialAd { GAMRequest *gadRequest = OCMClassMock([GAMRequest class]); OCMStub([request asGAMRequest:[OCMArg any]]).andReturn(gadRequest); - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); FLTGAMInterstitialAd *ad = [[FLTGAMInterstitialAd alloc] initWithAdUnitId:@"testId" request:request - rootViewController:mockRootViewController adId:@1]; ad.manager = mockManager; @@ -120,8 +117,8 @@ - (void)testLoadShowInterstitialAd { // Show the ad [ad show]; - OCMVerify([interstitialClassMock - presentFromRootViewController:[OCMArg isEqual:mockRootViewController]]); + OCMVerify( + [interstitialClassMock presentFromRootViewController:[OCMArg isNil]]); // Verify full screen callbacks. OCMVerify([mockManager adWillPresentFullScreenContent:[OCMArg isEqual:ad]]); @@ -145,12 +142,9 @@ - (void)testFailToLoad { GAMRequest *gadRequest = OCMClassMock([GAMRequest class]); OCMStub([request asGAMRequest:[OCMArg any]]).andReturn(gadRequest); - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); FLTGAMInterstitialAd *ad = [[FLTGAMInterstitialAd alloc] initWithAdUnitId:@"testId" request:request - rootViewController:mockRootViewController adId:@1]; ad.manager = mockManager; diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsTest.m index d5b50cae5..427b5e3df 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsTest.m @@ -249,11 +249,10 @@ - (void)testAdInstanceManagerOnNativeAdEvents { } - (void)testAdInstanceManagerOnRewardedAdUserEarnedReward { - FLTRewardedAd *ad = [[FLTRewardedAd alloc] - initWithAdUnitId:@"testId" - request:[[FLTAdRequest alloc] init] - rootViewController:OCMClassMock([UIViewController class]) - adId:@1]; + FLTRewardedAd *ad = + [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" + request:[[FLTAdRequest alloc] init] + adId:@1]; [_manager loadAd:ad]; [_manager onRewardedAdUserEarnedReward:ad @@ -277,10 +276,9 @@ - (void)testAdInstanceManagerOnRewardedAdUserEarnedReward { - (void)testAdInstanceManagerOnRewardedInterstitialAdUserEarnedReward { FLTRewardedInterstitialAd *ad = [[FLTRewardedInterstitialAd alloc] - initWithAdUnitId:@"testId" - request:[[FLTAdRequest alloc] init] - rootViewController:OCMClassMock([UIViewController class]) - adId:@1]; + initWithAdUnitId:@"testId" + request:[[FLTAdRequest alloc] init] + adId:@1]; [_manager loadAd:ad]; [_manager @@ -369,11 +367,10 @@ - (void)testBannerEvents { } - (void)testFullScreenEventsRewardedAd { - FLTRewardedAd *rewardedAd = [[FLTRewardedAd alloc] - initWithAdUnitId:@"testId" - request:[[FLTAdRequest alloc] init] - rootViewController:OCMClassMock([UIViewController class]) - adId:@1]; + FLTRewardedAd *rewardedAd = + [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" + request:[[FLTAdRequest alloc] init] + adId:@1]; [_manager loadAd:rewardedAd]; [_manager adWillPresentFullScreenContent:rewardedAd]; @@ -400,10 +397,9 @@ - (void)testFullScreenEventsRewardedAd { - (void)testFullScreenEventsRewardedInterstitialAd { FLTRewardedInterstitialAd *rewardedInterstitialAd = [[FLTRewardedInterstitialAd alloc] - initWithAdUnitId:@"testId" - request:[[FLTAdRequest alloc] init] - rootViewController:OCMClassMock([UIViewController class]) - adId:@1]; + initWithAdUnitId:@"testId" + request:[[FLTAdRequest alloc] init] + adId:@1]; [_manager loadAd:rewardedInterstitialAd]; [_manager adWillPresentFullScreenContent:rewardedInterstitialAd]; @@ -464,10 +460,9 @@ - (NSData *)getDataForEvent:(NSString *)name adId:(NSNumber *)adId { - (void)testAdClick { FLTRewardedInterstitialAd *rewardedInterstitialAd = [[FLTRewardedInterstitialAd alloc] - initWithAdUnitId:@"testId" - request:[[FLTAdRequest alloc] init] - rootViewController:OCMClassMock([UIViewController class]) - adId:@1]; + initWithAdUnitId:@"testId" + request:[[FLTAdRequest alloc] init] + adId:@1]; [_manager adDidRecordClick:rewardedInterstitialAd]; NSData *impressionData = [self getDataForEvent:@"adDidRecordClick" adId:@1]; diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTInterstitialAdTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTInterstitialAdTest.m index e850374a8..d3ef3c13d 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTInterstitialAdTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTInterstitialAdTest.m @@ -35,13 +35,9 @@ - (void)testLoadShowInterstitialAd { GADRequest *gadRequest = OCMClassMock([GADRequest class]); OCMStub([request asGADRequest:[OCMArg any]]).andReturn(gadRequest); - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTInterstitialAd *ad = - [[FLTInterstitialAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTInterstitialAd *ad = [[FLTInterstitialAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; id interstitialClassMock = OCMClassMock([GADInterstitialAd class]); @@ -109,8 +105,8 @@ - (void)testLoadShowInterstitialAd { // Show the ad [ad show]; - OCMVerify([interstitialClassMock - presentFromRootViewController:[OCMArg isEqual:mockRootViewController]]); + OCMVerify( + [interstitialClassMock presentFromRootViewController:[OCMArg isNil]]); // Verify full screen callbacks. OCMVerify([mockManager adWillPresentFullScreenContent:[OCMArg isEqual:ad]]); @@ -129,13 +125,9 @@ - (void)testFailedToLoad { GADRequest *gadRequest = OCMClassMock([GADRequest class]); OCMStub([request asGADRequest:[OCMArg any]]).andReturn(gadRequest); - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTInterstitialAd *ad = - [[FLTInterstitialAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTInterstitialAd *ad = [[FLTInterstitialAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; id interstitialClassMock = OCMClassMock([GADInterstitialAd class]); diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedAdTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedAdTest.m index b74965cf7..71d6f66d8 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedAdTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedAdTest.m @@ -50,13 +50,9 @@ - (void)testLoadShowRewardedAdGAMRequest { // Helper method for testing with FLTAdRequest and FLTGAMAdRequest. - (void)testLoadShowRewardedAd:(FLTAdRequest *)request gadOrGAMRequest:(GADRequest *)gadOrGAMRequest { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTRewardedAd *ad = - [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTRewardedAd *ad = [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; // Stub the load call to invoke successful load callback. @@ -149,9 +145,8 @@ - (void)testLoadShowRewardedAd:(FLTAdRequest *)request // Show the ad and verify callbacks invoked [ad show]; - OCMVerify([rewardedClassMock - presentFromRootViewController:[OCMArg isEqual:mockRootViewController] - userDidEarnRewardHandler:[OCMArg any]]); + OCMVerify([rewardedClassMock presentFromRootViewController:[OCMArg isNil] + userDidEarnRewardHandler:[OCMArg any]]); [fullScreenContentDelegate adWillPresentFullScreenContent:rewardedClassMock]; OCMVerify([mockManager adWillPresentFullScreenContent:[OCMArg isEqual:ad]]); @@ -216,13 +211,9 @@ - (void)testFailedToLoadGAMRequest { // Helper for testing failed to load. - (void)testFailedToLoad:(FLTAdRequest *)request { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); - FLTRewardedAd *ad = - [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" - request:request - rootViewController:mockRootViewController - adId:@1]; + FLTRewardedAd *ad = [[FLTRewardedAd alloc] initWithAdUnitId:@"testId" + request:request + adId:@1]; ad.manager = mockManager; id rewardedClassMock = OCMClassMock([GADRewardedAd class]); diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedInterstitialAdTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedInterstitialAdTest.m index 33d9384c5..0c5475638 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedInterstitialAdTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTRewardedInterstitialAdTest.m @@ -50,12 +50,9 @@ - (void)testLoadShowRewardedInterstitialAdGAMRequest { // Helper method for testing with FLTAdRequest and FLTGAMAdRequest. - (void)testLoadShowRewardedInterstitialAd:(FLTAdRequest *)request gadOrGAMRequest:(GADRequest *)gadOrGAMRequest { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); FLTRewardedInterstitialAd *ad = [[FLTRewardedInterstitialAd alloc] initWithAdUnitId:@"testId" request:request - rootViewController:mockRootViewController adId:@1]; ad.manager = mockManager; @@ -155,7 +152,7 @@ - (void)testLoadShowRewardedInterstitialAd:(FLTAdRequest *)request [ad show]; OCMVerify([rewardedInterstitialClassMock - presentFromRootViewController:[OCMArg isEqual:mockRootViewController] + presentFromRootViewController:[OCMArg isNil] userDidEarnRewardHandler:[OCMArg any]]); // Verify full screen callbacks. @@ -202,12 +199,9 @@ - (void)testFailedToLoadGAMRequest { // Helper for testing failed to load. - (void)testFailedToLoad:(FLTAdRequest *)request { - UIViewController *mockRootViewController = - OCMClassMock([UIViewController class]); FLTRewardedInterstitialAd *ad = [[FLTRewardedInterstitialAd alloc] initWithAdUnitId:@"testId" request:request - rootViewController:mockRootViewController adId:@1]; ad.manager = mockManager; diff --git a/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.h b/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.h index 92d0fc151..7d8b79f65 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.h +++ b/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.h @@ -214,8 +214,6 @@ @interface FLTInterstitialAd : FLTFullScreenAd - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId; - (GADInterstitialAd *_Nullable)interstitial; - (NSString *_Nonnull)adUnitId; @@ -226,16 +224,12 @@ @interface FLTGAMInterstitialAd : FLTInterstitialAd - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTGAMAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId; @end @interface FLTRewardedAd : FLTFullScreenAd - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId; - (GADRewardedAd *_Nullable)rewardedAd; - (void)setServerSideVerificationOptions: @@ -245,8 +239,6 @@ @interface FLTRewardedInterstitialAd : FLTFullScreenAd - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId; - (GADRewardedInterstitialAd *_Nullable)rewardedInterstitialAd; - (void)setServerSideVerificationOptions: @@ -256,8 +248,6 @@ @interface FLTAppOpenAd : FLTFullScreenAd - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId; - (GADAppOpenAd *_Nullable)appOpenAd; @end diff --git a/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.m b/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.m index 0a82ba796..aeff03b74 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.m +++ b/packages/google_mobile_ads/ios/Classes/FLTAd_Internal.m @@ -674,20 +674,17 @@ - (void)adDidRecordClick:(nonnull id)ad { @implementation FLTInterstitialAd { GADInterstitialAd *_interstitialView; FLTAdRequest *_adRequest; - UIViewController *_rootViewController; NSString *_adUnitId; } - (instancetype)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController:(UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId { self = [super init]; if (self) { self.adId = adId; _adRequest = request; _adUnitId = [adUnitId copy]; - _rootViewController = rootViewController; } return self; } @@ -731,7 +728,7 @@ - (void)load { - (void)show { if (self.interstitial) { - [self.interstitial presentFromRootViewController:_rootViewController]; + [self.interstitial presentFromRootViewController:nil]; } else { NSLog(@"InterstitialAd failed to show because the ad was not ready."); } @@ -744,20 +741,17 @@ - (void)show { @implementation FLTGAMInterstitialAd { GAMInterstitialAd *_insterstitial; FLTGAMAdRequest *_adRequest; - UIViewController *_rootViewController; NSString *_adUnitId; } - (instancetype)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTGAMAdRequest *_Nonnull)request - rootViewController:(UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId { self = [super init]; if (self) { self.adId = adId; _adRequest = request; _adUnitId = [adUnitId copy]; - _rootViewController = rootViewController; } return self; } @@ -797,7 +791,7 @@ - (void)load { - (void)show { if (self.interstitial) { - [self.interstitial presentFromRootViewController:_rootViewController]; + [self.interstitial presentFromRootViewController:nil]; } else { NSLog(@"InterstitialAd failed to show because the ad was not ready."); } @@ -817,19 +811,16 @@ - (void)interstitialAd:(nonnull GADInterstitialAd *)interstitialAd @implementation FLTRewardedAd { GADRewardedAd *_rewardedView; FLTAdRequest *_adRequest; - UIViewController *_rootViewController; NSString *_adUnitId; } - (instancetype)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController:(UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId { self = [super init]; if (self) { self.adId = adId; _adRequest = request; - _rootViewController = rootViewController; _adUnitId = [adUnitId copy]; } return self; @@ -881,7 +872,7 @@ - (void)load { - (void)show { if (self.rewardedAd) { [self.rewardedAd - presentFromRootViewController:_rootViewController + presentFromRootViewController:nil userDidEarnRewardHandler:^{ GADAdReward *reward = self.rewardedAd.adReward; FLTRewardItem *fltReward = @@ -912,19 +903,16 @@ - (void)setServerSideVerificationOptions: @implementation FLTRewardedInterstitialAd { GADRewardedInterstitialAd *_rewardedInterstitialView; FLTAdRequest *_adRequest; - UIViewController *_rootViewController; NSString *_adUnitId; } - (instancetype)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController:(UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId { self = [super init]; if (self) { self.adId = adId; _adRequest = request; - _rootViewController = rootViewController; _adUnitId = [adUnitId copy]; } return self; @@ -979,7 +967,7 @@ - (void)load { - (void)show { if (self.rewardedInterstitialAd) { [self.rewardedInterstitialAd - presentFromRootViewController:_rootViewController + presentFromRootViewController:nil userDidEarnRewardHandler:^{ GADAdReward *reward = self.rewardedInterstitialAd.adReward; FLTRewardItem *fltReward = @@ -1012,20 +1000,16 @@ - (void)setServerSideVerificationOptions: @implementation FLTAppOpenAd { GADAppOpenAd *_appOpenAd; FLTAdRequest *_adRequest; - UIViewController *_rootViewController; NSString *_adUnitId; } - (instancetype _Nonnull)initWithAdUnitId:(NSString *_Nonnull)adUnitId request:(FLTAdRequest *_Nonnull)request - rootViewController: - (UIViewController *_Nonnull)rootViewController adId:(NSNumber *_Nonnull)adId { self = [super init]; if (self) { self.adId = adId; _adRequest = request; - _rootViewController = rootViewController; _adUnitId = [adUnitId copy]; } return self; @@ -1077,7 +1061,7 @@ - (void)load { - (void)show { if (self.appOpenAd) { - [self.appOpenAd presentFromRootViewController:_rootViewController]; + [self.appOpenAd presentFromRootViewController:nil]; } else { NSLog(@"AppOpenAd failed to show because the ad was not ready."); } diff --git a/packages/google_mobile_ads/ios/Classes/FLTGoogleMobileAdsPlugin.m b/packages/google_mobile_ads/ios/Classes/FLTGoogleMobileAdsPlugin.m index 1defb9db4..9832c0c9b 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTGoogleMobileAdsPlugin.m +++ b/packages/google_mobile_ads/ios/Classes/FLTGoogleMobileAdsPlugin.m @@ -215,8 +215,8 @@ - (UIViewController *)rootController { UIViewController *root = UIApplication.sharedApplication.delegate.window.rootViewController; if ([FLTAdUtil isNull:root]) { - // UIApplication.sharedApplication.delegate.window is not guaranteed to be - // set. Use the keyWindow in this case. +// UIApplication.sharedApplication.delegate.window is not guaranteed to be +// set. Use the keyWindow in this case. #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" root = UIApplication.sharedApplication.keyWindow.rootViewController; @@ -226,8 +226,20 @@ - (UIViewController *)rootController { // Get the presented view controller. This fixes an issue in the add to app // case: https://github.com/googleads/googleads-mobile-flutter/issues/700 UIViewController *presentedViewController = root; - while (presentedViewController.presentedViewController) { - presentedViewController = presentedViewController.presentedViewController; + while (presentedViewController.presentedViewController && + ![presentedViewController.presentedViewController isBeingDismissed]) { + if ([presentedViewController isKindOfClass:[UITabBarController class]]) { + UITabBarController *tabBarController = + (UITabBarController *)presentedViewController; + presentedViewController = tabBarController.selectedViewController; + } else if ([presentedViewController + isKindOfClass:[UINavigationController class]]) { + UINavigationController *navigationController = + (UINavigationController *)presentedViewController; + presentedViewController = navigationController.visibleViewController; + } else { + presentedViewController = presentedViewController.presentedViewController; + } } return presentedViewController; } @@ -426,16 +438,14 @@ - (void)handleMethodCall:(FlutterMethodCall *)call FLTInterstitialAd *ad = [[FLTInterstitialAd alloc] initWithAdUnitId:call.arguments[@"adUnitId"] request:call.arguments[@"request"] - rootViewController:rootController adId:call.arguments[@"adId"]]; [_manager loadAd:ad]; result(nil); } else if ([call.method isEqualToString:@"loadAdManagerInterstitialAd"]) { FLTGAMInterstitialAd *ad = [[FLTGAMInterstitialAd alloc] - initWithAdUnitId:call.arguments[@"adUnitId"] - request:call.arguments[@"request"] - rootViewController:rootController - adId:call.arguments[@"adId"]]; + initWithAdUnitId:call.arguments[@"adUnitId"] + request:call.arguments[@"request"] + adId:call.arguments[@"adId"]]; [_manager loadAd:ad]; result(nil); } else if ([call.method isEqualToString:@"loadRewardedAd"]) { @@ -455,7 +465,6 @@ - (void)handleMethodCall:(FlutterMethodCall *)call FLTRewardedAd *ad = [[FLTRewardedAd alloc] initWithAdUnitId:call.arguments[@"adUnitId"] request:request - rootViewController:rootController adId:call.arguments[@"adId"]]; [_manager loadAd:ad]; result(nil); @@ -474,10 +483,9 @@ - (void)handleMethodCall:(FlutterMethodCall *)call } FLTRewardedInterstitialAd *ad = [[FLTRewardedInterstitialAd alloc] - initWithAdUnitId:call.arguments[@"adUnitId"] - request:request - rootViewController:rootController - adId:call.arguments[@"adId"]]; + initWithAdUnitId:call.arguments[@"adUnitId"] + request:request + adId:call.arguments[@"adId"]]; [_manager loadAd:ad]; result(nil); } else if ([call.method isEqualToString:@"loadAppOpenAd"]) { @@ -496,7 +504,6 @@ - (void)handleMethodCall:(FlutterMethodCall *)call FLTAppOpenAd *ad = [[FLTAppOpenAd alloc] initWithAdUnitId:call.arguments[@"adUnitId"] request:request - rootViewController:rootController adId:call.arguments[@"adId"]]; [_manager loadAd:ad]; result(nil); From f8e74ca4626d584b2bf354b37c13dbb93c45bb6f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 27 Aug 2024 17:00:00 -0700 Subject: [PATCH 016/318] Updated DT Exchange mediation adapter to Android 8.3.0.0 and iOS 8.3.1.0. PiperOrigin-RevId: 668195286 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 5 +++++ .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- .../ios/gma_mediation_dtexchange.podspec | 4 ++-- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index f8834615c..558579e05 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,10 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### 1.1.0 +* Verified compatibility with DT Exchange Android adapter version 8.3.0.0. +* Verified compatibility with DT Exchange iOS adapter version 8.3.1.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.0.0 * Initial release. * Verified compatibility with DT Exchange Android adapter version 8.2.7.0. diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index bc5e08aa3..d9fc09d3c 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:fyber:8.2.7.0' + implementation 'com.google.ads.mediation:fyber:8.3.0.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 921e52412..779aa1486 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.2.8.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.1.0' s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index c15b9a3e3..982aa6ca5 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: From e60f69ed791a6e184f0cfa33d4216d573710bfac Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Thu, 29 Aug 2024 12:36:53 -0400 Subject: [PATCH 017/318] Updated UI for app open ad to include instructions to see ad (#1163) * Updated UI for app open ad to include instructions to see ad * Update main.dart --------- Co-authored-by: Justin Malandruccolo --- samples/admob/app_open_example/lib/main.dart | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/samples/admob/app_open_example/lib/main.dart b/samples/admob/app_open_example/lib/main.dart index ec3fabe5f..8112bcee2 100644 --- a/samples/admob/app_open_example/lib/main.dart +++ b/samples/admob/app_open_example/lib/main.dart @@ -53,7 +53,6 @@ class _HomePageState extends State { final _appOpenAdManager = AppOpenAdManager(); var _isMobileAdsInitializeCalled = false; var _isPrivacyOptionsRequired = false; - int _counter = 0; late AppLifecycleReactor _appLifecycleReactor; @override @@ -82,12 +81,6 @@ class _HomePageState extends State { _initializeMobileAdsSDK(); } - void _incrementCounter() { - setState(() { - _counter++; - }); - } - @override Widget build(BuildContext context) { return Scaffold( @@ -95,25 +88,16 @@ class _HomePageState extends State { title: const Text('App Open Demo Home Page'), actions: _appBarActions(), ), - body: Center( + body: const Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - const Text( - 'You have pushed the button this many times:', - ), Text( - '$_counter', - style: Theme.of(context).textTheme.headlineMedium, + 'Leave and switch back to the app to see the ad.', ), ], ), ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: const Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. ); } From 3e2947d0641f78db5192b9616591c339d32b051d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 30 Aug 2024 11:08:15 -0700 Subject: [PATCH 018/318] Updating AppLovin Flutter Adapter to 1.1.0. Android was udpated to 12.6.1.0 and iOS to 12.6.1.0 PiperOrigin-RevId: 669383858 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 +++++ .../mediation/gma_mediation_applovin/android/build.gradle | 6 +++--- .../ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 93d25621a..4162b34ed 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,10 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### 1.2.0 +* Verified compatibility with AppLovin Android adapter version 12.6.1.0. +* Verified compatibility with AppLovin iOS adapter version 12.6.1.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.1.0 * API for the GmaMediationApplovin is no longer static. * Verified compatibility with AppLovin Android adapter version 12.4.3.0. diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 650da4413..26ca1da48 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -50,9 +50,9 @@ android { } dependencies { - implementation 'com.applovin:applovin-sdk:12.4.3' - implementation 'com.google.ads.mediation:applovin:12.4.3.0' - implementation 'com.google.android.gms:play-services-ads:23.0.0' + implementation 'com.applovin:applovin-sdk:12.6.1' + implementation 'com.google.ads.mediation:applovin:12.6.1.0' + implementation 'com.google.android.gms:play-services-ads:23.3.0' implementation 'androidx.core:core-ktx:1.8.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index e7cb4b9d7..21ce60c2b 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 12.4.2.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 12.6.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index b5d23fa45..b6c5a5e10 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From d7b4f9c049d48136b27f9d0fefb357eb3902ed61 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 3 Sep 2024 21:52:35 -0700 Subject: [PATCH 019/318] Updating InMobi Flutter Adapter to 1.1.0. Android was updated to 10.7.5.0 and iOS to 10.7.5.0 PiperOrigin-RevId: 670821898 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 5 +++++ packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 1cd952e9f..27e77deaf 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,10 @@ ## InMobi Flutter Mediation Adapter Changelog +#### 1.1.0 +* Verified compatibility with InMobi Android adapter version 10.7.5.0. +* Verified compatibility with InMobi iOS adapter version 10.7.5.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.0.0 * Initial release. * Verified compatibility with InMobi Android adapter version 10.6.7.1. diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 11ea6983d..47d4060c7 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:inmobi:10.6.7.1' + implementation 'com.google.ads.mediation:inmobi:10.7.5.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 2ec171d2f..4d25017d8 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.7.2.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.7.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index 85d9e73b5..2ce9c2e73 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: From 53437b714bad936bb3accd755aac04d9a7df1d76 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 5 Sep 2024 13:15:09 -0700 Subject: [PATCH 020/318] Updating ironSource Flutter Adapter to 1.1.0. Android was updated to 8.2.1.0 and iOS to 8.2.0.0.0 PiperOrigin-RevId: 671484959 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 +++++ .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 70a710eda..cca12ece4 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,10 @@ ## ironSource Flutter Mediation Adapter Changelog +#### 1.1.0 +* Verified compatibility with ironSource Android adapter version 8.2.1.0 +* Verified compatibility with ironSource iOS adapter version 8.2.0.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.0.0 * Initial release. * Verified compatibility with ironSource Android adapter version 8.0.0.0 diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 55ea351f4..1df221f26 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -53,7 +53,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:ironsource:8.0.0.0' + implementation 'com.google.ads.mediation:ironsource:8.2.1.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 8c2289324..87370434f 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.0.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.0.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.2.0.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 23dd8f115..a59910867 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From a5dbeeaf1ae06021e879f9adc0a425c68be123da Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 11 Sep 2024 11:35:45 -0700 Subject: [PATCH 021/318] Updated Liftoff Monetize to 1.1.0. Android adapter version to 7.4.0.1 and iOS adapter version 7.4.0.1 PiperOrigin-RevId: 673472928 --- .../mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 5 +++++ .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- .../mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index 57f419373..aee26ee33 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,10 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Version 1.1.0 +- Verified compatibility with Liftoff Monetize Android adapter version 7.4.0.1 +- Verified compatibility with LiftoffMonetize iOS adapter version 7.4.0.1 +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### Version 1.0.0 - Initial release. - Verified compatibility with Liftoff Monetize Android adapter version 7.3.1.0 diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index d8fa94eb8..f4b72f0a5 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:vungle:7.3.2.0' + implementation 'com.google.ads.mediation:vungle:7.4.0.1' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 8d0793d58..a78021742 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.3.2.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.0.1' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index 8b28d7305..0465d0430 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: From 7f0a6eba478422a0a43f4e39a0bd577c861e74b3 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 12 Sep 2024 10:58:39 -0700 Subject: [PATCH 022/318] Update Meta Audience Network Flutter Mediation Adapter to version 1.1.0. iOS adapter from 6.15.0.0 to 6.15.2.0 PiperOrigin-RevId: 673917291 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 5 +++++ .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 4 ++-- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 070008cad..4431344de 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,10 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### 1.1.0 +* Verified compatibility with Meta Android adapter version 6.17.0.0 +* Verified compatibility with Meta iOS adapter version 6.15.2.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.0.1 * Added dart class to allow correct compatibility analysis with host platforms diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 45bfec6db..3138d4c2f 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.0.1' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.15.0' + s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.15.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index 83de4f460..e993236b9 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.0.1 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: From fba9d89854bab90f909f82655e89a5e3fa3751f0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 13 Sep 2024 13:44:58 -0700 Subject: [PATCH 023/318] Updated the Mintegral mediation adapter to version 1.1.0. Android adapter to 16.8.31.0 and iOS to 7.7.1.0 PiperOrigin-RevId: 674419806 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +++++ .../mediation/gma_mediation_mintegral/android/build.gradle | 2 +- .../ios/gma_mediation_mintegral.podspec | 4 ++-- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 95d14b9e7..cd0e6f7cb 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,10 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### 1.1.0 +* Verified compatibility with Mintegral Android adapter version 16.8.31.0. +* Verified compatibility with Mintegral iOS adapter version 7.7.1.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.0.0 * Initial release. diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index d2ef234b6..291dcd73b 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:mintegral:16.7.21.0' + implementation 'com.google.ads.mediation:mintegral:16.8.31.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 909c59075..de57f6d8b 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.6.3.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index ffecd91f4..c4100c4a4 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From b27fcbca0e678a5beeee69778777d1adc79774db Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Sep 2024 12:26:01 -0700 Subject: [PATCH 024/318] Updated Pangle mediation adapter to version 2.0.0. Android to version 6.1.0.9.0 and iOS to version 6.2.0.5.0. PiperOrigin-RevId: 675248036 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 5 +++++ packages/mediation/gma_mediation_pangle/android/build.gradle | 2 +- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 40656bfd9..1e9328a30 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,10 @@ ## Pangle Flutter Mediation Adapter Changelog +#### 2.0.0 +* Verified compatibility with Pangle Android adapter version 6.1.0.9.0. +* Verified compatibility with Pangle iOS adapter version 6.2.0.5.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### 1.1.0 * Verified compatibility with Pangle Android adapter version 5.9.0.4.0. * Verified compatibility with Pangle iOS adapter version 5.9.0.7.0. diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 54151d6cc..28bf158f0 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -53,7 +53,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:pangle:5.9.0.4.0' + implementation 'com.google.ads.mediation:pangle:6.1.0.9.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 86d3e41de..bb35c59b6 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '1.1.0' + s.version = '2.0.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 5.9.0.7.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.2.0.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 0a080a53b..fbc0af619 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 2.0.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From a7f86d09495ac8975a8604ddea39628a24b4da03 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 17 Sep 2024 08:55:28 -0700 Subject: [PATCH 025/318] Update Unity Ads Flutter Mediation Adapter to version 1.1.0. Android to version 4.12.2.0 and iOS to version 4.12.2.0. PiperOrigin-RevId: 675586418 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 8 +++++++- .../mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 4 ++-- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index da6394c99..ad99df84b 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,6 +1,12 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.1.0 +- Verified compatibility with Unity Android adapter version 4.12.2.0 +- Verified compatibility with Unity iOS adapter version 4.12.2.0 +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. + #### Version 1.0.0 - Initial release. -- Verified compatibility with Unity Android adapter version 4.10.0.0 +- Verified compatibility with Unity Android adapter version 4.10.0.0 - Verified compatibility with Unity iOS adapter version 4.10.0.0 +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 67ef428fc..36176c686 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -51,8 +51,8 @@ android { } dependencies { - implementation 'com.unity3d.ads:unity-ads:4.10.0' - implementation 'com.google.ads.mediation:unity:4.10.0.0' + implementation 'com.unity3d.ads:unity-ads:4.12.2' + implementation 'com.google.ads.mediation:unity:4.12.2.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 3da1149ff..51fe289af 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.10.0.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index e6718f636..c16cc85de 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.0.0 +version: 1.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.0.0 + google_mobile_ads: ^5.1.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From 5fe582183ff2c83e3f12755db888f3822be00696 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 2 Oct 2024 21:59:10 -0700 Subject: [PATCH 026/318] Bump actions/checkout from 4.1.7 to 4.2.0 (#1181) Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.7 to 4.2.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/692973e3d937129bcbf40652eb9f2f61becf3332...d632683dd7b4114ad314bca15554477dd762a938) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yaml | 6 +++--- .github/workflows/gma_mediation_applovin.yaml | 6 +++--- .github/workflows/gma_mediation_dtexchange.yaml | 6 +++--- .github/workflows/gma_mediation_inmobi.yaml | 2 +- .github/workflows/gma_mediation_ironsource.yaml | 6 +++--- .github/workflows/gma_mediation_liftoffmonetize.yaml | 6 +++--- .github/workflows/gma_mediation_meta.yaml | 2 +- .github/workflows/gma_mediation_mintegral.yaml | 2 +- .github/workflows/gma_mediation_pangle.yaml | 2 +- .github/workflows/gma_mediation_unity.yaml | 6 +++--- .github/workflows/google_mobile_ads.yaml | 6 +++--- 11 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index fc52e543f..fe3be82d9 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,7 +29,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -60,7 +60,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -92,7 +92,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index e6e745f8d..adf1f8748 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index e0104b1fe..58f21e92c 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_inmobi.yaml b/.github/workflows/gma_mediation_inmobi.yaml index 7f2627ddc..c37563cdb 100644 --- a/.github/workflows/gma_mediation_inmobi.yaml +++ b/.github/workflows/gma_mediation_inmobi.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index abfa7a4ef..800deec5b 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -55,7 +55,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -81,7 +81,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index 2f535bb8e..d165a7d14 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_meta.yaml b/.github/workflows/gma_mediation_meta.yaml index c8c9295e8..4232297ad 100644 --- a/.github/workflows/gma_mediation_meta.yaml +++ b/.github/workflows/gma_mediation_meta.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_mintegral.yaml b/.github/workflows/gma_mediation_mintegral.yaml index 726b7ef2e..609b3e11e 100644 --- a/.github/workflows/gma_mediation_mintegral.yaml +++ b/.github/workflows/gma_mediation_mintegral.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_pangle.yaml b/.github/workflows/gma_mediation_pangle.yaml index 9723d52e2..011c56f65 100644 --- a/.github/workflows/gma_mediation_pangle.yaml +++ b/.github/workflows/gma_mediation_pangle.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index 24942e1fc..25d22b5d0 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -53,7 +53,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -80,7 +80,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index e06ee82c7..d6c2b0870 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -34,7 +34,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 with: fetch-depth: 0 - name: "Install Flutter" From b63c671cc6801c17b48bcc8091fe7dd042e2f268 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Thu, 3 Oct 2024 09:03:31 -0700 Subject: [PATCH 027/318] MobileAds.init from a Background thread (#1179) * MobileAds.init from a Background thread * Update Mediation sample Podfile --- .../plugins/googlemobileads/FlutterMobileAdsWrapper.java | 9 ++++++++- samples/admob/mediation_example/ios/Podfile | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java index d8d9d65c7..159e9294b 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java @@ -36,7 +36,14 @@ public FlutterMobileAdsWrapper() {} /** Initializes the sdk. */ public void initialize( @NonNull Context context, @NonNull OnInitializationCompleteListener listener) { - MobileAds.initialize(context, listener); + new Thread( + new Runnable() { + @Override + public void run() { + MobileAds.initialize(context, listener); + } + }) + .start(); } /** Wrapper for setAppMuted. */ diff --git a/samples/admob/mediation_example/ios/Podfile b/samples/admob/mediation_example/ios/Podfile index 3065706be..2ff9e1af1 100644 --- a/samples/admob/mediation_example/ios/Podfile +++ b/samples/admob/mediation_example/ios/Podfile @@ -37,4 +37,4 @@ post_install do |installer| end end -pod 'GoogleMobileAdsMediationAppLovin' +pod 'GoogleMobileAdsMediationAppLovin', '< 13.0.0.0' From 0330590e0d89879aab0454c65cd9e72b4d076ec8 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Fri, 4 Oct 2024 10:22:05 -0700 Subject: [PATCH 028/318] [Release] Version bumping for Flutter GMA SDK to version 5.2.0 (#1182) * GMA SDK Version bump * Version bumping pubspec --- packages/google_mobile_ads/CHANGELOG.md | 7 +++++++ packages/google_mobile_ads/android/build.gradle | 4 ++-- .../java/io/flutter/plugins/googlemobileads/Constants.java | 2 +- packages/google_mobile_ads/ios/Classes/FLTConstants.h | 2 +- packages/google_mobile_ads/ios/google_mobile_ads.podspec | 4 ++-- packages/google_mobile_ads/pubspec.yaml | 2 +- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index 595226acf..88e9cb789 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,3 +1,10 @@ +## 5.2.0 +* Removed use of rootViewController for iOS GMA SDK which solved issues like + https://github.com/googleads/googleads-mobile-flutter/issues/1146 and https://github.com/googleads/googleads-mobile-flutter/issues/700. +* Android GMA SDK is now initialized on a background thread. +* Updates GMA iOS dependency to 11.10.0 +* Updates GMA Android dependency to 23.4.0 + ## 5.1.0 * Adds support for APIs from the [Android](https://developers.google.com/admob/android/privacy/release-notes) UMP SDK version 2.2.0. * Adds support for APIs from the [iOS](https://developers.google.com/admob/ios/privacy/download#release_notes) UMP SDK version 2.4.0. diff --git a/packages/google_mobile_ads/android/build.gradle b/packages/google_mobile_ads/android/build.gradle index 8a7b48e34..80801f48f 100644 --- a/packages/google_mobile_ads/android/build.gradle +++ b/packages/google_mobile_ads/android/build.gradle @@ -35,8 +35,8 @@ android { disable 'InvalidPackage' } dependencies { - api 'com.google.android.gms:play-services-ads:23.0.0' - implementation 'com.google.android.ump:user-messaging-platform:2.2.0' + api 'com.google.android.gms:play-services-ads:23.4.0' + implementation 'com.google.android.ump:user-messaging-platform:3.0.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.lifecycle:lifecycle-process:2.6.2' implementation 'com.google.errorprone:error_prone_annotations:2.16' diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java index 77158a8d7..40e3a0200 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java @@ -17,7 +17,7 @@ /** Constants used in the plugin. */ public class Constants { /** Version request agent. Should be bumped alongside plugin versions. */ - public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.1.0"; + public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.2.0"; /** Prefix for news template */ public static final String REQUEST_AGENT_NEWS_TEMPLATE_PREFIX = "News"; diff --git a/packages/google_mobile_ads/ios/Classes/FLTConstants.h b/packages/google_mobile_ads/ios/Classes/FLTConstants.h index 34c8eb678..5976948c2 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTConstants.h +++ b/packages/google_mobile_ads/ios/Classes/FLTConstants.h @@ -13,4 +13,4 @@ // limitations under the License. /** Versioned request agent string. */ -#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.1.0" +#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.2.0" diff --git a/packages/google_mobile_ads/ios/google_mobile_ads.podspec b/packages/google_mobile_ads/ios/google_mobile_ads.podspec index 9d565afc6..0913c0168 100644 --- a/packages/google_mobile_ads/ios/google_mobile_ads.podspec +++ b/packages/google_mobile_ads/ios/google_mobile_ads.podspec @@ -3,7 +3,7 @@ # Pod::Spec.new do |s| s.name = 'google_mobile_ads' - s.version = '5.1.0' + s.version = '5.2.0' s.summary = 'Google Mobile Ads plugin for Flutter.' s.description = <<-DESC Google Mobile Ads plugin for Flutter. @@ -15,7 +15,7 @@ Google Mobile Ads plugin for Flutter. s.source_files = 'Classes/**/*.{h,m}' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'Google-Mobile-Ads-SDK','~> 11.2.0' + s.dependency 'Google-Mobile-Ads-SDK','~> 11.10.0' s.dependency 'webview_flutter_wkwebview' s.ios.deployment_target = '12.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS' => 'armv7 arm64 x86_64' } diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index 9d8c891e4..f0324b965 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -13,7 +13,7 @@ # limitations under the License. name: google_mobile_ads -version: 5.1.0 +version: 5.2.0 description: Flutter plugin for Google Mobile Ads, supporting banner, interstitial (full-screen), rewarded and native ads repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/google_mobile_ads From fa3ecbce6dc53680938c619f7c723c2c28f5773a Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Fri, 11 Oct 2024 16:30:59 -0400 Subject: [PATCH 029/318] Updating samples to 5.2.0 --- samples/admob/banner_example/android/app/build.gradle | 2 +- samples/admob/banner_example/android/build.gradle | 4 ++-- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/banner_example/pubspec.yaml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/samples/admob/banner_example/android/app/build.gradle b/samples/admob/banner_example/android/app/build.gradle index dabe9b182..6007fea25 100644 --- a/samples/admob/banner_example/android/app/build.gradle +++ b/samples/admob/banner_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.banner_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/banner_example/android/build.gradle b/samples/admob/banner_example/android/build.gradle index f7eb7f63c..417ab3750 100644 --- a/samples/admob/banner_example/android/build.gradle +++ b/samples/admob/banner_example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' + classpath 'com.android.tools.build:gradle:8.6.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/samples/admob/banner_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/banner_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/banner_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/banner_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/banner_example/pubspec.yaml b/samples/admob/banner_example/pubspec.yaml index f2d3392eb..dae4fbcfe 100644 --- a/samples/admob/banner_example/pubspec.yaml +++ b/samples/admob/banner_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 dev_dependencies: flutter_test: From 1cce28065c6b50b9c8c3568fe63dc32259a7665e Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Sun, 13 Oct 2024 17:08:53 -0400 Subject: [PATCH 030/318] Update samples to 5.2.0 (#1192) * Update samples to 5.2.0 * Update gradle-wrapper.properties * Update build.gradle * Update build.gradle * Update pubspec.yaml * Update pubspec.yaml * Update pubspec.yaml * Update pubspec.yaml * Update pubspec.yaml * Update pubspec.yaml * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update build.gradle * Update settings.gradle * Update build.gradle * Update settings.gradle * Update gradle-wrapper.properties * Update gradle-wrapper.properties * Update gradle-wrapper.properties * Update gradle-wrapper.properties * Update gradle-wrapper.properties * Update gradle-wrapper.properties --- samples/admob/app_open_example/android/app/build.gradle | 2 +- samples/admob/app_open_example/android/build.gradle | 2 +- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/app_open_example/pubspec.yaml | 2 +- samples/admob/interstitial_example/android/app/build.gradle | 2 +- samples/admob/interstitial_example/android/build.gradle | 4 ++-- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/interstitial_example/pubspec.yaml | 2 +- samples/admob/mediation_example/android/app/build.gradle | 3 ++- samples/admob/mediation_example/android/build.gradle | 3 ++- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/mediation_example/pubspec.yaml | 2 +- .../admob/native_platform_example/android/app/build.gradle | 2 +- samples/admob/native_platform_example/android/build.gradle | 4 ++-- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/native_platform_example/pubspec.yaml | 2 +- .../admob/native_template_example/android/app/build.gradle | 2 +- samples/admob/native_template_example/android/build.gradle | 4 ++-- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/native_template_example/pubspec.yaml | 2 +- samples/admob/rewarded_example/android/app/build.gradle | 2 +- samples/admob/rewarded_example/android/build.gradle | 2 +- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- samples/admob/rewarded_example/android/settings.gradle | 2 +- samples/admob/rewarded_example/pubspec.yaml | 2 +- .../rewarded_interstitial_example/android/app/build.gradle | 2 +- .../admob/rewarded_interstitial_example/android/build.gradle | 2 +- .../android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../rewarded_interstitial_example/android/settings.gradle | 2 +- samples/admob/rewarded_interstitial_example/pubspec.yaml | 2 +- 30 files changed, 35 insertions(+), 33 deletions(-) diff --git a/samples/admob/app_open_example/android/app/build.gradle b/samples/admob/app_open_example/android/app/build.gradle index f2ae17dc9..e5114805e 100644 --- a/samples/admob/app_open_example/android/app/build.gradle +++ b/samples/admob/app_open_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.app_open_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/app_open_example/android/build.gradle b/samples/admob/app_open_example/android/build.gradle index e83fb5dac..2a2de2524 100644 --- a/samples/admob/app_open_example/android/build.gradle +++ b/samples/admob/app_open_example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() diff --git a/samples/admob/app_open_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/app_open_example/android/gradle/wrapper/gradle-wrapper.properties index 46f033193..2aebe1b1f 100644 --- a/samples/admob/app_open_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/app_open_example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/app_open_example/pubspec.yaml b/samples/admob/app_open_example/pubspec.yaml index 2a27d985b..1408a0aa9 100644 --- a/samples/admob/app_open_example/pubspec.yaml +++ b/samples/admob/app_open_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 dev_dependencies: flutter_test: diff --git a/samples/admob/interstitial_example/android/app/build.gradle b/samples/admob/interstitial_example/android/app/build.gradle index 125b71c36..14eac3f3e 100644 --- a/samples/admob/interstitial_example/android/app/build.gradle +++ b/samples/admob/interstitial_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.interstitial_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/interstitial_example/android/build.gradle b/samples/admob/interstitial_example/android/build.gradle index f7eb7f63c..417ab3750 100644 --- a/samples/admob/interstitial_example/android/build.gradle +++ b/samples/admob/interstitial_example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' + classpath 'com.android.tools.build:gradle:8.6.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/samples/admob/interstitial_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/interstitial_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/interstitial_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/interstitial_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/interstitial_example/pubspec.yaml b/samples/admob/interstitial_example/pubspec.yaml index 7844263e7..c9ef23b4b 100644 --- a/samples/admob/interstitial_example/pubspec.yaml +++ b/samples/admob/interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 dev_dependencies: flutter_test: diff --git a/samples/admob/mediation_example/android/app/build.gradle b/samples/admob/mediation_example/android/app/build.gradle index 7a97f2baa..e0ee2265e 100644 --- a/samples/admob/mediation_example/android/app/build.gradle +++ b/samples/admob/mediation_example/android/app/build.gradle @@ -26,6 +26,7 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { compileSdkVersion flutter.compileSdkVersion + ndkVersion = "26.1.10909125" defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). @@ -56,4 +57,4 @@ repositories { dependencies { implementation 'com.google.ads.mediation:applovin:10.3.4.0' -} \ No newline at end of file +} diff --git a/samples/admob/mediation_example/android/build.gradle b/samples/admob/mediation_example/android/build.gradle index 0692fbe06..31ae933da 100644 --- a/samples/admob/mediation_example/android/build.gradle +++ b/samples/admob/mediation_example/android/build.gradle @@ -1,11 +1,12 @@ buildscript { + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.2' + classpath 'com.android.tools.build:gradle:8.6.0' } } diff --git a/samples/admob/mediation_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/mediation_example/android/gradle/wrapper/gradle-wrapper.properties index cc5527d78..7aeeb11c6 100644 --- a/samples/admob/mediation_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/mediation_example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index f2023460a..e61c177c8 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -23,7 +23,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 # The following adds the Cupertino Icons font to your application. diff --git a/samples/admob/native_platform_example/android/app/build.gradle b/samples/admob/native_platform_example/android/app/build.gradle index 64ab34992..8d4aba91a 100644 --- a/samples/admob/native_platform_example/android/app/build.gradle +++ b/samples/admob/native_platform_example/android/app/build.gradle @@ -27,7 +27,7 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/native_platform_example/android/build.gradle b/samples/admob/native_platform_example/android/build.gradle index 713d7f6e6..417ab3750 100644 --- a/samples/admob/native_platform_example/android/build.gradle +++ b/samples/admob/native_platform_example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0' + classpath 'com.android.tools.build:gradle:8.6.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/samples/admob/native_platform_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/native_platform_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/native_platform_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/native_platform_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index a391bd753..5d2569840 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/native_template_example/android/app/build.gradle b/samples/admob/native_template_example/android/app/build.gradle index 5d7148ab5..20372d9ef 100644 --- a/samples/admob/native_template_example/android/app/build.gradle +++ b/samples/admob/native_template_example/android/app/build.gradle @@ -27,7 +27,7 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/native_template_example/android/build.gradle b/samples/admob/native_template_example/android/build.gradle index 713d7f6e6..417ab3750 100644 --- a/samples/admob/native_template_example/android/build.gradle +++ b/samples/admob/native_template_example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.0' + classpath 'com.android.tools.build:gradle:8.6.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/samples/admob/native_template_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/native_template_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/native_template_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/native_template_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index 5c0ec8d84..7c913abc8 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/rewarded_example/android/app/build.gradle b/samples/admob/rewarded_example/android/app/build.gradle index 660b5b1a4..0c60e66c5 100644 --- a/samples/admob/rewarded_example/android/app/build.gradle +++ b/samples/admob/rewarded_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.rewarded_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/rewarded_example/android/build.gradle b/samples/admob/rewarded_example/android/build.gradle index e83fb5dac..2a2de2524 100644 --- a/samples/admob/rewarded_example/android/build.gradle +++ b/samples/admob/rewarded_example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() diff --git a/samples/admob/rewarded_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/rewarded_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/rewarded_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/rewarded_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/rewarded_example/android/settings.gradle b/samples/admob/rewarded_example/android/settings.gradle index 7cd712855..4dedb24d9 100644 --- a/samples/admob/rewarded_example/android/settings.gradle +++ b/samples/admob/rewarded_example/android/settings.gradle @@ -23,7 +23,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.6.0" apply false } include ":app" diff --git a/samples/admob/rewarded_example/pubspec.yaml b/samples/admob/rewarded_example/pubspec.yaml index 6c3f4ad44..841f224ee 100644 --- a/samples/admob/rewarded_example/pubspec.yaml +++ b/samples/admob/rewarded_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 dev_dependencies: flutter_test: diff --git a/samples/admob/rewarded_interstitial_example/android/app/build.gradle b/samples/admob/rewarded_interstitial_example/android/app/build.gradle index 08f501701..fd140ab5a 100644 --- a/samples/admob/rewarded_interstitial_example/android/app/build.gradle +++ b/samples/admob/rewarded_interstitial_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.rewarded_interstitial_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion flutter.ndkVersion + ndkVersion = "26.1.10909125" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/rewarded_interstitial_example/android/build.gradle b/samples/admob/rewarded_interstitial_example/android/build.gradle index e83fb5dac..2a2de2524 100644 --- a/samples/admob/rewarded_interstitial_example/android/build.gradle +++ b/samples/admob/rewarded_interstitial_example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '1.9.0' repositories { google() mavenCentral() diff --git a/samples/admob/rewarded_interstitial_example/android/gradle/wrapper/gradle-wrapper.properties b/samples/admob/rewarded_interstitial_example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..3c85cfe05 100644 --- a/samples/admob/rewarded_interstitial_example/android/gradle/wrapper/gradle-wrapper.properties +++ b/samples/admob/rewarded_interstitial_example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip diff --git a/samples/admob/rewarded_interstitial_example/android/settings.gradle b/samples/admob/rewarded_interstitial_example/android/settings.gradle index 7cd712855..4dedb24d9 100644 --- a/samples/admob/rewarded_interstitial_example/android/settings.gradle +++ b/samples/admob/rewarded_interstitial_example/android/settings.gradle @@ -23,7 +23,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.6.0" apply false } include ":app" diff --git a/samples/admob/rewarded_interstitial_example/pubspec.yaml b/samples/admob/rewarded_interstitial_example/pubspec.yaml index 851a5da5a..7980a8743 100644 --- a/samples/admob/rewarded_interstitial_example/pubspec.yaml +++ b/samples/admob/rewarded_interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 dev_dependencies: flutter_test: From 8e630c34a75173918e5c2ffa505d0e3631c01ced Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 7 Oct 2024 11:19:59 -0700 Subject: [PATCH 031/318] Update Google Mobile Ads Flutter Mediation Adapters to support Google Mobile Ads Flutter Plugin version 5.2.0. PiperOrigin-RevId: 683255547 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- packages/mediation/gma_mediation_meta/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- packages/mediation/gma_mediation_unity/CHANGELOG.md | 3 +++ packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 18 files changed, 36 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 4162b34ed..2a725add8 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,8 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.2.0 * Verified compatibility with AppLovin Android adapter version 12.6.1.0. * Verified compatibility with AppLovin iOS adapter version 12.6.1.0. diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index b6c5a5e10..84dc4856e 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 558579e05..57366133a 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,8 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.1.0 * Verified compatibility with DT Exchange Android adapter version 8.3.0.0. * Verified compatibility with DT Exchange iOS adapter version 8.3.1.0. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index 982aa6ca5..fabbbcd86 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 27e77deaf..6fb8bacfd 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,8 @@ ## InMobi Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.1.0 * Verified compatibility with InMobi Android adapter version 10.7.5.0. * Verified compatibility with InMobi iOS adapter version 10.7.5.0. diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index 2ce9c2e73..0b53b66e4 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index cca12ece4..3220816cb 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,8 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.1.0 * Verified compatibility with ironSource Android adapter version 8.2.1.0 * Verified compatibility with ironSource iOS adapter version 8.2.0.0.0 diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index a59910867..54735b1e3 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index aee26ee33..eb9adf92e 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,8 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### Version 1.1.0 - Verified compatibility with Liftoff Monetize Android adapter version 7.4.0.1 - Verified compatibility with LiftoffMonetize iOS adapter version 7.4.0.1 diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index 0465d0430..1fb35694f 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 4431344de..ced916084 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,8 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.1.0 * Verified compatibility with Meta Android adapter version 6.17.0.0 * Verified compatibility with Meta iOS adapter version 6.15.2.0 diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index e993236b9..b3e42d0a2 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cd0e6f7cb..ddb65a9ab 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,8 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 1.1.0 * Verified compatibility with Mintegral Android adapter version 16.8.31.0. * Verified compatibility with Mintegral iOS adapter version 7.7.1.0. diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index c4100c4a4..2d099aabc 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 1e9328a30..95a816b64 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,8 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### 2.0.0 * Verified compatibility with Pangle Android adapter version 6.1.0.9.0. * Verified compatibility with Pangle iOS adapter version 6.2.0.5.0. diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index fbc0af619..ffa7c66f3 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index ad99df84b..931d405b0 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,8 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Next Version +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. + #### Version 1.1.0 - Verified compatibility with Unity Android adapter version 4.12.2.0 - Verified compatibility with Unity iOS adapter version 4.12.2.0 diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index c16cc85de..70f844ef3 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.1.0 + google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From 264f9b85f97b53a496cc3bc2367ec0bc49505856 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 16 Oct 2024 10:41:43 -0700 Subject: [PATCH 032/318] Update Unity mediation plugin to iOS 4.12.3.1 and Android 4.12.3.0. PiperOrigin-RevId: 686561295 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 9 +++------ .../mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 2 +- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 931d405b0..dfd3d1194 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,12 +1,9 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - #### Version 1.1.0 -- Verified compatibility with Unity Android adapter version 4.12.2.0 -- Verified compatibility with Unity iOS adapter version 4.12.2.0 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +- Verified compatibility with Unity Android adapter version 4.12.3.0 +- Verified compatibility with Unity iOS adapter version 4.12.3.1 +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. #### Version 1.0.0 - Initial release. diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 36176c686..62632c3d0 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -51,8 +51,8 @@ android { } dependencies { - implementation 'com.unity3d.ads:unity-ads:4.12.2' - implementation 'com.google.ads.mediation:unity:4.12.2.0' + implementation 'com.unity3d.ads:unity-ads:4.12.3' + implementation 'com.google.ads.mediation:unity:4.12.3.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 51fe289af..83ac10c4e 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.2.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.3.1' s.platform = :ios, '12.0' s.static_framework = true From db3dadf0ced407a9c170561b40802138d17a9369 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 24 Oct 2024 13:33:03 -0700 Subject: [PATCH 033/318] Updated CHANGELOG to contain links to the Release Notes of the GMA SDK --- packages/google_mobile_ads/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index 88e9cb789..7ba8b8498 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -2,8 +2,8 @@ * Removed use of rootViewController for iOS GMA SDK which solved issues like https://github.com/googleads/googleads-mobile-flutter/issues/1146 and https://github.com/googleads/googleads-mobile-flutter/issues/700. * Android GMA SDK is now initialized on a background thread. -* Updates GMA iOS dependency to 11.10.0 -* Updates GMA Android dependency to 23.4.0 +* Updates GMA [iOS](https://developers.google.com/admob/ios/rel-notes) dependency to 11.10.0 +* Updates GMA [Android](https://developers.google.com/admob/android/rel-notes) dependency to 23.4.0 ## 5.1.0 * Adds support for APIs from the [Android](https://developers.google.com/admob/android/privacy/release-notes) UMP SDK version 2.2.0. From aa6710d6e0f8dee046b771d1d913c43082737497 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 4 Nov 2024 09:46:28 -0800 Subject: [PATCH 034/318] Update Kotlin version to 2.0.21 for mediation adapters PiperOrigin-RevId: 692999641 --- packages/mediation/gma_mediation_applovin/android/build.gradle | 2 +- .../gma_mediation_applovin/example/android/build.gradle | 2 +- .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- .../gma_mediation_liftoffmonetize/example/android/build.gradle | 2 +- packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- .../mediation/gma_mediation_meta/example/android/build.gradle | 2 +- packages/mediation/gma_mediation_mintegral/android/build.gradle | 2 +- packages/mediation/gma_mediation_pangle/android/build.gradle | 2 +- .../mediation/gma_mediation_pangle/example/android/build.gradle | 2 +- packages/mediation/gma_mediation_unity/android/build.gradle | 2 +- .../mediation/gma_mediation_unity/example/android/build.gradle | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 26ca1da48..1a94c641e 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_applovin/example/android/build.gradle b/packages/mediation/gma_mediation_applovin/example/android/build.gradle index e83fb5dac..cff218755 100644 --- a/packages/mediation/gma_mediation_applovin/example/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index d9fc09d3c..d1114b9cc 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 47d4060c7..8d97497cb 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 1df221f26..1dcf9cc9d 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index f4b72f0a5..da6126512 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetiz version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_liftoffmonetize/example/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/example/android/build.gradle index e83fb5dac..cff218755 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/example/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 1de0d9036..9c92be3ae 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_meta/example/android/build.gradle b/packages/mediation/gma_mediation_meta/example/android/build.gradle index e83fb5dac..cff218755 100644 --- a/packages/mediation/gma_mediation_meta/example/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index 291dcd73b..f6db177cd 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 28bf158f0..5467aa94b 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_pangle/example/android/build.gradle b/packages/mediation/gma_mediation_pangle/example/android/build.gradle index 20b858711..b9b7153a3 100644 --- a/packages/mediation/gma_mediation_pangle/example/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 62632c3d0..f09e4d74a 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -2,7 +2,7 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' version '1.0-SNAPSHOT' buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() diff --git a/packages/mediation/gma_mediation_unity/example/android/build.gradle b/packages/mediation/gma_mediation_unity/example/android/build.gradle index e83fb5dac..cff218755 100644 --- a/packages/mediation/gma_mediation_unity/example/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/example/android/build.gradle @@ -1,5 +1,5 @@ buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = '2.0.21' repositories { google() mavenCentral() From 0c635252b70f0237a7fa1709b2d47dc3a68af100 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 4 Nov 2024 10:58:14 -0800 Subject: [PATCH 035/318] Update kotlin version to 2.0.21 for Flutter Adapters that have that value on the settings.gradle file PiperOrigin-RevId: 693024565 --- .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- .../gma_mediation_dtexchange/example/android/settings.gradle | 2 +- .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../gma_mediation_ironsource/example/android/settings.gradle | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index d1114b9cc..df3ed1b75 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' + classpath 'com.android.tools.build:gradle:8.0.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle b/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle index 1d6d19b7f..c9926a2f0 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle @@ -20,7 +20,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "7.3.0" apply false - id "org.jetbrains.kotlin.android" version "1.7.10" apply false + id "org.jetbrains.kotlin.android" version "2.0.21" apply false } include ":app" diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 1dcf9cc9d..5396c9654 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -9,7 +9,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' + classpath 'com.android.tools.build:gradle:8.0.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle b/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle index 1d6d19b7f..c9926a2f0 100644 --- a/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle @@ -20,7 +20,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "7.3.0" apply false - id "org.jetbrains.kotlin.android" version "1.7.10" apply false + id "org.jetbrains.kotlin.android" version "2.0.21" apply false } include ":app" From 6aa897e3dcc2b2d97f4df61192b015388ce876d6 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Wed, 27 Nov 2024 14:31:36 -0800 Subject: [PATCH 036/318] Updated google_mobile_ads direct dependencies (#1207) * Updated google_mobile_ads direct dependencies * Added comment to CHANGELOG --- packages/google_mobile_ads/CHANGELOG.md | 3 +++ packages/google_mobile_ads/example/pubspec.yaml | 2 +- packages/google_mobile_ads/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index 7ba8b8498..352f4db70 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,3 +1,6 @@ +## Next Version +* Updated WebView Flutter Android dependency + ## 5.2.0 * Removed use of rootViewController for iOS GMA SDK which solved issues like https://github.com/googleads/googleads-mobile-flutter/issues/1146 and https://github.com/googleads/googleads-mobile-flutter/issues/700. diff --git a/packages/google_mobile_ads/example/pubspec.yaml b/packages/google_mobile_ads/example/pubspec.yaml index d1945ae09..0ef326d6f 100644 --- a/packages/google_mobile_ads/example/pubspec.yaml +++ b/packages/google_mobile_ads/example/pubspec.yaml @@ -20,7 +20,7 @@ dependencies: sdk: flutter google_mobile_ads: path: ../ - webview_flutter_android: ^3.7.0 + webview_flutter_android: ^4.0.0 webview_flutter: ^4.0.5 dev_dependencies: diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index f0324b965..90149a169 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -31,7 +31,7 @@ dependencies: meta: ^1.10.0 flutter: sdk: flutter - webview_flutter_android: ^3.15.0 + webview_flutter_android: ^4.0.0 webview_flutter_wkwebview: ^3.12.0 webview_flutter: ^4.7.0 From 8726aee0b8f8324d2dc977367c45a3c182943204 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 11:32:11 -0800 Subject: [PATCH 037/318] Bump actions/checkout from 4.2.0 to 4.2.2 (#1203) Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.0 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/d632683dd7b4114ad314bca15554477dd762a938...11bd71901bbe5b1630ceea73d27597364c9af683) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yaml | 6 +++--- .github/workflows/gma_mediation_applovin.yaml | 6 +++--- .github/workflows/gma_mediation_dtexchange.yaml | 6 +++--- .github/workflows/gma_mediation_inmobi.yaml | 2 +- .github/workflows/gma_mediation_ironsource.yaml | 6 +++--- .github/workflows/gma_mediation_liftoffmonetize.yaml | 6 +++--- .github/workflows/gma_mediation_meta.yaml | 2 +- .github/workflows/gma_mediation_mintegral.yaml | 2 +- .github/workflows/gma_mediation_pangle.yaml | 2 +- .github/workflows/gma_mediation_unity.yaml | 6 +++--- .github/workflows/google_mobile_ads.yaml | 6 +++--- 11 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index fe3be82d9..6031b8c1d 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -29,7 +29,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -60,7 +60,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -92,7 +92,7 @@ jobs: - "samples/admob/rewarded_example" - "samples/admob/rewarded_interstitial_example" steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index adf1f8748..81c2d0905 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index 58f21e92c..18400ee51 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -82,7 +82,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_inmobi.yaml b/.github/workflows/gma_mediation_inmobi.yaml index c37563cdb..825846822 100644 --- a/.github/workflows/gma_mediation_inmobi.yaml +++ b/.github/workflows/gma_mediation_inmobi.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 800deec5b..c01129b4a 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -55,7 +55,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -81,7 +81,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index d165a7d14..716988689 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: - uses: swift-actions/setup-swift@v2 with: swift-version: "5.7.2" - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_meta.yaml b/.github/workflows/gma_mediation_meta.yaml index 4232297ad..d86ad6aec 100644 --- a/.github/workflows/gma_mediation_meta.yaml +++ b/.github/workflows/gma_mediation_meta.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_mintegral.yaml b/.github/workflows/gma_mediation_mintegral.yaml index 609b3e11e..1a5a4b64e 100644 --- a/.github/workflows/gma_mediation_mintegral.yaml +++ b/.github/workflows/gma_mediation_mintegral.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_pangle.yaml b/.github/workflows/gma_mediation_pangle.yaml index 011c56f65..f510a4d40 100644 --- a/.github/workflows/gma_mediation_pangle.yaml +++ b/.github/workflows/gma_mediation_pangle.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index 25d22b5d0..a8c378b43 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -31,7 +31,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -53,7 +53,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -80,7 +80,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index d6c2b0870..459f76ee1 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -34,7 +34,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - uses: actions/setup-java@v4 @@ -56,7 +56,7 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" @@ -83,7 +83,7 @@ jobs: if: github.event_name == 'pull_request' timeout-minutes: 30 steps: - - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 - name: "Install Flutter" From 406add048acb291611d7d13d929a19dc80894b4c Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 23 Dec 2024 11:28:39 -0800 Subject: [PATCH 038/318] Creation of Chartboost Flutter Mediation Adapter Plugin PiperOrigin-RevId: 709110191 --- .../gma_mediation_chartboost/CHANGELOG.md | 9 + .../gma_mediation_chartboost/LICENSE | 202 ++++++ .../gma_mediation_chartboost/README.md | 36 + .../analysis_options.yaml | 19 + .../android/build.gradle | 72 ++ .../gma_mediation_chartboost_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationChartboostPlugin.kt | 24 + .../GmaMediationChartboostPluginTest.kt | 17 + .../example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle | 42 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle | 18 + ...a_mediation_chartboost_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle | 25 + .../gma_mediation_chartboost_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../GmaMediationChartboostPluginTest.swift | 20 + .../example/lib/main.dart | 29 + .../example/pubspec.lock | 323 +++++++++ .../example/pubspec.yaml | 85 +++ .../gma_mediation_chartboost.iml | 17 + .../GmaMediationChartboostPlugin.swift | 21 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_chartboost.podspec | 21 + .../lib/gma_mediation_chartboost.dart | 16 + .../pigeons/chartboost_sdk_api.dart | 35 + .../gma_mediation_chartboost/pubspec.lock | 426 ++++++++++++ .../gma_mediation_chartboost/pubspec.yaml | 27 + 83 files changed, 3067 insertions(+) create mode 100644 packages/mediation/gma_mediation_chartboost/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_chartboost/LICENSE create mode 100644 packages/mediation/gma_mediation_chartboost/README.md create mode 100644 packages/mediation/gma_mediation_chartboost/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_chartboost/android/build.gradle create mode 100644 packages/mediation/gma_mediation_chartboost/android/gma_mediation_chartboost_android.iml create mode 100644 packages/mediation/gma_mediation_chartboost/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_chartboost/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_chartboost/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPlugin.kt create mode 100644 packages/mediation/gma_mediation_chartboost/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPluginTest.kt create mode 100644 packages/mediation/gma_mediation_chartboost/example/README.md create mode 100644 packages/mediation/gma_mediation_chartboost/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/build.gradle create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/gma_mediation_chartboost_example_android.iml create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_chartboost/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_chartboost/example/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_chartboost/example/gma_mediation_chartboost_example.iml create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_chartboost/example/ios/RunnerTests/GmaMediationChartboostPluginTest.swift create mode 100644 packages/mediation/gma_mediation_chartboost/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_chartboost/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_chartboost/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_chartboost/gma_mediation_chartboost.iml create mode 100644 packages/mediation/gma_mediation_chartboost/ios/Classes/GmaMediationChartboostPlugin.swift create mode 100644 packages/mediation/gma_mediation_chartboost/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec create mode 100644 packages/mediation/gma_mediation_chartboost/lib/gma_mediation_chartboost.dart create mode 100644 packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart create mode 100644 packages/mediation/gma_mediation_chartboost/pubspec.lock create mode 100644 packages/mediation/gma_mediation_chartboost/pubspec.yaml diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md new file mode 100644 index 000000000..f9e4f3893 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -0,0 +1,9 @@ +## Chartboost Flutter Mediation Adapter Changelog + +#### 1.0.0 + +TODO: Add version numbers +* Initial release. +* Verified compatibility with Chartboost Android adapter version a.b.c.d +* Verified compatibility with Chartboost iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_chartboost/LICENSE b/packages/mediation/gma_mediation_chartboost/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_chartboost/README.md b/packages/mediation/gma_mediation_chartboost/README.md new file mode 100644 index 000000000..05820ea1d --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/README.md @@ -0,0 +1,36 @@ +# Google Mobile Ads Mediation of Chartboost for Flutter + +[![gma_mediation_chartboost](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation Chartboost Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +Chartboost Ad Network through the Google Mobile Ads SDK. + +This plugin use the [Pigeon Flutter plugin](https://pub.dev/packages/pigeon) to +generate the classes that bridge the dart layer with each platform's code. +To add or modify the third party sdk, use the classes in the pigeons folder +following [this guide](https://github.com/flutter/packages/blob/main/packages/pigeon/example/README.md). + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [Chartboost](https://developers.google.com/admob/flutter/mediation/chartboost). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_chartboost/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_chartboost/analysis_options.yaml b/packages/mediation/gma_mediation_chartboost/analysis_options.yaml new file mode 100644 index 000000000..fac4bcd12 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle new file mode 100644 index 000000000..550e3b429 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -0,0 +1,72 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" +version = "1.0-SNAPSHOT" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.1.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + maven { + url = uri("https://cboost.jfrog.io/artifactory/chartboost-ads/") + } + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + if (project.android.hasProperty("namespace")) { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" + } + + compileSdk = 34 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:chartboost:9.8.1.0") + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_chartboost/android/gma_mediation_chartboost_android.iml b/packages/mediation/gma_mediation_chartboost/android/gma_mediation_chartboost_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/gma_mediation_chartboost_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/android/settings.gradle b/packages/mediation/gma_mediation_chartboost/android/settings.gradle new file mode 100644 index 000000000..5edb33d81 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_chartboost' diff --git a/packages/mediation/gma_mediation_chartboost/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_chartboost/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..47a5a794c --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_chartboost/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPlugin.kt b/packages/mediation/gma_mediation_chartboost/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPlugin.kt new file mode 100644 index 000000000..4c4b35124 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the Chartboost Adapter. */ +class GmaMediationChartboostPlugin: FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { } + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { } +} diff --git a/packages/mediation/gma_mediation_chartboost/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPluginTest.kt b/packages/mediation/gma_mediation_chartboost/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPluginTest.kt new file mode 100644 index 000000000..d929f89a2 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/GmaMediationChartboostPluginTest.kt @@ -0,0 +1,17 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost + +internal class GmaMediationChartboostPluginTest {} diff --git a/packages/mediation/gma_mediation_chartboost/example/README.md b/packages/mediation/gma_mediation_chartboost/example/README.md new file mode 100644 index 000000000..6c251c2e9 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_chartboost_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/chartboost). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_chartboost/example/analysis_options.yaml b/packages/mediation/gma_mediation_chartboost/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle b/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle new file mode 100644 index 000000000..e6b47c9ac --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle @@ -0,0 +1,42 @@ +plugins { + id "com.android.application" + id "kotlin-android" + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id "dev.flutter.flutter-gradle-plugin" +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + defaultConfig { + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.debug + } + } +} + +flutter { + source = "../.." +} diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..1c7d46939 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost_example/MainActivity.kt b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost_example/MainActivity.kt new file mode 100644 index 000000000..bb90a9f36 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_chartboost/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/build.gradle b/packages/mediation/gma_mediation_chartboost/example/android/build.gradle new file mode 100644 index 000000000..d2ffbffa4 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/build.gradle @@ -0,0 +1,18 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = "../build" +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/packages/mediation/gma_mediation_chartboost/example/android/gma_mediation_chartboost_example_android.iml b/packages/mediation/gma_mediation_chartboost/example/android/gma_mediation_chartboost_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/gma_mediation_chartboost_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/android/gradle.properties b/packages/mediation/gma_mediation_chartboost/example/android/gradle.properties new file mode 100644 index 000000000..259717082 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_chartboost/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_chartboost/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..7bb2df6ba --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip diff --git a/packages/mediation/gma_mediation_chartboost/example/android/gradlew b/packages/mediation/gma_mediation_chartboost/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_chartboost/example/android/gradlew.bat b/packages/mediation/gma_mediation_chartboost/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_chartboost/example/android/settings.gradle b/packages/mediation/gma_mediation_chartboost/example/android/settings.gradle new file mode 100644 index 000000000..b9e43bd37 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/android/settings.gradle @@ -0,0 +1,25 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.1.0" apply false + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/packages/mediation/gma_mediation_chartboost/example/gma_mediation_chartboost_example.iml b/packages/mediation/gma_mediation_chartboost/example/gma_mediation_chartboost_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/gma_mediation_chartboost_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..cdc9a5205 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationChartboostExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..8e3ca5dfe --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Info.plist new file mode 100644 index 000000000..6637c3943 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Chartboost + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_chartboost_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_chartboost/example/ios/RunnerTests/GmaMediationChartboostPluginTest.swift b/packages/mediation/gma_mediation_chartboost/example/ios/RunnerTests/GmaMediationChartboostPluginTest.swift new file mode 100644 index 000000000..ccc66805e --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/ios/RunnerTests/GmaMediationChartboostPluginTest.swift @@ -0,0 +1,20 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import UIKit +import XCTest + +@testable import gma_mediation_chartboost + +class GmaMediationChartboostPluginTests: XCTestCase { } diff --git a/packages/mediation/gma_mediation_chartboost/example/lib/main.dart b/packages/mediation/gma_mediation_chartboost/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_chartboost/example/pubspec.lock b/packages/mediation/gma_mediation_chartboost/example/pubspec.lock new file mode 100644 index 000000000..e9f86a3ab --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + file: + dependency: transitive + description: + name: file + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_chartboost: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "4775006383a27a5d86d46f8fb452bfcb17794fc0a46c732979e49a8eb1c8963f" + url: "https://pub.dev" + source: hosted + version: "5.2.0" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + platform: + dependency: transitive + description: + name: platform + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" + url: "https://pub.dev" + source: hosted + version: "3.1.5" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "21e54fd2faf1b5bdd5102afd25012184a6793927648ea81eea80552ac9405b32" + url: "https://pub.dev" + source: hosted + version: "5.0.2" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "003d7da9519e1e5f329422b36c4dcdf18d7d2978d1ba099ea4e45ba490ed845e" + url: "https://pub.dev" + source: hosted + version: "3.0.3" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: ec81f57aa1611f8ebecf1d2259da4ef052281cb5ad624131c93546c79ccc7736 + url: "https://pub.dev" + source: hosted + version: "4.9.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "47a8da40d02befda5b151a26dba71f47df471cddd91dfdb7802d0a87c5442558" + url: "https://pub.dev" + source: hosted + version: "3.16.9" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: b7e92f129482460951d96ef9a46b49db34bd2e1621685de26e9eaafd9674e7eb + url: "https://pub.dev" + source: hosted + version: "3.16.3" +sdks: + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml new file mode 100644 index 000000000..b176eecb5 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_chartboost_example +description: "Demonstrates how to use the gma_mediation_chartboost plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.5.4 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_chartboost: + # When depending on this package from a real application you should use: + # gma_mediation_chartboost: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^4.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_chartboost/gma_mediation_chartboost.iml b/packages/mediation/gma_mediation_chartboost/gma_mediation_chartboost.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/gma_mediation_chartboost.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_chartboost/ios/Classes/GmaMediationChartboostPlugin.swift b/packages/mediation/gma_mediation_chartboost/ios/Classes/GmaMediationChartboostPlugin.swift new file mode 100644 index 000000000..ef294f815 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/ios/Classes/GmaMediationChartboostPlugin.swift @@ -0,0 +1,21 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/** Required to link the iOS dependency of the Chartboost Adapter. */ +public class GmaMediationChartboostPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { } +} diff --git a/packages/mediation/gma_mediation_chartboost/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_chartboost/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec new file mode 100644 index 000000000..ad3b9f903 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_chartboost' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of Chartboost.' + s.description = <<-DESC + Mediation Adapter for Chartboost to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/chartboost' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.8.0.0' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_chartboost/lib/gma_mediation_chartboost.dart b/packages/mediation/gma_mediation_chartboost/lib/gma_mediation_chartboost.dart new file mode 100644 index 000000000..666426317 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/lib/gma_mediation_chartboost.dart @@ -0,0 +1,16 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationChartboost {} diff --git a/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart b/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart new file mode 100644 index 000000000..97411b562 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart @@ -0,0 +1,35 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:pigeon/pigeon.dart'; + +@ConfigurePigeon( + PigeonOptions( + dartOut: 'lib/chartboost_sdk_api.g.dart', + dartOptions: DartOptions(), + kotlinOut: + 'android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_chartboost/ChartboostSDKApi.g.kt', + kotlinOptions: KotlinOptions( + package: + "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost", + ), + swiftOut: 'ios/Classes/ChartboostSDKApi.g.swift', + swiftOptions: SwiftOptions(), + dartPackageName: 'gma_mediation_chartboost', + ), +) +@HostApi() + +/// The generated classes set the channels to call the methods in the corresponding kotlin ChartboostSDKApi interface and swift ChartboostSDKApi protocol from the dart layer. +abstract class ChartboostSDKApi { } diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.lock b/packages/mediation/gma_mediation_chartboost/pubspec.lock new file mode 100644 index 000000000..49b6a2583 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/pubspec.lock @@ -0,0 +1,426 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 + url: "https://pub.dev" + source: hosted + version: "72.0.0" + _macros: + dependency: transitive + description: dart + source: sdk + version: "0.3.2" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 + url: "https://pub.dev" + source: hosted + version: "6.7.0" + args: + dependency: transitive + description: + name: args + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + url: "https://pub.dev" + source: hosted + version: "2.6.0" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + url: "https://pub.dev" + source: hosted + version: "8.9.2" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" + url: "https://pub.dev" + source: hosted + version: "4.10.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.7" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + glob: + dependency: transitive + description: + name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "4775006383a27a5d86d46f8fb452bfcb17794fc0a46c732979e49a8eb1c8963f" + url: "https://pub.dev" + source: hosted + version: "5.2.0" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: d758a5211fce7fd3f5e316f804daefecdc34c7e53559716125e6da7388ae8565 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + macros: + dependency: transitive + description: + name: macros + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + url: "https://pub.dev" + source: hosted + version: "0.1.2-main.4" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + pigeon: + dependency: "direct dev" + description: + name: pigeon + sha256: "8e72590d29cdf327d290c266eb88983842fd3cfa027d8ad3599997be7e523746" + url: "https://pub.dev" + source: hosted + version: "22.6.2" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + watcher: + dependency: transitive + description: + name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: ec81f57aa1611f8ebecf1d2259da4ef052281cb5ad624131c93546c79ccc7736 + url: "https://pub.dev" + source: hosted + version: "4.9.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "47a8da40d02befda5b151a26dba71f47df471cddd91dfdb7802d0a87c5442558" + url: "https://pub.dev" + source: hosted + version: "3.16.9" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: b7e92f129482460951d96ef9a46b49db34bd2e1621685de26e9eaafd9674e7eb + url: "https://pub.dev" + source: hosted + version: "3.16.3" + yaml: + dependency: transitive + description: + name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" + source: hosted + version: "3.1.2" +sdks: + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml new file mode 100644 index 000000000..324627690 --- /dev/null +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -0,0 +1,27 @@ +name: gma_mediation_chartboost +description: 'Mediation Adapter that enables sending ad requests to the Chartboost + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.5.4 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.2.0 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^4.0.0 + lint: ^2.3.0 + pigeon: ^22.6.2 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost + pluginClass: GmaMediationChartboostPlugin + ios: + pluginClass: GmaMediationChartboostPlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_chartboost From ad3c767468c6d6a99e8425ee6db28db390c466bd Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 26 Dec 2024 15:17:30 -0800 Subject: [PATCH 039/318] Updated Chartboost adapter versions in CHANGELOG. PiperOrigin-RevId: 709890066 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index f9e4f3893..6002bb854 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -2,8 +2,7 @@ #### 1.0.0 -TODO: Add version numbers * Initial release. -* Verified compatibility with Chartboost Android adapter version a.b.c.d -* Verified compatibility with Chartboost iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +* Verified compatibility with Chartboost Android adapter version 9.8.1.0 +* Verified compatibility with Chartboost iOS adapter version 9.8.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. From dfa3bf047144a5dcf83650cd412c5c78fe16ddd7 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 16 Jan 2025 11:46:51 -0800 Subject: [PATCH 040/318] - Chartboost adapter format fix PiperOrigin-RevId: 716320103 --- .../gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart b/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart index 97411b562..2dee582e4 100644 --- a/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart +++ b/packages/mediation/gma_mediation_chartboost/pigeons/chartboost_sdk_api.dart @@ -32,4 +32,4 @@ import 'package:pigeon/pigeon.dart'; @HostApi() /// The generated classes set the channels to call the methods in the corresponding kotlin ChartboostSDKApi interface and swift ChartboostSDKApi protocol from the dart layer. -abstract class ChartboostSDKApi { } +abstract class ChartboostSDKApi {} From b345c18fd46af32cea5ffbc8164f3fccae87df38 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Thu, 16 Jan 2025 13:24:19 -0800 Subject: [PATCH 041/318] Android Gradle update | UMP - Support for new Debug Geography enums (#1223) * UMP - Support for new Debug Geography enums * Changed deprecated members * Adjusted to the new double values for Colors --- packages/google_mobile_ads/CHANGELOG.md | 1 + .../google_mobile_ads/android/build.gradle | 8 ++--- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../example/android/app/build.gradle | 23 +++++++------- .../example/android/build.gradle | 11 ------- .../gradle/wrapper/gradle-wrapper.properties | 2 +- .../example/android/settings.gradle | 30 ++++++++++++------- ...FLTUserMessagingPlatformReaderWriterTest.m | 2 +- .../google_mobile_ads/example/pubspec.yaml | 4 +-- .../lib/src/ad_instance_manager.dart | 9 +++--- .../native_template_style.dart | 2 +- .../native_template_text_style.dart | 4 +-- .../src/ump/consent_request_parameters.dart | 9 +++++- packages/google_mobile_ads/pubspec.yaml | 8 ++--- .../test/mobile_ads_test.dart | 12 ++++---- 15 files changed, 68 insertions(+), 59 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index 352f4db70..e999dd577 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,5 +1,6 @@ ## Next Version * Updated WebView Flutter Android dependency +* Adds support for the new Debug Geography enums for the UMP SDK ## 5.2.0 * Removed use of rootViewController for iOS GMA SDK which solved issues like diff --git a/packages/google_mobile_ads/android/build.gradle b/packages/google_mobile_ads/android/build.gradle index 80801f48f..a101fb409 100644 --- a/packages/google_mobile_ads/android/build.gradle +++ b/packages/google_mobile_ads/android/build.gradle @@ -8,7 +8,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:8.0.1' + classpath 'com.android.tools.build:gradle:8.3.2' } } @@ -41,9 +41,9 @@ android { implementation 'androidx.lifecycle:lifecycle-process:2.6.2' implementation 'com.google.errorprone:error_prone_annotations:2.16' testImplementation 'junit:junit:4.13.2' - testImplementation 'org.hamcrest:hamcrest:2.2' - testImplementation 'org.mockito:mockito-inline:5.2.0' - testImplementation 'org.robolectric:robolectric:4.10.3' + testImplementation 'org.hamcrest:hamcrest:3.0' + testImplementation 'org.mockito:mockito-core:5.15.2' + testImplementation 'org.robolectric:robolectric:4.14.1' testImplementation 'androidx.test:core:1.5.0' } testOptions { diff --git a/packages/google_mobile_ads/android/gradle/wrapper/gradle-wrapper.properties b/packages/google_mobile_ads/android/gradle/wrapper/gradle-wrapper.properties index d72b5889f..9c034ab11 100644 --- a/packages/google_mobile_ads/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/google_mobile_ads/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Sat May 13 14:37:03 CEST 2023 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/packages/google_mobile_ads/example/android/app/build.gradle b/packages/google_mobile_ads/example/android/app/build.gradle index fc0e073d4..352b58e15 100644 --- a/packages/google_mobile_ads/example/android/app/build.gradle +++ b/packages/google_mobile_ads/example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,9 +22,6 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { compileSdkVersion 34 @@ -52,8 +50,8 @@ android { } compileOptions { - sourceCompatibility JavaVersion.VERSION_17 - targetCompatibility JavaVersion.VERSION_17 + sourceCompatibility JavaLanguageVersion.of(17) + targetCompatibility JavaLanguageVersion.of(17) } } @@ -62,7 +60,10 @@ flutter { } dependencies { - testImplementation 'junit:junit:4.12' + testImplementation 'junit:junit:4.13.2' + testImplementation 'org.robolectric:robolectric:4.14.1' + testImplementation 'org.mockito:mockito-core:5.15.2' + androidTestImplementation 'org.robolectric:robolectric:4.10.3' androidTestImplementation 'androidx.test:runner:1.2.0' androidTestImplementation 'androidx.test:rules:1.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/packages/google_mobile_ads/example/android/build.gradle b/packages/google_mobile_ads/example/android/build.gradle index c293bd821..bc157bd1a 100644 --- a/packages/google_mobile_ads/example/android/build.gradle +++ b/packages/google_mobile_ads/example/android/build.gradle @@ -1,14 +1,3 @@ -buildscript { - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.0.1' - } -} - allprojects { repositories { google() diff --git a/packages/google_mobile_ads/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/google_mobile_ads/example/android/gradle/wrapper/gradle-wrapper.properties index 5bab02b5d..4df841cd0 100644 --- a/packages/google_mobile_ads/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/google_mobile_ads/example/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Sat May 13 14:40:00 CEST 2023 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/packages/google_mobile_ads/example/android/settings.gradle b/packages/google_mobile_ads/example/android/settings.gradle index 115da6cb4..c3aa23a89 100644 --- a/packages/google_mobile_ads/example/android/settings.gradle +++ b/packages/google_mobile_ads/example/android/settings.gradle @@ -1,15 +1,25 @@ -include ':app' +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -def plugins = new Properties() -def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins') -if (pluginsFile.exists()) { - pluginsFile.withInputStream { stream -> plugins.load(stream) } + repositories { + google() + mavenCentral() + gradlePluginPortal() + } } -plugins.each { name, path -> - def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile() - include ":$name" - project(":$name").projectDir = pluginDirectory +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.3.2" apply false + id "org.jetbrains.kotlin.android" version "1.8.22" apply false } + +include ":app" \ No newline at end of file diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformReaderWriterTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformReaderWriterTest.m index 721acf207..351133c7a 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformReaderWriterTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformReaderWriterTest.m @@ -69,7 +69,7 @@ - (void)testConsentDebugSettings_default { - (void)testConsentDebugSettings_geographyTestDeviceIdentifiers { UMPDebugSettings *debugSettings = [[UMPDebugSettings alloc] init]; - debugSettings.geography = UMPDebugGeographyNotEEA; + debugSettings.geography = UMPDebugGeographyOther; debugSettings.testDeviceIdentifiers = @[ @"id-1", @"id-2" ]; NSData *encodedMessage = [messageCodec encode:debugSettings]; diff --git a/packages/google_mobile_ads/example/pubspec.yaml b/packages/google_mobile_ads/example/pubspec.yaml index 0ef326d6f..c2a3ee7c6 100644 --- a/packages/google_mobile_ads/example/pubspec.yaml +++ b/packages/google_mobile_ads/example/pubspec.yaml @@ -20,8 +20,8 @@ dependencies: sdk: flutter google_mobile_ads: path: ../ - webview_flutter_android: ^4.0.0 - webview_flutter: ^4.0.5 + webview_flutter_android: ^4.3.0 + webview_flutter: ^4.10.0 dev_dependencies: pedantic: ^1.11.0 diff --git a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart index 9b93ad3e6..c285ab126 100644 --- a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart +++ b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart @@ -22,6 +22,7 @@ import 'dart:io'; import 'package:flutter/cupertino.dart'; import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:google_mobile_ads/src/ad_inspector_containers.dart'; import 'package:google_mobile_ads/src/ad_listeners.dart'; @@ -988,10 +989,10 @@ class AdMessageCodec extends StandardMessageCodec { writeValue(buffer, value.size); } else if (value is Color) { buffer.putUint8(_valueColor); - writeValue(buffer, value.alpha); - writeValue(buffer, value.red); - writeValue(buffer, value.green); - writeValue(buffer, value.blue); + writeValue(buffer, (value.a * 255).toInt()); + writeValue(buffer, (value.r * 255).toInt()); + writeValue(buffer, (value.g * 255).toInt()); + writeValue(buffer, (value.b * 255).toInt()); } else if (value is NativeTemplateFontStyle) { buffer.putUint8(_valueNativeTemplateFontStyle); writeValue(buffer, value.index); diff --git a/packages/google_mobile_ads/lib/src/nativetemplates/native_template_style.dart b/packages/google_mobile_ads/lib/src/nativetemplates/native_template_style.dart index 71947dbfc..0e800c450 100644 --- a/packages/google_mobile_ads/lib/src/nativetemplates/native_template_style.dart +++ b/packages/google_mobile_ads/lib/src/nativetemplates/native_template_style.dart @@ -68,7 +68,7 @@ class NativeTemplateStyle { primaryTextStyle == other.primaryTextStyle && secondaryTextStyle == other.secondaryTextStyle && tertiaryTextStyle == other.tertiaryTextStyle && - mainBackgroundColor?.value == other.mainBackgroundColor?.value && + mainBackgroundColor == other.mainBackgroundColor && cornerRadius == other.cornerRadius; } diff --git a/packages/google_mobile_ads/lib/src/nativetemplates/native_template_text_style.dart b/packages/google_mobile_ads/lib/src/nativetemplates/native_template_text_style.dart index d5d170fbd..f2c7b6f22 100644 --- a/packages/google_mobile_ads/lib/src/nativetemplates/native_template_text_style.dart +++ b/packages/google_mobile_ads/lib/src/nativetemplates/native_template_text_style.dart @@ -40,8 +40,8 @@ class NativeTemplateTextStyle { @override bool operator ==(Object other) { return other is NativeTemplateTextStyle && - textColor?.value == other.textColor?.value && - backgroundColor?.value == other.backgroundColor?.value && + textColor == other.textColor && + backgroundColor == other.backgroundColor && style == other.style && size == other.size; } diff --git a/packages/google_mobile_ads/lib/src/ump/consent_request_parameters.dart b/packages/google_mobile_ads/lib/src/ump/consent_request_parameters.dart index 7873c0abc..7419d211a 100644 --- a/packages/google_mobile_ads/lib/src/ump/consent_request_parameters.dart +++ b/packages/google_mobile_ads/lib/src/ump/consent_request_parameters.dart @@ -73,5 +73,12 @@ enum DebugGeography { debugGeographyEea, /// Geography appears as not in EEA for debug devices. - debugGeographyNotEea + @Deprecated('Use DebugGeography.debugGeographyOther') + debugGeographyNotEea, + + /// Geography appears as in a regulated US State for debug devices. + debugGeographyRegulatedUsState, + + /// Geography appears as in a region with no regulation in force. + debugGeographyOther } diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index 90149a169..52083c67c 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -31,16 +31,16 @@ dependencies: meta: ^1.10.0 flutter: sdk: flutter - webview_flutter_android: ^4.0.0 - webview_flutter_wkwebview: ^3.12.0 - webview_flutter: ^4.7.0 + webview_flutter_android: ^4.3.0 + webview_flutter_wkwebview: ^3.17.0 + webview_flutter: ^4.10.0 dev_dependencies: pedantic: ^1.11.0 # e2e: ^0.7.0 flutter_driver: sdk: flutter - mockito: ^5.0.0-0 + mockito: ^5.4.5 build_runner: ^2.1.10 flutter_test: sdk: flutter diff --git a/packages/google_mobile_ads/test/mobile_ads_test.dart b/packages/google_mobile_ads/test/mobile_ads_test.dart index 9addf96b7..a53aaf609 100644 --- a/packages/google_mobile_ads/test/mobile_ads_test.dart +++ b/packages/google_mobile_ads/test/mobile_ads_test.dart @@ -516,7 +516,7 @@ void main() { test('encode/decode non-empty native text style', () { final textStyle = NativeTemplateTextStyle( - textColor: Colors.red, + textColor: Colors.red.shade900, backgroundColor: Colors.blue.withAlpha(50), style: NativeTemplateFontStyle.normal, size: 20, @@ -540,16 +540,16 @@ void main() { templateType: TemplateType.medium, callToActionTextStyle: NativeTemplateTextStyle(), primaryTextStyle: NativeTemplateTextStyle( - textColor: Colors.blue, + textColor: Colors.blue.shade900, ), secondaryTextStyle: NativeTemplateTextStyle( - backgroundColor: Colors.green, + backgroundColor: Colors.green.shade900, style: NativeTemplateFontStyle.italic, ), tertiaryTextStyle: NativeTemplateTextStyle( size: 15, ), - mainBackgroundColor: Colors.cyan, + mainBackgroundColor: Colors.cyan.shade900, cornerRadius: 12); final byteData = codec.encodeMessage(templateStyle); final result = codec.decodeMessage(byteData); @@ -562,10 +562,10 @@ void main() { templateType: TemplateType.medium, callToActionTextStyle: NativeTemplateTextStyle(), primaryTextStyle: NativeTemplateTextStyle( - textColor: Colors.blue, + textColor: Colors.blue.shade900, ), secondaryTextStyle: NativeTemplateTextStyle( - backgroundColor: Colors.green, + backgroundColor: Colors.green.shade900, style: NativeTemplateFontStyle.italic, ), tertiaryTextStyle: NativeTemplateTextStyle( From 928683314457b96b02eeaa282993b9fc3fbb64c7 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Tue, 21 Jan 2025 11:50:28 -0800 Subject: [PATCH 042/318] Version bumping google_mobile_ads (#1230) * Version bumping the main gma Flutter plugin --- packages/google_mobile_ads/CHANGELOG.md | 8 ++++++-- packages/google_mobile_ads/android/build.gradle | 4 ++-- .../io/flutter/plugins/googlemobileads/Constants.java | 2 +- packages/google_mobile_ads/example/pubspec.yaml | 2 +- packages/google_mobile_ads/ios/Classes/FLTConstants.h | 2 +- packages/google_mobile_ads/ios/google_mobile_ads.podspec | 4 ++-- packages/google_mobile_ads/pubspec.yaml | 6 +++--- 7 files changed, 16 insertions(+), 12 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index e999dd577..e731520dd 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,6 +1,10 @@ -## Next Version +## 5.3.0 * Updated WebView Flutter Android dependency -* Adds support for the new Debug Geography enums for the UMP SDK +* Adds support for the new Debug Geography enums for the UMP SDK: + * [Android](https://developers.google.com/admob/android/privacy/release-notes) UMP SDK version 3.1.0. + * [iOS](https://developers.google.com/admob/ios/privacy/download#release_notes) UMP SDK version 2.7.0. +* Updates GMA [iOS](https://developers.google.com/admob/ios/rel-notes) dependency to 11.13.0 +* Updates GMA [Android](https://developers.google.com/admob/android/rel-notes) dependency to 23.6.0 ## 5.2.0 * Removed use of rootViewController for iOS GMA SDK which solved issues like diff --git a/packages/google_mobile_ads/android/build.gradle b/packages/google_mobile_ads/android/build.gradle index a101fb409..3febc166a 100644 --- a/packages/google_mobile_ads/android/build.gradle +++ b/packages/google_mobile_ads/android/build.gradle @@ -35,8 +35,8 @@ android { disable 'InvalidPackage' } dependencies { - api 'com.google.android.gms:play-services-ads:23.4.0' - implementation 'com.google.android.ump:user-messaging-platform:3.0.0' + api 'com.google.android.gms:play-services-ads:23.6.0' + implementation 'com.google.android.ump:user-messaging-platform:3.1.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.lifecycle:lifecycle-process:2.6.2' implementation 'com.google.errorprone:error_prone_annotations:2.16' diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java index 40e3a0200..ad00cd928 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java @@ -17,7 +17,7 @@ /** Constants used in the plugin. */ public class Constants { /** Version request agent. Should be bumped alongside plugin versions. */ - public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.2.0"; + public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.3.0"; /** Prefix for news template */ public static final String REQUEST_AGENT_NEWS_TEMPLATE_PREFIX = "News"; diff --git a/packages/google_mobile_ads/example/pubspec.yaml b/packages/google_mobile_ads/example/pubspec.yaml index c2a3ee7c6..a599d4527 100644 --- a/packages/google_mobile_ads/example/pubspec.yaml +++ b/packages/google_mobile_ads/example/pubspec.yaml @@ -20,7 +20,7 @@ dependencies: sdk: flutter google_mobile_ads: path: ../ - webview_flutter_android: ^4.3.0 + webview_flutter_android: ^4.3.1 webview_flutter: ^4.10.0 dev_dependencies: diff --git a/packages/google_mobile_ads/ios/Classes/FLTConstants.h b/packages/google_mobile_ads/ios/Classes/FLTConstants.h index 5976948c2..8de05d5d4 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTConstants.h +++ b/packages/google_mobile_ads/ios/Classes/FLTConstants.h @@ -13,4 +13,4 @@ // limitations under the License. /** Versioned request agent string. */ -#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.2.0" +#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.3.0" diff --git a/packages/google_mobile_ads/ios/google_mobile_ads.podspec b/packages/google_mobile_ads/ios/google_mobile_ads.podspec index 0913c0168..ccc2d2a61 100644 --- a/packages/google_mobile_ads/ios/google_mobile_ads.podspec +++ b/packages/google_mobile_ads/ios/google_mobile_ads.podspec @@ -3,7 +3,7 @@ # Pod::Spec.new do |s| s.name = 'google_mobile_ads' - s.version = '5.2.0' + s.version = '5.3.0' s.summary = 'Google Mobile Ads plugin for Flutter.' s.description = <<-DESC Google Mobile Ads plugin for Flutter. @@ -15,7 +15,7 @@ Google Mobile Ads plugin for Flutter. s.source_files = 'Classes/**/*.{h,m}' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'Google-Mobile-Ads-SDK','~> 11.10.0' + s.dependency 'Google-Mobile-Ads-SDK','~> 11.13.0' s.dependency 'webview_flutter_wkwebview' s.ios.deployment_target = '12.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS' => 'armv7 arm64 x86_64' } diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index 52083c67c..4542aef08 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -13,7 +13,7 @@ # limitations under the License. name: google_mobile_ads -version: 5.2.0 +version: 5.3.0 description: Flutter plugin for Google Mobile Ads, supporting banner, interstitial (full-screen), rewarded and native ads repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/google_mobile_ads @@ -31,7 +31,7 @@ dependencies: meta: ^1.10.0 flutter: sdk: flutter - webview_flutter_android: ^4.3.0 + webview_flutter_android: ^4.3.1 webview_flutter_wkwebview: ^3.17.0 webview_flutter: ^4.10.0 @@ -41,7 +41,7 @@ dev_dependencies: flutter_driver: sdk: flutter mockito: ^5.4.5 - build_runner: ^2.1.10 + build_runner: ^2.4.14 flutter_test: sdk: flutter webview_flutter_platform_interface: ^2.10.0 From c5bb49aced00935c4163b311625046955a3868b6 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Wed, 22 Jan 2025 15:21:16 -0600 Subject: [PATCH 043/318] Updating samples to 5.3.0 (#1233) * Updating samples to 5.3.0 * Updated app open example * updated interstitial * Updated mediation example * Updated platform example * Updated template example * UPdated rewared example * Updated rewrded interstitial example --------- Co-authored-by: Justin Malandruccolo --- samples/admob/app_open_example/.gitignore | 2 ++ samples/admob/app_open_example/android/app/build.gradle | 2 +- samples/admob/app_open_example/pubspec.yaml | 2 +- samples/admob/banner_example/.gitignore | 2 ++ samples/admob/banner_example/android/app/build.gradle | 2 +- samples/admob/banner_example/pubspec.yaml | 2 +- samples/admob/interstitial_example/.gitignore | 2 ++ samples/admob/interstitial_example/android/app/build.gradle | 2 +- samples/admob/interstitial_example/pubspec.yaml | 2 +- samples/admob/mediation_example/android/app/build.gradle | 3 ++- samples/admob/mediation_example/android/build.gradle | 4 ++-- samples/admob/mediation_example/pubspec.yaml | 2 +- .../admob/native_platform_example/android/app/build.gradle | 3 ++- samples/admob/native_platform_example/pubspec.yaml | 2 +- .../admob/native_template_example/android/app/build.gradle | 3 ++- samples/admob/native_template_example/pubspec.yaml | 2 +- samples/admob/rewarded_example/android/app/build.gradle | 2 +- samples/admob/rewarded_example/pubspec.yaml | 2 +- .../rewarded_interstitial_example/android/app/build.gradle | 2 +- samples/admob/rewarded_interstitial_example/pubspec.yaml | 2 +- 20 files changed, 27 insertions(+), 18 deletions(-) diff --git a/samples/admob/app_open_example/.gitignore b/samples/admob/app_open_example/.gitignore index 29a3a5017..79c113f9b 100644 --- a/samples/admob/app_open_example/.gitignore +++ b/samples/admob/app_open_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/app_open_example/android/app/build.gradle b/samples/admob/app_open_example/android/app/build.gradle index e5114805e..64a6a3bd4 100644 --- a/samples/admob/app_open_example/android/app/build.gradle +++ b/samples/admob/app_open_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.app_open_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/app_open_example/pubspec.yaml b/samples/admob/app_open_example/pubspec.yaml index 1408a0aa9..a26ce9380 100644 --- a/samples/admob/app_open_example/pubspec.yaml +++ b/samples/admob/app_open_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 dev_dependencies: flutter_test: diff --git a/samples/admob/banner_example/.gitignore b/samples/admob/banner_example/.gitignore index 24476c5d1..6c319542b 100644 --- a/samples/admob/banner_example/.gitignore +++ b/samples/admob/banner_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/banner_example/android/app/build.gradle b/samples/admob/banner_example/android/app/build.gradle index 6007fea25..7f04198ad 100644 --- a/samples/admob/banner_example/android/app/build.gradle +++ b/samples/admob/banner_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.banner_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/banner_example/pubspec.yaml b/samples/admob/banner_example/pubspec.yaml index dae4fbcfe..e9900e4ab 100644 --- a/samples/admob/banner_example/pubspec.yaml +++ b/samples/admob/banner_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 dev_dependencies: flutter_test: diff --git a/samples/admob/interstitial_example/.gitignore b/samples/admob/interstitial_example/.gitignore index 24476c5d1..6c319542b 100644 --- a/samples/admob/interstitial_example/.gitignore +++ b/samples/admob/interstitial_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/interstitial_example/android/app/build.gradle b/samples/admob/interstitial_example/android/app/build.gradle index 14eac3f3e..2c46f036b 100644 --- a/samples/admob/interstitial_example/android/app/build.gradle +++ b/samples/admob/interstitial_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.interstitial_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/interstitial_example/pubspec.yaml b/samples/admob/interstitial_example/pubspec.yaml index c9ef23b4b..68637b5a3 100644 --- a/samples/admob/interstitial_example/pubspec.yaml +++ b/samples/admob/interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 dev_dependencies: flutter_test: diff --git a/samples/admob/mediation_example/android/app/build.gradle b/samples/admob/mediation_example/android/app/build.gradle index e0ee2265e..56a2c0c34 100644 --- a/samples/admob/mediation_example/android/app/build.gradle +++ b/samples/admob/mediation_example/android/app/build.gradle @@ -25,8 +25,9 @@ apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { + namespace "com.example.mediationexample" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). diff --git a/samples/admob/mediation_example/android/build.gradle b/samples/admob/mediation_example/android/build.gradle index 31ae933da..8f7e4949b 100644 --- a/samples/admob/mediation_example/android/build.gradle +++ b/samples/admob/mediation_example/android/build.gradle @@ -23,6 +23,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { - delete rootProject.buildDir +tasks.register("clean", Delete) { + delete rootProject.layout.buildDirectory } diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index e61c177c8..36496f641 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -23,7 +23,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 # The following adds the Cupertino Icons font to your application. diff --git a/samples/admob/native_platform_example/android/app/build.gradle b/samples/admob/native_platform_example/android/app/build.gradle index 8d4aba91a..fc7d924c9 100644 --- a/samples/admob/native_platform_example/android/app/build.gradle +++ b/samples/admob/native_platform_example/android/app/build.gradle @@ -26,8 +26,9 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { + namespace = "com.example.native_platform_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index 5d2569840..8bfb3bf31 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/native_template_example/android/app/build.gradle b/samples/admob/native_template_example/android/app/build.gradle index 20372d9ef..ca85deb43 100644 --- a/samples/admob/native_template_example/android/app/build.gradle +++ b/samples/admob/native_template_example/android/app/build.gradle @@ -26,8 +26,9 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { + namespace = "com.example.native_template_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index 7c913abc8..b870c7a04 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/rewarded_example/android/app/build.gradle b/samples/admob/rewarded_example/android/app/build.gradle index 0c60e66c5..45ddec980 100644 --- a/samples/admob/rewarded_example/android/app/build.gradle +++ b/samples/admob/rewarded_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.rewarded_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/rewarded_example/pubspec.yaml b/samples/admob/rewarded_example/pubspec.yaml index 841f224ee..c17551f6c 100644 --- a/samples/admob/rewarded_example/pubspec.yaml +++ b/samples/admob/rewarded_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 dev_dependencies: flutter_test: diff --git a/samples/admob/rewarded_interstitial_example/android/app/build.gradle b/samples/admob/rewarded_interstitial_example/android/app/build.gradle index fd140ab5a..793b1d4c8 100644 --- a/samples/admob/rewarded_interstitial_example/android/app/build.gradle +++ b/samples/admob/rewarded_interstitial_example/android/app/build.gradle @@ -25,7 +25,7 @@ if (flutterVersionName == null) { android { namespace "com.example.rewarded_interstitial_example" compileSdkVersion flutter.compileSdkVersion - ndkVersion = "26.1.10909125" + ndkVersion = flutter.ndkVersion compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/samples/admob/rewarded_interstitial_example/pubspec.yaml b/samples/admob/rewarded_interstitial_example/pubspec.yaml index 7980a8743..4089266b2 100644 --- a/samples/admob/rewarded_interstitial_example/pubspec.yaml +++ b/samples/admob/rewarded_interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.0 dev_dependencies: flutter_test: From adcdc9b8b147a5c42128016b674a87dbd1b72843 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Fri, 24 Jan 2025 12:37:36 -0800 Subject: [PATCH 044/318] Rollback to dart's Color int attributes to avoid building issues (#1238) * Returning to previous Color attributes to avoid low bound issues * Version bumped for patch release * Downgraded some dependencies to make it compatible with older versions of dart SDK --- packages/google_mobile_ads/CHANGELOG.md | 3 +++ .../io/flutter/plugins/googlemobileads/Constants.java | 2 +- packages/google_mobile_ads/ios/Classes/FLTConstants.h | 2 +- .../google_mobile_ads/ios/google_mobile_ads.podspec | 2 +- .../lib/src/ad_instance_manager.dart | 11 +++++++---- packages/google_mobile_ads/pubspec.yaml | 6 +++--- 6 files changed, 16 insertions(+), 10 deletions(-) diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index e731520dd..33d804a21 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,3 +1,6 @@ +## 5.3.1 +* Fixes dart SDK low bound building issues: https://github.com/googleads/googleads-mobile-flutter/issues/1234 + ## 5.3.0 * Updated WebView Flutter Android dependency * Adds support for the new Debug Geography enums for the UMP SDK: diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java index ad00cd928..a5291559e 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java @@ -17,7 +17,7 @@ /** Constants used in the plugin. */ public class Constants { /** Version request agent. Should be bumped alongside plugin versions. */ - public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.3.0"; + public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.3.1"; /** Prefix for news template */ public static final String REQUEST_AGENT_NEWS_TEMPLATE_PREFIX = "News"; diff --git a/packages/google_mobile_ads/ios/Classes/FLTConstants.h b/packages/google_mobile_ads/ios/Classes/FLTConstants.h index 8de05d5d4..190303de6 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTConstants.h +++ b/packages/google_mobile_ads/ios/Classes/FLTConstants.h @@ -13,4 +13,4 @@ // limitations under the License. /** Versioned request agent string. */ -#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.3.0" +#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.3.1" diff --git a/packages/google_mobile_ads/ios/google_mobile_ads.podspec b/packages/google_mobile_ads/ios/google_mobile_ads.podspec index ccc2d2a61..892c77384 100644 --- a/packages/google_mobile_ads/ios/google_mobile_ads.podspec +++ b/packages/google_mobile_ads/ios/google_mobile_ads.podspec @@ -3,7 +3,7 @@ # Pod::Spec.new do |s| s.name = 'google_mobile_ads' - s.version = '5.3.0' + s.version = '5.3.1' s.summary = 'Google Mobile Ads plugin for Flutter.' s.description = <<-DESC Google Mobile Ads plugin for Flutter. diff --git a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart index c285ab126..f908b2c2e 100644 --- a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart +++ b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart @@ -16,6 +16,8 @@ // ignore_for_file: deprecated_member_use_from_same_package +// ignore_for_file: deprecated_member_use + import 'dart:async'; import 'dart:collection'; import 'dart:io'; @@ -989,10 +991,11 @@ class AdMessageCodec extends StandardMessageCodec { writeValue(buffer, value.size); } else if (value is Color) { buffer.putUint8(_valueColor); - writeValue(buffer, (value.a * 255).toInt()); - writeValue(buffer, (value.r * 255).toInt()); - writeValue(buffer, (value.g * 255).toInt()); - writeValue(buffer, (value.b * 255).toInt()); + // Color values to be updated to non-deprecated attributes in next major release + writeValue(buffer, value.alpha); + writeValue(buffer, value.red); + writeValue(buffer, value.green); + writeValue(buffer, value.blue); } else if (value is NativeTemplateFontStyle) { buffer.putUint8(_valueNativeTemplateFontStyle); writeValue(buffer, value.index); diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index 4542aef08..30de4a81c 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -13,7 +13,7 @@ # limitations under the License. name: google_mobile_ads -version: 5.3.0 +version: 5.3.1 description: Flutter plugin for Google Mobile Ads, supporting banner, interstitial (full-screen), rewarded and native ads repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/google_mobile_ads @@ -40,8 +40,8 @@ dev_dependencies: # e2e: ^0.7.0 flutter_driver: sdk: flutter - mockito: ^5.4.5 - build_runner: ^2.4.14 + mockito: ^5.4.4 + build_runner: ^2.4.13 flutter_test: sdk: flutter webview_flutter_platform_interface: ^2.10.0 From 8ee89c41e940352b2f921ec0d63e82db20a66e87 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 21 Jan 2025 15:28:51 -0800 Subject: [PATCH 045/318] Created Line Flutter Mediation Adapter PiperOrigin-RevId: 718095456 --- .../mediation/gma_mediation_line/CHANGELOG.md | 8 + packages/mediation/gma_mediation_line/LICENSE | 202 ++++++ .../mediation/gma_mediation_line/README.md | 31 + .../gma_mediation_line/analysis_options.yaml | 19 + .../gma_mediation_line/android/build.gradle | 69 ++ .../android/gma_mediation_line_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationLinePlugin.kt | 24 + .../LineFlutterMediationExtras.kt | 54 ++ .../gma_mediation_line/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle | 44 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle | 18 + .../gma_mediation_line_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../example/android/settings.gradle | 25 + .../example/gma_mediation_line_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../gma_mediation_line/example/lib/main.dart | 29 + .../gma_mediation_line/example/pubspec.lock | 323 +++++++++ .../gma_mediation_line/example/pubspec.yaml | 85 +++ .../gma_mediation_line/gma_mediation_line.iml | 17 + .../ios/Classes/GmaMediationLinePlugin.swift | 23 + .../Classes/LineFlutterMediationExtras.swift | 36 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_line.podspec | 21 + .../lib/gma_mediation_line.dart | 16 + .../lib/line_mediation_extras.dart | 38 ++ .../mediation/gma_mediation_line/pubspec.lock | 261 ++++++++ .../mediation/gma_mediation_line/pubspec.yaml | 26 + 80 files changed, 2697 insertions(+) create mode 100644 packages/mediation/gma_mediation_line/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_line/LICENSE create mode 100644 packages/mediation/gma_mediation_line/README.md create mode 100644 packages/mediation/gma_mediation_line/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_line/android/build.gradle create mode 100644 packages/mediation/gma_mediation_line/android/gma_mediation_line_android.iml create mode 100644 packages/mediation/gma_mediation_line/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_line/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/GmaMediationLinePlugin.kt create mode 100644 packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/LineFlutterMediationExtras.kt create mode 100644 packages/mediation/gma_mediation_line/example/README.md create mode 100644 packages/mediation/gma_mediation_line/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/build.gradle create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_line/example/android/build.gradle create mode 100644 packages/mediation/gma_mediation_line/example/android/gma_mediation_line_example_android.iml create mode 100644 packages/mediation/gma_mediation_line/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_line/example/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_line/example/gma_mediation_line_example.iml create mode 100644 packages/mediation/gma_mediation_line/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_line/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_line/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_line/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_line/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_line/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_line/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_line/gma_mediation_line.iml create mode 100644 packages/mediation/gma_mediation_line/ios/Classes/GmaMediationLinePlugin.swift create mode 100644 packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift create mode 100644 packages/mediation/gma_mediation_line/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec create mode 100644 packages/mediation/gma_mediation_line/lib/gma_mediation_line.dart create mode 100644 packages/mediation/gma_mediation_line/lib/line_mediation_extras.dart create mode 100644 packages/mediation/gma_mediation_line/pubspec.lock create mode 100644 packages/mediation/gma_mediation_line/pubspec.yaml diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md new file mode 100644 index 000000000..50b108c64 --- /dev/null +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -0,0 +1,8 @@ +## Line Flutter Mediation Adapter Changelog + +#### 1.0.0 + +* Initial release. +* Verified compatibility with Line Android adapter version 2.9.20241129.0 +* Verified compatibility with Line iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_line/LICENSE b/packages/mediation/gma_mediation_line/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_line/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_line/README.md b/packages/mediation/gma_mediation_line/README.md new file mode 100644 index 000000000..3d2e9f568 --- /dev/null +++ b/packages/mediation/gma_mediation_line/README.md @@ -0,0 +1,31 @@ +# Google Mobile Ads Mediation of Line for Flutter + +[![gma_mediation_line](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation Line Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +Line Ad Network through the Google Mobile Ads SDK. + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [Line](https://developers.google.com/admob/flutter/mediation/line). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_line/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_line/analysis_options.yaml b/packages/mediation/gma_mediation_line/analysis_options.yaml new file mode 100644 index 000000000..fac4bcd12 --- /dev/null +++ b/packages/mediation/gma_mediation_line/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle new file mode 100644 index 000000000..55f04f3e5 --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -0,0 +1,69 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" +version = "1.0-SNAPSHOT" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.1.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + if (project.android.hasProperty("namespace")) { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" + } + + compileSdk = 34 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:line:2.9.20241129.0") + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_line/android/gma_mediation_line_android.iml b/packages/mediation/gma_mediation_line/android/gma_mediation_line_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/gma_mediation_line_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/android/settings.gradle b/packages/mediation/gma_mediation_line/android/settings.gradle new file mode 100644 index 000000000..64f251ecd --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_line' diff --git a/packages/mediation/gma_mediation_line/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_line/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..351e7d53d --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/GmaMediationLinePlugin.kt b/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/GmaMediationLinePlugin.kt new file mode 100644 index 000000000..af2be82b8 --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/GmaMediationLinePlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_line + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the Line Adapter. */ +class GmaMediationLinePlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/LineFlutterMediationExtras.kt b/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/LineFlutterMediationExtras.kt new file mode 100644 index 000000000..22d3d269f --- /dev/null +++ b/packages/mediation/gma_mediation_line/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line/LineFlutterMediationExtras.kt @@ -0,0 +1,54 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_line + +import android.os.Bundle +import android.util.Pair +import androidx.core.os.bundleOf +import com.google.ads.mediation.line.LineExtras +import com.google.ads.mediation.line.LineMediationAdapter +import com.google.android.gms.ads.mediation.MediationExtrasReceiver +import io.flutter.plugins.googlemobileads.FlutterMediationExtras + +class LineFlutterMediationExtras : FlutterMediationExtras() { + private var flutterExtras: Map? = null + + override fun setMediationExtras(extras: MutableMap) { + flutterExtras = extras + } + + override fun getMediationExtras(): Pair, Bundle> { + val extrasMap = flutterExtras + if (extrasMap == null) { + return Pair, Bundle>( + LineMediationAdapter::class.java, + bundleOf(), + ) + } + var extrasBundle = bundleOf() + val isSoundEnabled = extrasMap[ENABLE_AD_SOUND] + if (isSoundEnabled is Boolean) { + extrasBundle = LineExtras(isSoundEnabled).build() + } + return Pair, Bundle>( + LineMediationAdapter::class.java, + extrasBundle, + ) + } + + private companion object { + const val ENABLE_AD_SOUND = "enableAdSound" + } +} diff --git a/packages/mediation/gma_mediation_line/example/README.md b/packages/mediation/gma_mediation_line/example/README.md new file mode 100644 index 000000000..d0382fd2f --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_line_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/line). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_line/example/analysis_options.yaml b/packages/mediation/gma_mediation_line/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_line/example/android/app/build.gradle b/packages/mediation/gma_mediation_line/example/android/app/build.gradle new file mode 100644 index 000000000..8d12793be --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/build.gradle @@ -0,0 +1,44 @@ +plugins { + id "com.android.application" + id "kotlin-android" + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id "dev.flutter.flutter-gradle-plugin" +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.debug + } + } +} + +flutter { + source = "../.." +} diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_line/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_line/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..0067df05f --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line_example/MainActivity.kt b/packages/mediation/gma_mediation_line/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line_example/MainActivity.kt new file mode 100644 index 000000000..11b9da886 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_line_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_line_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_line/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/build.gradle b/packages/mediation/gma_mediation_line/example/android/build.gradle new file mode 100644 index 000000000..d2ffbffa4 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/build.gradle @@ -0,0 +1,18 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = "../build" +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/packages/mediation/gma_mediation_line/example/android/gma_mediation_line_example_android.iml b/packages/mediation/gma_mediation_line/example/android/gma_mediation_line_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/gma_mediation_line_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/android/gradle.properties b/packages/mediation/gma_mediation_line/example/android/gradle.properties new file mode 100644 index 000000000..259717082 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_line/example/android/settings.gradle b/packages/mediation/gma_mediation_line/example/android/settings.gradle new file mode 100644 index 000000000..b9e43bd37 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/android/settings.gradle @@ -0,0 +1,25 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.1.0" apply false + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/packages/mediation/gma_mediation_line/example/gma_mediation_line_example.iml b/packages/mediation/gma_mediation_line/example/gma_mediation_line_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/gma_mediation_line_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_line/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_line/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_line/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_line/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..26c02e461 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationLineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..8e3ca5dfe --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_line/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_line/example/ios/Runner/Info.plist new file mode 100644 index 000000000..183ffb7ae --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Line + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_line_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_line/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_line/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_line/example/lib/main.dart b/packages/mediation/gma_mediation_line/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_line/example/pubspec.lock b/packages/mediation/gma_mediation_line/example/pubspec.lock new file mode 100644 index 000000000..f6195694b --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + file: + dependency: transitive + description: + name: file + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_line: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "4775006383a27a5d86d46f8fb452bfcb17794fc0a46c732979e49a8eb1c8963f" + url: "https://pub.dev" + source: hosted + version: "5.2.0" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + platform: + dependency: transitive + description: + name: platform + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" + url: "https://pub.dev" + source: hosted + version: "3.1.5" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "21e54fd2faf1b5bdd5102afd25012184a6793927648ea81eea80552ac9405b32" + url: "https://pub.dev" + source: hosted + version: "5.0.2" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "003d7da9519e1e5f329422b36c4dcdf18d7d2978d1ba099ea4e45ba490ed845e" + url: "https://pub.dev" + source: hosted + version: "3.0.3" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: ec81f57aa1611f8ebecf1d2259da4ef052281cb5ad624131c93546c79ccc7736 + url: "https://pub.dev" + source: hosted + version: "4.9.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "47a8da40d02befda5b151a26dba71f47df471cddd91dfdb7802d0a87c5442558" + url: "https://pub.dev" + source: hosted + version: "3.16.9" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: b7e92f129482460951d96ef9a46b49db34bd2e1621685de26e9eaafd9674e7eb + url: "https://pub.dev" + source: hosted + version: "3.16.3" +sdks: + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_line/example/pubspec.yaml b/packages/mediation/gma_mediation_line/example/pubspec.yaml new file mode 100644 index 000000000..e7150e7aa --- /dev/null +++ b/packages/mediation/gma_mediation_line/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_line_example +description: "Demonstrates how to use the gma_mediation_line plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.5.4 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_line: + # When depending on this package from a real application you should use: + # gma_mediation_line: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^4.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_line/gma_mediation_line.iml b/packages/mediation/gma_mediation_line/gma_mediation_line.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_line/gma_mediation_line.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_line/ios/Classes/GmaMediationLinePlugin.swift b/packages/mediation/gma_mediation_line/ios/Classes/GmaMediationLinePlugin.swift new file mode 100644 index 000000000..095a51536 --- /dev/null +++ b/packages/mediation/gma_mediation_line/ios/Classes/GmaMediationLinePlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the Line Adapter. +public class GmaMediationLinePlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift b/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift new file mode 100644 index 000000000..32d39b399 --- /dev/null +++ b/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift @@ -0,0 +1,36 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Foundation +import LineAdapter + +@objc protocol FLTMediationExtras { + var extras: NSMutableDictionary { get } + func getMediationExtras() -> GADAdNetworkExtras +} + +@objc(GADFLineFlutterMediationExtras) +class LineFlutterMediationExtras: NSObject, FLTMediationExtras { + var extras: NSMutableDictionary = [:] + + func getMediationExtras() -> GADAdNetworkExtras { + let lineExtras = GADMediationAdapterLineExtras() + if let enableAdSound = extras["enableAdSound"] as? Bool { + lineExtras.adAudio = + enableAdSound + ? GADMediationAdapterLineAdAudio.unmuted : GADMediationAdapterLineAdAudio.muted + } + return lineExtras + } +} diff --git a/packages/mediation/gma_mediation_line/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_line/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_line/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec new file mode 100644 index 000000000..55e77a26d --- /dev/null +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_line' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of Line.' + s.description = <<-DESC + Mediation Adapter for Line to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/line' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20241106.1' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_line/lib/gma_mediation_line.dart b/packages/mediation/gma_mediation_line/lib/gma_mediation_line.dart new file mode 100644 index 000000000..d69e09cac --- /dev/null +++ b/packages/mediation/gma_mediation_line/lib/gma_mediation_line.dart @@ -0,0 +1,16 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationLine {} diff --git a/packages/mediation/gma_mediation_line/lib/line_mediation_extras.dart b/packages/mediation/gma_mediation_line/lib/line_mediation_extras.dart new file mode 100644 index 000000000..f736478d1 --- /dev/null +++ b/packages/mediation/gma_mediation_line/lib/line_mediation_extras.dart @@ -0,0 +1,38 @@ +// Copyright 2024 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Extra information sent to the Line adapter through an [AdRequest] or an [AdManagerAdRequest]. +class LineMediationExtras implements MediationExtras { + /// Default constructor with required extras value. + const LineMediationExtras({required this.enableAdSound}); + + final bool enableAdSound; + + @override + String getAndroidClassName() { + return 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_line.LineFlutterMediationExtras'; + } + + @override + String getIOSClassName() { + return 'LineFlutterMediationExtras'; + } + + @override + Map getExtras() { + return {'enableAdSound': enableAdSound}; + } +} diff --git a/packages/mediation/gma_mediation_line/pubspec.lock b/packages/mediation/gma_mediation_line/pubspec.lock new file mode 100644 index 000000000..e2bf2f601 --- /dev/null +++ b/packages/mediation/gma_mediation_line/pubspec.lock @@ -0,0 +1,261 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "4775006383a27a5d86d46f8fb452bfcb17794fc0a46c732979e49a8eb1c8963f" + url: "https://pub.dev" + source: hosted + version: "5.2.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: d758a5211fce7fd3f5e316f804daefecdc34c7e53559716125e6da7388ae8565 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: ec81f57aa1611f8ebecf1d2259da4ef052281cb5ad624131c93546c79ccc7736 + url: "https://pub.dev" + source: hosted + version: "4.9.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "47a8da40d02befda5b151a26dba71f47df471cddd91dfdb7802d0a87c5442558" + url: "https://pub.dev" + source: hosted + version: "3.16.9" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: b7e92f129482460951d96ef9a46b49db34bd2e1621685de26e9eaafd9674e7eb + url: "https://pub.dev" + source: hosted + version: "3.16.3" +sdks: + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml new file mode 100644 index 000000000..9da8e2e2c --- /dev/null +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -0,0 +1,26 @@ +name: gma_mediation_line +description: 'Mediation Adapter that enables sending ad requests to the Line + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.5.4 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.2.0 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^4.0.0 + lint: ^2.3.0 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_line + pluginClass: GmaMediationLinePlugin + ios: + pluginClass: GmaMediationLinePlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_line From 21463bfb2bc2c703dda833be3a5f66d578017aa5 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 21 Jan 2025 15:38:47 -0800 Subject: [PATCH 046/318] - Version Bumped the AppLovin Flutter plugin and removed APIs that are not longer supported. PiperOrigin-RevId: 718098871 --- .../android/build.gradle | 6 +- .../AppLovinSDKApi.g.kt | 134 ++++++++--------- .../GmaMediationApplovinPlugin.kt | 15 +- .../GmaMediationApplovinPluginTest.kt | 58 +------- .../GmaMediationApplovinPluginTests.swift | 28 ---- .../example/test/widget_test.dart | 27 ---- .../ios/Classes/AppLovinSDKApi.g.swift | 101 +++++++------ .../Classes/GmaMediationApplovinPlugin.swift | 30 +--- .../ios/gma_mediation_applovin.podspec | 4 +- .../lib/applovin_sdk_api.g.dart | 138 +++++++----------- .../lib/gma_mediation_applovin.dart | 8 - .../pigeons/applovin_privacy_api.dart | 6 - .../gma_mediation_applovin/pubspec.yaml | 10 +- 13 files changed, 199 insertions(+), 366 deletions(-) delete mode 100644 packages/mediation/gma_mediation_applovin/example/test/widget_test.dart diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 1a94c641e..142634901 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -50,9 +50,9 @@ android { } dependencies { - implementation 'com.applovin:applovin-sdk:12.6.1' - implementation 'com.google.ads.mediation:applovin:12.6.1.0' - implementation 'com.google.android.gms:play-services-ads:23.3.0' + implementation 'com.applovin:applovin-sdk:13.0.1' + implementation 'com.google.ads.mediation:applovin:13.0.1.0' + implementation 'com.google.android.gms:play-services-ads:23.6.0' implementation 'androidx.core:core-ktx:1.8.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' diff --git a/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/AppLovinSDKApi.g.kt b/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/AppLovinSDKApi.g.kt index 2cfb75971..638e9197f 100644 --- a/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/AppLovinSDKApi.g.kt +++ b/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/AppLovinSDKApi.g.kt @@ -1,5 +1,6 @@ -// Autogenerated from Pigeon (v17.1.2), do not edit directly. +// Autogenerated from Pigeon (v22.7.2), do not edit directly. // See also: https://pub.dev/packages/pigeon +@file:Suppress("UNCHECKED_CAST", "ArrayInDataClass") package io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin @@ -16,68 +17,84 @@ private fun wrapResult(result: Any?): List { } private fun wrapError(exception: Throwable): List { - if (exception is FlutterError) { - return listOf( - exception.code, - exception.message, - exception.details - ) + return if (exception is FlutterError) { + listOf(exception.code, exception.message, exception.details) } else { - return listOf( + listOf( exception.javaClass.simpleName, exception.toString(), - "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception) + "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception), ) } } /** * Error class for passing custom error details to Flutter via a thrown PlatformException. + * * @property code The error code. * @property message The error message. * @property details The error details. Must be a datatype supported by the api codec. */ -class FlutterError ( +class FlutterError( val code: String, override val message: String? = null, - val details: Any? = null + val details: Any? = null, ) : Throwable() + +private open class AppLovinSDKApiPigeonCodec : StandardMessageCodec() { + override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? { + return super.readValueOfType(type, buffer) + } + + override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { + super.writeValue(stream, value) + } +} + /** - * The generated classes set the channels to call the methods in the corresponding kotlin AppLovinSDKApi interface and swift AppLovinSDKApi protocol from the dart layer. + * The generated classes set the channels to call the methods in the corresponding kotlin + * AppLovinSDKApi interface and swift AppLovinSDKApi protocol from the dart layer. * * Generated interface from Pigeon that represents a handler of messages from Flutter. */ interface AppLovinSDKApi { /** Used to configure GDPR consent on the Android or iOS AppLovin SDK */ fun setHasUserConsent(hasUserConsent: Boolean) - /** Used to acknowledge that the user is in an age-restricted category on the Android or iOS AppLovin SDK */ - fun setIsAgeRestrictedUser(isAgeRestrictedUser: Boolean) + /** Used to opt out of the sale of personal information in AppLovin SDK. */ fun setDoNotSell(doNotSell: Boolean) - /** Used to initialize the Android or iOS AppLovin SDK. Can be called anytime before the adapter initialization to let AppLovin track events as soon as possible. */ - fun initializeSdk(sdkKey: String) companion object { /** The codec used by AppLovinSDKApi. */ - val codec: MessageCodec by lazy { - StandardMessageCodec() - } + val codec: MessageCodec by lazy { AppLovinSDKApiPigeonCodec() } + /** Sets up an instance of `AppLovinSDKApi` to handle messages through the `binaryMessenger`. */ - @Suppress("UNCHECKED_CAST") - fun setUp(binaryMessenger: BinaryMessenger, api: AppLovinSDKApi?) { + @JvmOverloads + fun setUp( + binaryMessenger: BinaryMessenger, + api: AppLovinSDKApi?, + messageChannelSuffix: String = "", + ) { + val separatedMessageChannelSuffix = + if (messageChannelSuffix.isNotEmpty()) ".$messageChannelSuffix" else "" run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent$separatedMessageChannelSuffix", + codec, + ) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val hasUserConsentArg = args[0] as Boolean - var wrapped: List - try { - api.setHasUserConsent(hasUserConsentArg) - wrapped = listOf(null) - } catch (exception: Throwable) { - wrapped = wrapError(exception) - } + val wrapped: List = + try { + api.setHasUserConsent(hasUserConsentArg) + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } reply.reply(wrapped) } } else { @@ -85,56 +102,23 @@ interface AppLovinSDKApi { } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setIsAgeRestrictedUser", codec) - if (api != null) { - channel.setMessageHandler { message, reply -> - val args = message as List - val isAgeRestrictedUserArg = args[0] as Boolean - var wrapped: List - try { - api.setIsAgeRestrictedUser(isAgeRestrictedUserArg) - wrapped = listOf(null) - } catch (exception: Throwable) { - wrapped = wrapError(exception) - } - reply.reply(wrapped) - } - } else { - channel.setMessageHandler(null) - } - } - run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell$separatedMessageChannelSuffix", + codec, + ) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val doNotSellArg = args[0] as Boolean - var wrapped: List - try { - api.setDoNotSell(doNotSellArg) - wrapped = listOf(null) - } catch (exception: Throwable) { - wrapped = wrapError(exception) - } - reply.reply(wrapped) - } - } else { - channel.setMessageHandler(null) - } - } - run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.initializeSdk", codec) - if (api != null) { - channel.setMessageHandler { message, reply -> - val args = message as List - val sdkKeyArg = args[0] as String - var wrapped: List - try { - api.initializeSdk(sdkKeyArg) - wrapped = listOf(null) - } catch (exception: Throwable) { - wrapped = wrapError(exception) - } + val wrapped: List = + try { + api.setDoNotSell(doNotSellArg) + listOf(null) + } catch (exception: Throwable) { + wrapError(exception) + } reply.reply(wrapped) } } else { diff --git a/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPlugin.kt b/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPlugin.kt index 754e5f80d..c7b3701ff 100644 --- a/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPlugin.kt +++ b/packages/mediation/gma_mediation_applovin/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPlugin.kt @@ -16,13 +16,12 @@ package io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin import android.content.Context import com.applovin.sdk.AppLovinPrivacySettings -import com.applovin.sdk.AppLovinSdk import io.flutter.embedding.engine.plugins.FlutterPlugin import io.flutter.embedding.engine.plugins.activity.ActivityAware import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding -/** Links the Android dependency of the AppLovin Adapter and calls the AppLovin SDK APIs. */ -class GmaMediationApplovinPlugin: FlutterPlugin, ActivityAware, AppLovinSDKApi { +/** Links the Android dependency of the AppLovin Adapter and calls the AppLovin SDK APIs. */ +class GmaMediationApplovinPlugin : FlutterPlugin, ActivityAware, AppLovinSDKApi { private lateinit var context: Context override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { @@ -34,22 +33,14 @@ class GmaMediationApplovinPlugin: FlutterPlugin, ActivityAware, AppLovinSDKApi { AppLovinSDKApi.setUp(binding.binaryMessenger, null) } - override fun setHasUserConsent(hasUserConsent: Boolean){ + override fun setHasUserConsent(hasUserConsent: Boolean) { AppLovinPrivacySettings.setHasUserConsent(hasUserConsent, context) } - override fun setIsAgeRestrictedUser(isAgeRestrictedUser: Boolean){ - AppLovinPrivacySettings.setIsAgeRestrictedUser(isAgeRestrictedUser, context) - } - override fun setDoNotSell(doNotSell: Boolean) { AppLovinPrivacySettings.setDoNotSell(doNotSell, context) } - override fun initializeSdk(sdkKey: String) { - AppLovinSdk.getInstance(sdkKey, null, context).initializeSdk() - } - override fun onDetachedFromActivity() {} override fun onReattachedToActivityForConfigChanges(binding: ActivityPluginBinding) {} diff --git a/packages/mediation/gma_mediation_applovin/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPluginTest.kt b/packages/mediation/gma_mediation_applovin/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPluginTest.kt index a07061ed5..6a91d9d9b 100644 --- a/packages/mediation/gma_mediation_applovin/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPluginTest.kt +++ b/packages/mediation/gma_mediation_applovin/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_applovin/GmaMediationApplovinPluginTest.kt @@ -18,28 +18,25 @@ import android.content.Context import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.applovin.sdk.AppLovinPrivacySettings -import com.applovin.sdk.AppLovinSdk -import com.applovin.sdk.AppLovinSdk.getInstance import io.flutter.embedding.engine.plugins.FlutterPlugin import io.flutter.plugin.common.BinaryMessenger import org.junit.Test import org.junit.runner.RunWith import org.mockito.Mockito.mockStatic -import org.mockito.kotlin.any import org.mockito.kotlin.doReturn import org.mockito.kotlin.eq import org.mockito.kotlin.mock import org.mockito.kotlin.verify -import org.mockito.kotlin.whenever @RunWith(AndroidJUnit4::class) internal class GmaMediationApplovinPluginTest { private val context = ApplicationProvider.getApplicationContext() private val mockBinaryMessenger = mock() - private val mockFlutterPluginBinding = mock { - on { applicationContext } doReturn context - on { binaryMessenger } doReturn mockBinaryMessenger - } + private val mockFlutterPluginBinding = + mock { + on { applicationContext } doReturn context + on { binaryMessenger } doReturn mockBinaryMessenger + } @Test fun setHasUserConsent_withTrueValue_invokesSetHasUserConsent() { @@ -50,27 +47,7 @@ internal class GmaMediationApplovinPluginTest { plugin.setHasUserConsent(true) mockedAppLovinPrivacySettings.verify { - AppLovinPrivacySettings.setHasUserConsent( - eq(true), - eq(context) - ) - } - } - } - - @Test - fun setIsAgeRestrictedUser_withTrueValue_invokesSetIsAgeRestrictedUser() { - val plugin = GmaMediationApplovinPlugin() - mockStatic(AppLovinPrivacySettings::class.java).use { mockedAppLovinPrivacySettings -> - plugin.onAttachedToEngine(mockFlutterPluginBinding) - - plugin.setIsAgeRestrictedUser(true) - - mockedAppLovinPrivacySettings.verify { - AppLovinPrivacySettings.setIsAgeRestrictedUser( - eq(true), - eq(context) - ) + AppLovinPrivacySettings.setHasUserConsent(eq(true), eq(context)) } } } @@ -84,29 +61,8 @@ internal class GmaMediationApplovinPluginTest { plugin.setDoNotSell(true) mockedAppLovinPrivacySettings.verify { - AppLovinPrivacySettings.setDoNotSell( - eq(true), - eq(context) - ) + AppLovinPrivacySettings.setDoNotSell(eq(true), eq(context)) } } } - - @Test - fun initializeSdk_invokesinitializeSdk() { - val plugin = GmaMediationApplovinPlugin() - val mockAppLovinSdkInstance = mock() - mockStatic(AppLovinSdk::class.java).use { - plugin.onAttachedToEngine(mockFlutterPluginBinding) - whenever(getInstance(eq(TEST_SDK_KEY), eq(null), eq(context))) doReturn mockAppLovinSdkInstance - - plugin.initializeSdk(TEST_SDK_KEY) - - verify(mockAppLovinSdkInstance).initializeSdk() - } - } - - companion object { - private const val TEST_SDK_KEY = "TEST_SDK_KEY" - } } diff --git a/packages/mediation/gma_mediation_applovin/example/ios/RunnerTests/GmaMediationApplovinPluginTests.swift b/packages/mediation/gma_mediation_applovin/example/ios/RunnerTests/GmaMediationApplovinPluginTests.swift index 48567e6ec..67220d982 100644 --- a/packages/mediation/gma_mediation_applovin/example/ios/RunnerTests/GmaMediationApplovinPluginTests.swift +++ b/packages/mediation/gma_mediation_applovin/example/ios/RunnerTests/GmaMediationApplovinPluginTests.swift @@ -27,14 +27,6 @@ class GmaMediationApplovinPluginTests: XCTestCase { XCTAssertEqual(appLovinSdkFake.hasUserConsent, true) } - func testSetIsAgeRestrictedUser() { - let appLovinSdkFake = ALSdkFake() - - GmaMediationApplovinPlugin(applovinSdk: appLovinSdkFake).setIsAgeRestrictedUser(isAgeRestrictedUser: true) - - XCTAssertEqual(appLovinSdkFake.isAgeRestrictedUser, true) - } - func testSetDoNotSell() { let appLovinSdkFake = ALSdkFake() @@ -42,42 +34,22 @@ class GmaMediationApplovinPluginTests: XCTestCase { XCTAssertEqual(appLovinSdkFake.doNotSell, true) } - - func testInitializeSdk() { - let appLovinSdkFake = ALSdkFake() - - GmaMediationApplovinPlugin(applovinSdk: appLovinSdkFake).initializeSdk(sdkKey: "testKey") - - XCTAssertEqual(appLovinSdkFake.initializeSdkCalls, 1) - } } class ALSdkFake: ALSdkProtocol { var hasUserConsent: Bool - var isAgeRestrictedUser: Bool var doNotSell: Bool - var initializeSdkCalls: Int init() { hasUserConsent = false - isAgeRestrictedUser = false doNotSell = false - initializeSdkCalls = 0 } func setHasUserConsent(hasUserConsent: Bool) { self.hasUserConsent = hasUserConsent } - func setIsAgeRestrictedUser(isAgeRestrictedUser: Bool) { - self.isAgeRestrictedUser = isAgeRestrictedUser - } - func setDoNotSell(doNotSell: Bool) { self.doNotSell = doNotSell } - - func initializeSdk(sdkKey: String) { - initializeSdkCalls += 1 - } } diff --git a/packages/mediation/gma_mediation_applovin/example/test/widget_test.dart b/packages/mediation/gma_mediation_applovin/example/test/widget_test.dart deleted file mode 100644 index d3e8f69d3..000000000 --- a/packages/mediation/gma_mediation_applovin/example/test/widget_test.dart +++ /dev/null @@ -1,27 +0,0 @@ -// This is a basic Flutter widget test. -// -// To perform an interaction with a widget in your test, use the WidgetTester -// utility in the flutter_test package. For example, you can send tap and scroll -// gestures. You can also use WidgetTester to find child widgets in the widget -// tree, read text, and verify that the values of widget properties are correct. - -import 'package:flutter/material.dart'; -import 'package:flutter_test/flutter_test.dart'; - -import 'package:gma_mediation_applovin_example/main.dart'; - -void main() { - testWidgets('Verify Platform version', (WidgetTester tester) async { - // Build our app and trigger a frame. - await tester.pumpWidget(const MyApp()); - - // Verify that platform version is retrieved. - expect( - find.byWidgetPredicate( - (Widget widget) => - widget is Text && widget.data!.startsWith('Running on:'), - ), - findsOneWidget, - ); - }); -} diff --git a/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinSDKApi.g.swift b/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinSDKApi.g.swift index 67c3c52d5..0b22db8ed 100644 --- a/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinSDKApi.g.swift +++ b/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinSDKApi.g.swift @@ -1,4 +1,4 @@ -// Autogenerated from Pigeon (v17.1.2), do not edit directly. +// Autogenerated from Pigeon (v22.7.2), do not edit directly. // See also: https://pub.dev/packages/pigeon import Foundation @@ -11,11 +11,36 @@ import Foundation #error("Unsupported platform.") #endif +/// Error class for passing custom error details to Dart side. +final class PigeonError: Error { + let code: String + let message: String? + let details: Any? + + init(code: String, message: String?, details: Any?) { + self.code = code + self.message = message + self.details = details + } + + var localizedDescription: String { + return + "PigeonError(code: \(code), message: \(message ?? ""), details: \(details ?? "")" + } +} + private func wrapResult(_ result: Any?) -> [Any?] { return [result] } private func wrapError(_ error: Any) -> [Any?] { + if let pigeonError = error as? PigeonError { + return [ + pigeonError.code, + pigeonError.message, + pigeonError.details, + ] + } if let flutterError = error as? FlutterError { return [ flutterError.code, @@ -38,27 +63,51 @@ private func nilOrValue(_ value: Any?) -> T? { if value is NSNull { return nil } return value as! T? } + +private class AppLovinSDKApiPigeonCodecReader: FlutterStandardReader { +} + +private class AppLovinSDKApiPigeonCodecWriter: FlutterStandardWriter { +} + +private class AppLovinSDKApiPigeonCodecReaderWriter: FlutterStandardReaderWriter { + override func reader(with data: Data) -> FlutterStandardReader { + return AppLovinSDKApiPigeonCodecReader(data: data) + } + + override func writer(with data: NSMutableData) -> FlutterStandardWriter { + return AppLovinSDKApiPigeonCodecWriter(data: data) + } +} + +class AppLovinSDKApiPigeonCodec: FlutterStandardMessageCodec, @unchecked Sendable { + static let shared = AppLovinSDKApiPigeonCodec( + readerWriter: AppLovinSDKApiPigeonCodecReaderWriter()) +} + /// The generated classes set the channels to call the methods in the corresponding kotlin AppLovinSDKApi interface and swift AppLovinSDKApi protocol from the dart layer. /// /// Generated protocol from Pigeon that represents a handler of messages from Flutter. protocol AppLovinSDKApi { /// Used to configure GDPR consent on the Android or iOS AppLovin SDK func setHasUserConsent(hasUserConsent: Bool) throws - /// Used to acknowledge that the user is in an age-restricted category on the Android or iOS AppLovin SDK - func setIsAgeRestrictedUser(isAgeRestrictedUser: Bool) throws /// Used to opt out of the sale of personal information in AppLovin SDK. func setDoNotSell(doNotSell: Bool) throws - /// Used to initialize the Android or iOS AppLovin SDK. Can be called anytime before the adapter initialization to let AppLovin track events as soon as possible. - func initializeSdk(sdkKey: String) throws } /// Generated setup class from Pigeon to handle messages through the `binaryMessenger`. class AppLovinSDKApiSetup { - /// The codec used by AppLovinSDKApi. + static var codec: FlutterStandardMessageCodec { AppLovinSDKApiPigeonCodec.shared } /// Sets up an instance of `AppLovinSDKApi` to handle messages through the `binaryMessenger`. - static func setUp(binaryMessenger: FlutterBinaryMessenger, api: AppLovinSDKApi?) { + static func setUp( + binaryMessenger: FlutterBinaryMessenger, api: AppLovinSDKApi?, messageChannelSuffix: String = "" + ) { + let channelSuffix = messageChannelSuffix.count > 0 ? ".\(messageChannelSuffix)" : "" /// Used to configure GDPR consent on the Android or iOS AppLovin SDK - let setHasUserConsentChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent", binaryMessenger: binaryMessenger) + let setHasUserConsentChannel = FlutterBasicMessageChannel( + name: + "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent\(channelSuffix)", + binaryMessenger: binaryMessenger, codec: codec) if let api = api { setHasUserConsentChannel.setMessageHandler { message, reply in let args = message as! [Any?] @@ -73,24 +122,10 @@ class AppLovinSDKApiSetup { } else { setHasUserConsentChannel.setMessageHandler(nil) } - /// Used to acknowledge that the user is in an age-restricted category on the Android or iOS AppLovin SDK - let setIsAgeRestrictedUserChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setIsAgeRestrictedUser", binaryMessenger: binaryMessenger) - if let api = api { - setIsAgeRestrictedUserChannel.setMessageHandler { message, reply in - let args = message as! [Any?] - let isAgeRestrictedUserArg = args[0] as! Bool - do { - try api.setIsAgeRestrictedUser(isAgeRestrictedUser: isAgeRestrictedUserArg) - reply(wrapResult(nil)) - } catch { - reply(wrapError(error)) - } - } - } else { - setIsAgeRestrictedUserChannel.setMessageHandler(nil) - } /// Used to opt out of the sale of personal information in AppLovin SDK. - let setDoNotSellChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell", binaryMessenger: binaryMessenger) + let setDoNotSellChannel = FlutterBasicMessageChannel( + name: "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell\(channelSuffix)", + binaryMessenger: binaryMessenger, codec: codec) if let api = api { setDoNotSellChannel.setMessageHandler { message, reply in let args = message as! [Any?] @@ -105,21 +140,5 @@ class AppLovinSDKApiSetup { } else { setDoNotSellChannel.setMessageHandler(nil) } - /// Used to initialize the Android or iOS AppLovin SDK. Can be called anytime before the adapter initialization to let AppLovin track events as soon as possible. - let initializeSdkChannel = FlutterBasicMessageChannel(name: "dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.initializeSdk", binaryMessenger: binaryMessenger) - if let api = api { - initializeSdkChannel.setMessageHandler { message, reply in - let args = message as! [Any?] - let sdkKeyArg = args[0] as! String - do { - try api.initializeSdk(sdkKey: sdkKeyArg) - reply(wrapResult(nil)) - } catch { - reply(wrapError(error)) - } - } - } else { - initializeSdkChannel.setMessageHandler(nil) - } } } diff --git a/packages/mediation/gma_mediation_applovin/ios/Classes/GmaMediationApplovinPlugin.swift b/packages/mediation/gma_mediation_applovin/ios/Classes/GmaMediationApplovinPlugin.swift index 288d480e0..53d5d99e8 100644 --- a/packages/mediation/gma_mediation_applovin/ios/Classes/GmaMediationApplovinPlugin.swift +++ b/packages/mediation/gma_mediation_applovin/ios/Classes/GmaMediationApplovinPlugin.swift @@ -20,59 +20,41 @@ import UIKit public class GmaMediationApplovinPlugin: NSObject, FlutterPlugin, AppLovinSDKApi { let applovinSdk: ALSdkProtocol - init (applovinSdk: ALSdkProtocol) { + init(applovinSdk: ALSdkProtocol) { self.applovinSdk = applovinSdk } public static func register(with registrar: FlutterPluginRegistrar) { - let messenger : FlutterBinaryMessenger = registrar.messenger() - let api : AppLovinSDKApi& NSObjectProtocol = GmaMediationApplovinPlugin.init(applovinSdk: ALSdkImpl()) + let messenger: FlutterBinaryMessenger = registrar.messenger() + let api: AppLovinSDKApi & NSObjectProtocol = GmaMediationApplovinPlugin.init( + applovinSdk: ALSdkImpl()) AppLovinSDKApiSetup.setUp(binaryMessenger: messenger, api: api) } public func detachFromEngine(for registrar: FlutterPluginRegistrar) { - let messenger : FlutterBinaryMessenger = registrar.messenger() + let messenger: FlutterBinaryMessenger = registrar.messenger() AppLovinSDKApiSetup.setUp(binaryMessenger: messenger, api: nil) } func setHasUserConsent(hasUserConsent: Bool) { applovinSdk.setHasUserConsent(hasUserConsent: hasUserConsent) } - func setIsAgeRestrictedUser(isAgeRestrictedUser: Bool) { - applovinSdk.setIsAgeRestrictedUser(isAgeRestrictedUser: isAgeRestrictedUser) - } func setDoNotSell(doNotSell: Bool) { applovinSdk.setDoNotSell(doNotSell: doNotSell) } - func initializeSdk(sdkKey: String) { - applovinSdk.initializeSdk(sdkKey: sdkKey) - } } protocol ALSdkProtocol { func setHasUserConsent(hasUserConsent: Bool) - func setIsAgeRestrictedUser(isAgeRestrictedUser: Bool) - func setDoNotSell(doNotSell: Bool) - - func initializeSdk(sdkKey: String) } -class ALSdkImpl : ALSdkProtocol { +class ALSdkImpl: ALSdkProtocol { func setHasUserConsent(hasUserConsent: Bool) { ALPrivacySettings.setHasUserConsent(hasUserConsent) } - func setIsAgeRestrictedUser(isAgeRestrictedUser: Bool) { - ALPrivacySettings.setIsAgeRestrictedUser(isAgeRestrictedUser) - } - func setDoNotSell(doNotSell: Bool) { ALPrivacySettings.setDoNotSell(doNotSell) } - - func initializeSdk(sdkKey: String) { - let sdk = ALSdk.shared(withKey: sdkKey) - sdk?.initializeSdk() - } } diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index 21ce60c2b..a0a8e0b82 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '1.2.0' + s.version = '2.0.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 12.6.1.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.0.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart b/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart index af0f885ff..234ff58df 100644 --- a/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart +++ b/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart @@ -1,4 +1,4 @@ -// Autogenerated from Pigeon (v17.1.2), do not edit directly. +// Autogenerated from Pigeon (v22.7.2), do not edit directly. // See also: https://pub.dev/packages/pigeon // ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers @@ -15,62 +15,59 @@ PlatformException _createConnectionError(String channelName) { ); } + +class _PigeonCodec extends StandardMessageCodec { + const _PigeonCodec(); + @override + void writeValue(WriteBuffer buffer, Object? value) { + if (value is int) { + buffer.putUint8(4); + buffer.putInt64(value); + } else { + super.writeValue(buffer, value); + } + } + + @override + Object? readValueOfType(int type, ReadBuffer buffer) { + switch (type) { + default: + return super.readValueOfType(type, buffer); + } + } +} + /// The generated classes set the channels to call the methods in the corresponding kotlin AppLovinSDKApi interface and swift AppLovinSDKApi protocol from the dart layer. class AppLovinSDKApi { /// Constructor for [AppLovinSDKApi]. The [binaryMessenger] named argument is /// available for dependency injection. If it is left null, the default /// BinaryMessenger will be used which routes to the host platform. - AppLovinSDKApi({BinaryMessenger? binaryMessenger}) - : __pigeon_binaryMessenger = binaryMessenger; - final BinaryMessenger? __pigeon_binaryMessenger; + AppLovinSDKApi({BinaryMessenger? binaryMessenger, String messageChannelSuffix = ''}) + : pigeonVar_binaryMessenger = binaryMessenger, + pigeonVar_messageChannelSuffix = messageChannelSuffix.isNotEmpty ? '.$messageChannelSuffix' : ''; + final BinaryMessenger? pigeonVar_binaryMessenger; - static const MessageCodec pigeonChannelCodec = - StandardMessageCodec(); + static const MessageCodec pigeonChannelCodec = _PigeonCodec(); + + final String pigeonVar_messageChannelSuffix; /// Used to configure GDPR consent on the Android or iOS AppLovin SDK Future setHasUserConsent(bool hasUserConsent) async { - const String __pigeon_channelName = - 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent'; - final BasicMessageChannel __pigeon_channel = - BasicMessageChannel( - __pigeon_channelName, - pigeonChannelCodec, - binaryMessenger: __pigeon_binaryMessenger, - ); - final List? __pigeon_replyList = await __pigeon_channel - .send([hasUserConsent]) as List?; - if (__pigeon_replyList == null) { - throw _createConnectionError(__pigeon_channelName); - } else if (__pigeon_replyList.length > 1) { - throw PlatformException( - code: __pigeon_replyList[0]! as String, - message: __pigeon_replyList[1] as String?, - details: __pigeon_replyList[2], - ); - } else { - return; - } - } - - /// Used to acknowledge that the user is in an age-restricted category on the Android or iOS AppLovin SDK - Future setIsAgeRestrictedUser(bool isAgeRestrictedUser) async { - const String __pigeon_channelName = - 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setIsAgeRestrictedUser'; - final BasicMessageChannel __pigeon_channel = - BasicMessageChannel( - __pigeon_channelName, + final String pigeonVar_channelName = 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent$pigeonVar_messageChannelSuffix'; + final BasicMessageChannel pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, pigeonChannelCodec, - binaryMessenger: __pigeon_binaryMessenger, + binaryMessenger: pigeonVar_binaryMessenger, ); - final List? __pigeon_replyList = await __pigeon_channel - .send([isAgeRestrictedUser]) as List?; - if (__pigeon_replyList == null) { - throw _createConnectionError(__pigeon_channelName); - } else if (__pigeon_replyList.length > 1) { + final List? pigeonVar_replyList = + await pigeonVar_channel.send([hasUserConsent]) as List?; + if (pigeonVar_replyList == null) { + throw _createConnectionError(pigeonVar_channelName); + } else if (pigeonVar_replyList.length > 1) { throw PlatformException( - code: __pigeon_replyList[0]! as String, - message: __pigeon_replyList[1] as String?, - details: __pigeon_replyList[2], + code: pigeonVar_replyList[0]! as String, + message: pigeonVar_replyList[1] as String?, + details: pigeonVar_replyList[2], ); } else { return; @@ -79,48 +76,21 @@ class AppLovinSDKApi { /// Used to opt out of the sale of personal information in AppLovin SDK. Future setDoNotSell(bool doNotSell) async { - const String __pigeon_channelName = - 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell'; - final BasicMessageChannel __pigeon_channel = - BasicMessageChannel( - __pigeon_channelName, - pigeonChannelCodec, - binaryMessenger: __pigeon_binaryMessenger, - ); - final List? __pigeon_replyList = - await __pigeon_channel.send([doNotSell]) as List?; - if (__pigeon_replyList == null) { - throw _createConnectionError(__pigeon_channelName); - } else if (__pigeon_replyList.length > 1) { - throw PlatformException( - code: __pigeon_replyList[0]! as String, - message: __pigeon_replyList[1] as String?, - details: __pigeon_replyList[2], - ); - } else { - return; - } - } - - /// Used to initialize the Android or iOS AppLovin SDK. Can be called anytime before the adapter initialization to let AppLovin track events as soon as possible. - Future initializeSdk(String sdkKey) async { - const String __pigeon_channelName = - 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.initializeSdk'; - final BasicMessageChannel __pigeon_channel = - BasicMessageChannel( - __pigeon_channelName, + final String pigeonVar_channelName = 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell$pigeonVar_messageChannelSuffix'; + final BasicMessageChannel pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, pigeonChannelCodec, - binaryMessenger: __pigeon_binaryMessenger, + binaryMessenger: pigeonVar_binaryMessenger, ); - final List? __pigeon_replyList = - await __pigeon_channel.send([sdkKey]) as List?; - if (__pigeon_replyList == null) { - throw _createConnectionError(__pigeon_channelName); - } else if (__pigeon_replyList.length > 1) { + final List? pigeonVar_replyList = + await pigeonVar_channel.send([doNotSell]) as List?; + if (pigeonVar_replyList == null) { + throw _createConnectionError(pigeonVar_channelName); + } else if (pigeonVar_replyList.length > 1) { throw PlatformException( - code: __pigeon_replyList[0]! as String, - message: __pigeon_replyList[1] as String?, - details: __pigeon_replyList[2], + code: pigeonVar_replyList[0]! as String, + message: pigeonVar_replyList[1] as String?, + details: pigeonVar_replyList[2], ); } else { return; diff --git a/packages/mediation/gma_mediation_applovin/lib/gma_mediation_applovin.dart b/packages/mediation/gma_mediation_applovin/lib/gma_mediation_applovin.dart index 49dc8d9a9..1e905cb24 100644 --- a/packages/mediation/gma_mediation_applovin/lib/gma_mediation_applovin.dart +++ b/packages/mediation/gma_mediation_applovin/lib/gma_mediation_applovin.dart @@ -20,15 +20,7 @@ class GmaMediationApplovin { AppLovinSDKApi().setHasUserConsent(hasUserConsent); } - Future setIsAgeRestrictedUser(bool isAgeRestrictedUser) async { - AppLovinSDKApi().setIsAgeRestrictedUser(isAgeRestrictedUser); - } - Future setDoNotSell(bool doNotSell) async { AppLovinSDKApi().setDoNotSell(doNotSell); } - - Future initializeSdk(String sdkKey) async { - AppLovinSDKApi().initializeSdk(sdkKey); - } } diff --git a/packages/mediation/gma_mediation_applovin/pigeons/applovin_privacy_api.dart b/packages/mediation/gma_mediation_applovin/pigeons/applovin_privacy_api.dart index ba1dad7ee..e967a83e7 100644 --- a/packages/mediation/gma_mediation_applovin/pigeons/applovin_privacy_api.dart +++ b/packages/mediation/gma_mediation_applovin/pigeons/applovin_privacy_api.dart @@ -36,12 +36,6 @@ abstract class AppLovinSDKApi { /// Used to configure GDPR consent on the Android or iOS AppLovin SDK void setHasUserConsent(bool hasUserConsent); - /// Used to acknowledge that the user is in an age-restricted category on the Android or iOS AppLovin SDK - void setIsAgeRestrictedUser(bool isAgeRestrictedUser); - /// Used to opt out of the sale of personal information in AppLovin SDK. void setDoNotSell(bool doNotSell); - - /// Used to initialize the Android or iOS AppLovin SDK. Can be called anytime before the adapter initialization to let AppLovin track events as soon as possible. - void initializeSdk(String sdkKey); } diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 84dc4856e..6f1867960 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 2.0.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: @@ -10,15 +10,15 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 - plugin_platform_interface: ^2.0.2 + google_mobile_ads: ^5.3.0 + plugin_platform_interface: ^2.1.8 dev_dependencies: - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter_test: sdk: flutter lint: ^2.3.0 - pigeon: ^17.0.0 + pigeon: ^22.7.2 flutter: plugin: From 61866f0f45bdcefdcdd87ac4b82eb785d88b7914 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 24 Jan 2025 16:41:28 -0800 Subject: [PATCH 047/318] Fix AppLovin Adapter dart format PiperOrigin-RevId: 719474042 --- .../lib/applovin_sdk_api.g.dart | 41 +++++++++++-------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart b/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart index 234ff58df..7d14b8fb5 100644 --- a/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart +++ b/packages/mediation/gma_mediation_applovin/lib/applovin_sdk_api.g.dart @@ -15,7 +15,6 @@ PlatformException _createConnectionError(String channelName) { ); } - class _PigeonCodec extends StandardMessageCodec { const _PigeonCodec(); @override @@ -42,9 +41,12 @@ class AppLovinSDKApi { /// Constructor for [AppLovinSDKApi]. The [binaryMessenger] named argument is /// available for dependency injection. If it is left null, the default /// BinaryMessenger will be used which routes to the host platform. - AppLovinSDKApi({BinaryMessenger? binaryMessenger, String messageChannelSuffix = ''}) - : pigeonVar_binaryMessenger = binaryMessenger, - pigeonVar_messageChannelSuffix = messageChannelSuffix.isNotEmpty ? '.$messageChannelSuffix' : ''; + AppLovinSDKApi({ + BinaryMessenger? binaryMessenger, + String messageChannelSuffix = '', + }) : pigeonVar_binaryMessenger = binaryMessenger, + pigeonVar_messageChannelSuffix = + messageChannelSuffix.isNotEmpty ? '.$messageChannelSuffix' : ''; final BinaryMessenger? pigeonVar_binaryMessenger; static const MessageCodec pigeonChannelCodec = _PigeonCodec(); @@ -53,14 +55,17 @@ class AppLovinSDKApi { /// Used to configure GDPR consent on the Android or iOS AppLovin SDK Future setHasUserConsent(bool hasUserConsent) async { - final String pigeonVar_channelName = 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final String pigeonVar_channelName = + 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setHasUserConsent$pigeonVar_messageChannelSuffix'; + final BasicMessageChannel pigeonVar_channel = + BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final List? pigeonVar_replyList = - await pigeonVar_channel.send([hasUserConsent]) as List?; + await pigeonVar_channel.send([hasUserConsent]) + as List?; if (pigeonVar_replyList == null) { throw _createConnectionError(pigeonVar_channelName); } else if (pigeonVar_replyList.length > 1) { @@ -76,12 +81,14 @@ class AppLovinSDKApi { /// Used to opt out of the sale of personal information in AppLovin SDK. Future setDoNotSell(bool doNotSell) async { - final String pigeonVar_channelName = 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final String pigeonVar_channelName = + 'dev.flutter.pigeon.gma_mediation_applovin.AppLovinSDKApi.setDoNotSell$pigeonVar_messageChannelSuffix'; + final BasicMessageChannel pigeonVar_channel = + BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final List? pigeonVar_replyList = await pigeonVar_channel.send([doNotSell]) as List?; if (pigeonVar_replyList == null) { From b2b4ee63c86a8624697a8cac97e0e41c725eea85 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 27 Jan 2025 13:31:41 -0800 Subject: [PATCH 048/318] Updated AppLovin pubspec to use the latest google_mobile_ads version PiperOrigin-RevId: 720289324 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 2a725add8..c15573a32 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,7 +1,7 @@ ## AppLovin Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.2.0 * Verified compatibility with AppLovin Android adapter version 12.6.1.0. diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 6f1867960..a64af203c 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.1.8 dev_dependencies: diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 324627690..fb304450e 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -11,9 +11,9 @@ dependencies: google_mobile_ads: ^5.2.0 plugin_platform_interface: ^2.0.2 dev_dependencies: + flutter_lints: ^4.0.0 flutter_test: sdk: flutter - flutter_lints: ^4.0.0 lint: ^2.3.0 pigeon: ^22.6.2 flutter: From da088cccb9c10c107764ae6e75f188d54eead3e5 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Mon, 27 Jan 2025 14:37:20 -0800 Subject: [PATCH 049/318] Updated format validator for GitHub workflows (#1245) * Update formatter for main plugin * Updated formatter for adapter's workflows and updates samples format --- .github/workflows/build.yaml | 3 +- .github/workflows/gma_mediation_applovin.yaml | 9 ---- .../workflows/gma_mediation_chartboost.yaml | 44 +++++++++++++++++++ .../workflows/gma_mediation_dtexchange.yaml | 9 ---- .github/workflows/gma_mediation_inmobi.yaml | 9 ---- .../workflows/gma_mediation_ironsource.yaml | 9 ---- .../gma_mediation_liftoffmonetize.yaml | 9 ---- .github/workflows/gma_mediation_meta.yaml | 9 ---- .../workflows/gma_mediation_mintegral.yaml | 9 ---- .github/workflows/gma_mediation_pangle.yaml | 9 ---- .github/workflows/gma_mediation_unity.yaml | 9 ---- .github/workflows/google_mobile_ads.yaml | 3 +- .../app_open_example/lib/consent_manager.dart | 10 ++--- .../banner_example/lib/consent_manager.dart | 9 ++-- .../lib/consent_manager.dart | 4 +- .../mediation_example/lib/app_bar_item.dart | 1 + .../lib/consent_manager.dart | 8 ++-- .../lib/consent_manager.dart | 8 ++-- .../rewarded_example/lib/consent_manager.dart | 4 +- .../lib/consent_manager.dart | 8 ++-- .../lib/main.dart | 31 ++++++------- 21 files changed, 85 insertions(+), 129 deletions(-) create mode 100644 .github/workflows/gma_mediation_chartboost.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 6031b8c1d..09bfc3905 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -109,6 +109,5 @@ jobs: GOOGLEMOBILEADS_PLUGIN_SCOPE_EXAMPLE: ${{ matrix.REGEX }} - name: "Flutter Format" run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format + dart format samples/ ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index 81c2d0905..e4b4a7734 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -93,12 +93,3 @@ jobs: run: | cd packages/mediation/gma_mediation_applovin/ flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_applovin/ - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_chartboost.yaml b/.github/workflows/gma_mediation_chartboost.yaml new file mode 100644 index 000000000..4589ecf6b --- /dev/null +++ b/.github/workflows/gma_mediation_chartboost.yaml @@ -0,0 +1,44 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name: gma_mediation_chartboost + +on: + pull_request: + paths: + - "packages/mediation/gma_mediation_chartboost/**" + - ".github/workflows/gma_mediation_chartboost.yaml" + - "packages/mediation/gma_mediation_chartboost/ios/**" + - "packages/mediation/gma_mediation_chartboost/android/**" + push: + branches: + - main + +jobs: + flutter: + runs-on: ubuntu-latest + if: github.event_name == 'pull_request' + timeout-minutes: 30 + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + fetch-depth: 0 + - name: "Install Flutter" + run: ./.github/workflows/scripts/install-flutter.sh stable + - name: "Install Tools" + run: ./.github/workflows/scripts/install-tools.sh + - name: "Flutter Analyze" + run: | + cd packages/mediation/gma_mediation_chartboost/ + flutter analyze diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index 18400ee51..21527b1ad 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -93,12 +93,3 @@ jobs: run: | cd packages/mediation/gma_mediation_dtexchange flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_dtexchange - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_inmobi.yaml b/.github/workflows/gma_mediation_inmobi.yaml index 825846822..944721f33 100644 --- a/.github/workflows/gma_mediation_inmobi.yaml +++ b/.github/workflows/gma_mediation_inmobi.yaml @@ -42,12 +42,3 @@ jobs: run: | cd packages/mediation/gma_mediation_inmobi flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_inmobi - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index c01129b4a..6851276a9 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -92,12 +92,3 @@ jobs: run: | cd packages/mediation/gma_mediation_ironsource flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_ironsource - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index 716988689..baeb77cc9 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -94,12 +94,3 @@ jobs: run: | cd packages/mediation/gma_mediation_liftoffmonetize flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_liftoffmonetize - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_meta.yaml b/.github/workflows/gma_mediation_meta.yaml index d86ad6aec..ff7134bd3 100644 --- a/.github/workflows/gma_mediation_meta.yaml +++ b/.github/workflows/gma_mediation_meta.yaml @@ -42,12 +42,3 @@ jobs: run: | cd packages/mediation/gma_mediation_meta flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_meta - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_mintegral.yaml b/.github/workflows/gma_mediation_mintegral.yaml index 1a5a4b64e..bd9ff3e1d 100644 --- a/.github/workflows/gma_mediation_mintegral.yaml +++ b/.github/workflows/gma_mediation_mintegral.yaml @@ -42,12 +42,3 @@ jobs: run: | cd packages/mediation/gma_mediation_mintegral flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_mintegral - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_pangle.yaml b/.github/workflows/gma_mediation_pangle.yaml index f510a4d40..d4b573ef8 100644 --- a/.github/workflows/gma_mediation_pangle.yaml +++ b/.github/workflows/gma_mediation_pangle.yaml @@ -42,12 +42,3 @@ jobs: run: | cd packages/mediation/gma_mediation_pangle/ flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_pangle/ - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index a8c378b43..2dfaa1e00 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -91,12 +91,3 @@ jobs: run: | cd packages/mediation/gma_mediation_unity/ flutter analyze - - name: "Flutter Publish" - run: | - cd packages/mediation/gma_mediation_unity/ - flutter pub publish --dry-run - - name: "Flutter Format" - run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format - ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index 459f76ee1..8b530f94c 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -104,6 +104,5 @@ jobs: flutter pub publish --dry-run - name: "Flutter Format" run: | - flutter pub global activate flutter_plugin_tools - flutter pub global run flutter_plugin_tools format + dart format packages/google_mobile_ads/ ./.github/workflows/scripts/validate-formatting.sh diff --git a/samples/admob/app_open_example/lib/consent_manager.dart b/samples/admob/app_open_example/lib/consent_manager.dart index f429d449b..3bf97a2d9 100644 --- a/samples/admob/app_open_example/lib/consent_manager.dart +++ b/samples/admob/app_open_example/lib/consent_manager.dart @@ -20,7 +20,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -30,10 +30,10 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { @@ -51,4 +51,4 @@ class ConsentManager { OnConsentFormDismissedListener onConsentFormDismissedListener) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } -} \ No newline at end of file +} diff --git a/samples/admob/banner_example/lib/consent_manager.dart b/samples/admob/banner_example/lib/consent_manager.dart index 36e8e1200..39c9f3155 100644 --- a/samples/admob/banner_example/lib/consent_manager.dart +++ b/samples/admob/banner_example/lib/consent_manager.dart @@ -1,4 +1,3 @@ - import 'dart:async'; import 'package:google_mobile_ads/google_mobile_ads.dart'; @@ -18,7 +17,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -28,10 +27,10 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { diff --git a/samples/admob/interstitial_example/lib/consent_manager.dart b/samples/admob/interstitial_example/lib/consent_manager.dart index c64afd1be..39c9f3155 100644 --- a/samples/admob/interstitial_example/lib/consent_manager.dart +++ b/samples/admob/interstitial_example/lib/consent_manager.dart @@ -27,8 +27,8 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = ConsentRequestParameters(consentDebugSettings: debugSettings); diff --git a/samples/admob/mediation_example/lib/app_bar_item.dart b/samples/admob/mediation_example/lib/app_bar_item.dart index 0c986a74d..512724300 100644 --- a/samples/admob/mediation_example/lib/app_bar_item.dart +++ b/samples/admob/mediation_example/lib/app_bar_item.dart @@ -5,6 +5,7 @@ class AppBarItem { /// Button text. final String label; + /// Button value. final int value; diff --git a/samples/admob/native_platform_example/lib/consent_manager.dart b/samples/admob/native_platform_example/lib/consent_manager.dart index f8d8c7912..39c9f3155 100644 --- a/samples/admob/native_platform_example/lib/consent_manager.dart +++ b/samples/admob/native_platform_example/lib/consent_manager.dart @@ -17,7 +17,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -27,10 +27,10 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { diff --git a/samples/admob/native_template_example/lib/consent_manager.dart b/samples/admob/native_template_example/lib/consent_manager.dart index f8d8c7912..39c9f3155 100644 --- a/samples/admob/native_template_example/lib/consent_manager.dart +++ b/samples/admob/native_template_example/lib/consent_manager.dart @@ -17,7 +17,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -27,10 +27,10 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { diff --git a/samples/admob/rewarded_example/lib/consent_manager.dart b/samples/admob/rewarded_example/lib/consent_manager.dart index 59c23ec76..7dbd9bf84 100644 --- a/samples/admob/rewarded_example/lib/consent_manager.dart +++ b/samples/admob/rewarded_example/lib/consent_manager.dart @@ -17,7 +17,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -30,7 +30,7 @@ class ConsentManager { debugGeography: DebugGeography.debugGeographyEea, ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { diff --git a/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart b/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart index f8d8c7912..39c9f3155 100644 --- a/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart +++ b/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart @@ -17,7 +17,7 @@ class ConsentManager { /// Helper variable to determine if the privacy options form is required. Future isPrivacyOptionsRequired() async { return await ConsentInformation.instance - .getPrivacyOptionsRequirementStatus() == + .getPrivacyOptionsRequirementStatus() == PrivacyOptionsRequirementStatus.required; } @@ -27,10 +27,10 @@ class ConsentManager { OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); + // debugGeography: DebugGeography.debugGeographyEea, + ); ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters(consentDebugSettings: debugSettings); // Requesting an update to consent information should be called on every app launch. ConsentInformation.instance.requestConsentInfoUpdate(params, () async { diff --git a/samples/admob/rewarded_interstitial_example/lib/main.dart b/samples/admob/rewarded_interstitial_example/lib/main.dart index 3386b2651..3b25c4514 100644 --- a/samples/admob/rewarded_interstitial_example/lib/main.dart +++ b/samples/admob/rewarded_interstitial_example/lib/main.dart @@ -47,8 +47,7 @@ class RewardedInterstitialExampleState if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError - .message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); } // Kick off the first play of the "game". @@ -65,13 +64,11 @@ class RewardedInterstitialExampleState _initializeMobileAdsSDK(); // Show an alert dialog when the timer reaches zero. - _countdownTimer.addListener(() => - setState(() { + _countdownTimer.addListener(() => setState(() { if (_countdownTimer.isComplete) { showDialog( context: context, - builder: (context) => - AdDialog(showAd: () { + builder: (context) => AdDialog(showAd: () { _gameOver = true; _showAdCallback(); })); @@ -105,10 +102,10 @@ class RewardedInterstitialExampleState void _showAdCallback() { _rewardedInterstitialAd?.show( onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); - setState(() => _coins += rewardItem.amount.toInt()); - }); + // ignore: avoid_print + print('Reward amount: ${rewardItem.amount}'); + setState(() => _coins += rewardItem.amount.toInt()); + }); } @override @@ -128,7 +125,7 @@ class RewardedInterstitialExampleState child: Text( 'The Impossible Game', style: - TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + TextStyle(fontSize: 25, fontWeight: FontWeight.bold), ), )), Align( @@ -171,16 +168,14 @@ class RewardedInterstitialExampleState return [ PopupMenuButton( - itemBuilder: (context) => - array - .map((item) => - PopupMenuItem( + itemBuilder: (context) => array + .map((item) => PopupMenuItem( value: item, child: Text( item.label, ), )) - .toList(), + .toList(), onSelected: (item) { _pauseGame(); switch (item.value) { @@ -214,9 +209,9 @@ class RewardedInterstitialExampleState adUnitId: _adUnitId, request: const AdRequest(), rewardedInterstitialAdLoadCallback: - RewardedInterstitialAdLoadCallback(onAdLoaded: (ad) { + RewardedInterstitialAdLoadCallback(onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( - // Called when the ad showed the full screen content. + // Called when the ad showed the full screen content. onAdShowedFullScreenContent: (ad) {}, // Called when an impression occurs on the ad. onAdImpression: (ad) {}, From ead8bc266c0ceb39142eba1da7da26046a334640 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Mon, 27 Jan 2025 17:34:03 -0600 Subject: [PATCH 050/318] Update samples to 5.3.1 (#1246) Co-authored-by: Justin Malandruccolo --- samples/admob/app_open_example/pubspec.yaml | 2 +- samples/admob/banner_example/pubspec.yaml | 2 +- samples/admob/interstitial_example/pubspec.yaml | 2 +- samples/admob/mediation_example/pubspec.yaml | 2 +- samples/admob/native_platform_example/.gitignore | 2 ++ samples/admob/native_platform_example/pubspec.yaml | 2 +- samples/admob/native_template_example/.gitignore | 2 ++ samples/admob/native_template_example/pubspec.yaml | 2 +- samples/admob/rewarded_example/.gitignore | 2 ++ samples/admob/rewarded_example/pubspec.yaml | 2 +- samples/admob/rewarded_interstitial_example/.gitignore | 2 ++ samples/admob/rewarded_interstitial_example/pubspec.yaml | 2 +- 12 files changed, 16 insertions(+), 8 deletions(-) diff --git a/samples/admob/app_open_example/pubspec.yaml b/samples/admob/app_open_example/pubspec.yaml index a26ce9380..a01627288 100644 --- a/samples/admob/app_open_example/pubspec.yaml +++ b/samples/admob/app_open_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 dev_dependencies: flutter_test: diff --git a/samples/admob/banner_example/pubspec.yaml b/samples/admob/banner_example/pubspec.yaml index e9900e4ab..3e90e7ac6 100644 --- a/samples/admob/banner_example/pubspec.yaml +++ b/samples/admob/banner_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 dev_dependencies: flutter_test: diff --git a/samples/admob/interstitial_example/pubspec.yaml b/samples/admob/interstitial_example/pubspec.yaml index 68637b5a3..2dbf2f9ba 100644 --- a/samples/admob/interstitial_example/pubspec.yaml +++ b/samples/admob/interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 dev_dependencies: flutter_test: diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index 36496f641..d9ead2d4f 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -23,7 +23,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 # The following adds the Cupertino Icons font to your application. diff --git a/samples/admob/native_platform_example/.gitignore b/samples/admob/native_platform_example/.gitignore index 24476c5d1..6c319542b 100644 --- a/samples/admob/native_platform_example/.gitignore +++ b/samples/admob/native_platform_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index 8bfb3bf31..db5fb9759 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/native_template_example/.gitignore b/samples/admob/native_template_example/.gitignore index 24476c5d1..6c319542b 100644 --- a/samples/admob/native_template_example/.gitignore +++ b/samples/admob/native_template_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index b870c7a04..66226f4f1 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/rewarded_example/.gitignore b/samples/admob/rewarded_example/.gitignore index 29a3a5017..79c113f9b 100644 --- a/samples/admob/rewarded_example/.gitignore +++ b/samples/admob/rewarded_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/rewarded_example/pubspec.yaml b/samples/admob/rewarded_example/pubspec.yaml index c17551f6c..6bd022dfd 100644 --- a/samples/admob/rewarded_example/pubspec.yaml +++ b/samples/admob/rewarded_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 dev_dependencies: flutter_test: diff --git a/samples/admob/rewarded_interstitial_example/.gitignore b/samples/admob/rewarded_interstitial_example/.gitignore index 29a3a5017..79c113f9b 100644 --- a/samples/admob/rewarded_interstitial_example/.gitignore +++ b/samples/admob/rewarded_interstitial_example/.gitignore @@ -5,9 +5,11 @@ *.swp .DS_Store .atom/ +.build/ .buildlog/ .history .svn/ +.swiftpm/ migrate_working_dir/ # IntelliJ related diff --git a/samples/admob/rewarded_interstitial_example/pubspec.yaml b/samples/admob/rewarded_interstitial_example/pubspec.yaml index 4089266b2..f1c6f99b0 100644 --- a/samples/admob/rewarded_interstitial_example/pubspec.yaml +++ b/samples/admob/rewarded_interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.0 + google_mobile_ads: ^5.3.1 dev_dependencies: flutter_test: From 169fddc44108e33d4419383730a9badfbc4514a7 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 27 Jan 2025 15:54:50 -0800 Subject: [PATCH 051/318] Updating DTExchangeAdapter for Flutter to support the latest adapters (8.3.5.0, 8.3.4.0) PiperOrigin-RevId: 720337228 --- .../mediation/gma_mediation_dtexchange/CHANGELOG.md | 10 ++++------ .../gma_mediation_dtexchange/android/build.gradle | 2 +- .../ios/gma_mediation_dtexchange.podspec | 2 +- .../mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 57366133a..e97024cc5 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,12 +1,10 @@ ## DT Exchange Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 1.1.0 -* Verified compatibility with DT Exchange Android adapter version 8.3.0.0. -* Verified compatibility with DT Exchange iOS adapter version 8.3.1.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* iOS plugin is now a static framework. +* Verified compatibility with DT Exchange Android adapter version 8.3.5.0. +* Verified compatibility with DT Exchange iOS adapter version 8.3.4.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 * Initial release. diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index df3ed1b75..48b63e366 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:fyber:8.3.0.0' + implementation 'com.google.ads.mediation:fyber:8.3.5.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 779aa1486..c57563278 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.1.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.4.0' s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index fabbbcd86..70f4d6cd7 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From d375e5581f4b6e9cd3ef6931f884ccce92b1806f Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 27 Jan 2025 16:13:24 -0800 Subject: [PATCH 052/318] Updating InMobi Flutter Mediation Plugin to support the latest adapters (10.8.0.0, 10.8.0.0) PiperOrigin-RevId: 720343103 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 10 ++++------ .../gma_mediation_inmobi/android/build.gradle | 2 +- .../ios/gma_mediation_inmobi.podspec | 2 +- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 6fb8bacfd..1847e5909 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,12 +1,10 @@ ## InMobi Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 1.1.0 -* Verified compatibility with InMobi Android adapter version 10.7.5.0. -* Verified compatibility with InMobi iOS adapter version 10.7.5.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* iOS plugin is now a static framework. +* Verified compatibility with InMobi Android adapter version 10.8.0.0. +* Verified compatibility with InMobi iOS adapter version 10.8.0.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 * Initial release. diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 8d97497cb..61edc30ec 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:inmobi:10.7.5.0' + implementation 'com.google.ads.mediation:inmobi:10.8.0.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 4d25017d8..1d6a3e3f6 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.7.5.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index 0b53b66e4..cd1934532 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 149f724bff9cbf1494ff78b965bd940d3eded6ba Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 27 Jan 2025 16:18:39 -0800 Subject: [PATCH 053/318] Updating ironSource Flutter Mediation Plugin to support the latest adapters (8.6.1.0, 8.6.0.0.0) PiperOrigin-RevId: 720344601 --- .../mediation/gma_mediation_ironsource/CHANGELOG.md | 10 ++++------ .../gma_mediation_ironsource/android/build.gradle | 2 +- .../ios/gma_mediation_ironsource.podspec | 4 ++-- .../mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 3220816cb..1dbe439ac 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,12 +1,10 @@ ## ironSource Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 1.1.0 -* Verified compatibility with ironSource Android adapter version 8.2.1.0 -* Verified compatibility with ironSource iOS adapter version 8.2.0.0.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* iOS plugin is now a static framework. +* Verified compatibility with ironSource Android adapter version 8.6.1.0 +* Verified compatibility with ironSource iOS adapter version 8.6.0.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 * Initial release. diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 5396c9654..e41c6323f 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -53,7 +53,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:ironsource:8.2.1.0' + implementation 'com.google.ads.mediation:ironsource:8.6.1.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 87370434f..829b8b41b 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.2.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.2.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.6.0.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 54735b1e3..f054fc7a1 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 8af702c1306f5cb130c4546cde8067c615e7a4a0 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 27 Jan 2025 16:22:26 -0800 Subject: [PATCH 054/318] Updating LiftoffMonetize Plugin to support the latest adapters (7.4.3.0, 7.4.4.0) PiperOrigin-RevId: 720345712 --- .../gma_mediation_liftoffmonetize/CHANGELOG.md | 10 ++++------ .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- .../ios/gma_mediation_liftoffmonetize.podspec | 2 +- .../gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index eb9adf92e..a6b6c3ec5 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,12 +1,10 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### Version 1.1.0 -- Verified compatibility with Liftoff Monetize Android adapter version 7.4.0.1 -- Verified compatibility with LiftoffMonetize iOS adapter version 7.4.0.1 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +- iOS plugin is now a static framework. +- Verified compatibility with Liftoff Monetize Android adapter version 7.4.3.0 +- Verified compatibility with Liftoff Monetize iOS adapter version 7.4.4.0 +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### Version 1.0.0 - Initial release. diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index da6126512..8599894d4 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:vungle:7.4.0.1' + implementation 'com.google.ads.mediation:vungle:7.4.3.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index a78021742..855a726ab 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.0.1' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.4.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index 1fb35694f..568cc344f 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 06b10811824182dc3460e92d69bdd23abdfa4bb3 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 28 Jan 2025 09:00:30 -0800 Subject: [PATCH 055/318] - Updating Line Flutter Mediation Adapter to use latest google_mobile_ads version. - Updated to latest Line Android adapter PiperOrigin-RevId: 720594875 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 7 +++---- packages/mediation/gma_mediation_line/android/build.gradle | 2 +- packages/mediation/gma_mediation_line/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 50b108c64..560180171 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,8 +1,7 @@ ## Line Flutter Mediation Adapter Changelog #### 1.0.0 - * Initial release. -* Verified compatibility with Line Android adapter version 2.9.20241129.0 -* Verified compatibility with Line iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +* Verified compatibility with Line Android adapter version 2.9.20250110.0 +* Verified compatibility with Line iOS adapter version 2.9.20241106.1 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index 55f04f3e5..c9c933a71 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:line:2.9.20241129.0") + implementation("com.google.ads.mediation:line:2.9.20250110.0") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index 9da8e2e2c..e6b88c24e 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -8,7 +8,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From ae06b0164303197ad0571791f2eadb7af2e2cead Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 28 Jan 2025 09:08:14 -0800 Subject: [PATCH 056/318] Updating Meta Adapter for Flutter to Latest Version (6.18.0.0, 6.16.0.0) PiperOrigin-RevId: 720597685 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 10 ++++------ .../mediation/gma_mediation_meta/android/build.gradle | 2 +- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 2 +- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index ced916084..9c6b208a4 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,12 +1,10 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 1.1.0 -* Verified compatibility with Meta Android adapter version 6.17.0.0 -* Verified compatibility with Meta iOS adapter version 6.15.2.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* iOS plugin is now a static framework. +* Verified compatibility with Meta Android adapter version 6.18.0.0 +* Verified compatibility with Meta iOS adapter version 6.16.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.1 diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 9c92be3ae..e18e0ffe4 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:facebook:6.17.0.0' + implementation 'com.google.ads.mediation:facebook:6.18.0.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 3138d4c2f..62388b49c 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -16,7 +16,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.15.2.0' + s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.16.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index b3e42d0a2..adbf5d6db 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 049b38d3eb685360df080ec43c3469c298bd8ace Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 28 Jan 2025 09:12:30 -0800 Subject: [PATCH 057/318] Updating Mintegral Android adapter to support the latest adapters (16.8.61.0, 7.7.5.0) PiperOrigin-RevId: 720599125 --- .../mediation/gma_mediation_mintegral/CHANGELOG.md | 10 ++++------ .../gma_mediation_mintegral/android/build.gradle | 2 +- .../ios/gma_mediation_mintegral.podspec | 2 +- .../mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index ddb65a9ab..de71cc4a8 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,12 +1,10 @@ ## Mintegral Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 1.1.0 -* Verified compatibility with Mintegral Android adapter version 16.8.31.0. -* Verified compatibility with Mintegral iOS adapter version 7.7.1.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* iOS plugin is now a static framework. +* Verified compatibility with Mintegral Android adapter version 16.8.61.0. +* Verified compatibility with Mintegral iOS adapter version 7.7.5.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index f6db177cd..d49be5357 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -50,7 +50,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:mintegral:16.8.31.0' + implementation 'com.google.ads.mediation:mintegral:16.8.61.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index de57f6d8b..29073edf2 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.1.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index 2d099aabc..fee73cff4 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 2c9eb0cbe2c5fc9c5d3e57cdb9a30fd6bcb6e743 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 28 Jan 2025 09:16:42 -0800 Subject: [PATCH 058/318] Updating Pangle Flutter Mediation Plugin to support the latest adapters (6.4.0.6.0, 6.4.1.1.0) PiperOrigin-RevId: 720600454 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 9 +++------ .../mediation/gma_mediation_pangle/android/build.gradle | 2 +- .../ios/gma_mediation_pangle.podspec | 2 +- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 95a816b64..6577b0804 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,12 +1,9 @@ ## Pangle Flutter Mediation Adapter Changelog #### Next Version -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. - -#### 2.0.0 -* Verified compatibility with Pangle Android adapter version 6.1.0.9.0. -* Verified compatibility with Pangle iOS adapter version 6.2.0.5.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +* Verified compatibility with Pangle Android adapter version 6.4.0.6.0. +* Verified compatibility with Pangle iOS adapter version 6.4.1.1.0. +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.1.0 * Verified compatibility with Pangle Android adapter version 5.9.0.4.0. diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 5467aa94b..e2a17ee8b 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -53,7 +53,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:pangle:6.1.0.9.0' + implementation 'com.google.ads.mediation:pangle:6.4.0.6.0' testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index bb35c59b6..b58669ea4 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.2.0.5.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.4.1.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index ffa7c66f3..04f5dba7c 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^5.3.1 plugin_platform_interface: ^2.0.2 dev_dependencies: From 87c7a5bd8db05b5bd0921ac26814d75245ad9382 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 28 Jan 2025 09:21:28 -0800 Subject: [PATCH 059/318] Update Unity Flutter Mediation plugin to 4.13.0 (Android) and 4.12.5.0 (iOS) PiperOrigin-RevId: 720601728 --- packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index f09e4d74a..37eb0d18b 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -51,8 +51,8 @@ android { } dependencies { - implementation 'com.unity3d.ads:unity-ads:4.12.3' - implementation 'com.google.ads.mediation:unity:4.12.3.0' + implementation 'com.unity3d.ads:unity-ads:4.13.0' + implementation 'com.google.ads.mediation:unity:4.13.0.0' testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 83ac10c4e..07c6f7a32 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.3.1' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 70f844ef3..c67dd8f72 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From 684599529a936bc7890d870d09509c38bd45c1eb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 30 Jan 2025 14:28:33 -0800 Subject: [PATCH 060/318] Updating Pangle Flutter plugin version to 2.0.0 in the mediation developer docs. PiperOrigin-RevId: 721520721 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 6577b0804..b4728e22f 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,6 +1,6 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Next Version +#### 2.0.0 * Verified compatibility with Pangle Android adapter version 6.4.0.6.0. * Verified compatibility with Pangle iOS adapter version 6.4.1.1.0. * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. From 59898e7f167a0df681e9c7f3ad0b8088e0d22378 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 31 Jan 2025 12:02:46 -0800 Subject: [PATCH 061/318] Updating InMobi Flutter mediation plugin version to 1.1.0 in the mediation developer docs. PiperOrigin-RevId: 721854140 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 1847e5909..e3468b679 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,6 +1,6 @@ ## InMobi Flutter Mediation Adapter Changelog -#### Next Version +#### 1.1.0 * iOS plugin is now a static framework. * Verified compatibility with InMobi Android adapter version 10.8.0.0. * Verified compatibility with InMobi iOS adapter version 10.8.0.0. From 83d99d7352105f2e34c2f1e3cb76f6ca889c91bb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 3 Feb 2025 11:46:51 -0800 Subject: [PATCH 062/318] Updating Liftoff Monetize Flutter mediation plugin to version 1.1.0 in the mediation developer docs PiperOrigin-RevId: 722739838 --- packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index a6b6c3ec5..6d071e014 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,12 +1,12 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog -#### Next Version +#### 1.1.0 - iOS plugin is now a static framework. - Verified compatibility with Liftoff Monetize Android adapter version 7.4.3.0 - Verified compatibility with Liftoff Monetize iOS adapter version 7.4.4.0 - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### Version 1.0.0 +#### 1.0.0 - Initial release. - Verified compatibility with Liftoff Monetize Android adapter version 7.3.1.0 - Verified compatibility with LiftoffMonetize iOS adapter version 7.3.2.0 From 770af6590bbf06e3c89ce6ad542583b3aadd579b Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 5 Feb 2025 16:26:56 -0800 Subject: [PATCH 063/318] Adds variable with the AppLovin adapter version in the build.gradle file PiperOrigin-RevId: 723693560 --- .../mediation/gma_mediation_applovin/android/build.gradle | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 142634901..aee066ff9 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "13.0.1.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' @@ -51,7 +55,7 @@ android { dependencies { implementation 'com.applovin:applovin-sdk:13.0.1' - implementation 'com.google.ads.mediation:applovin:13.0.1.0' + implementation "com.google.ads.mediation:applovin:$stringVersion" implementation 'com.google.android.gms:play-services-ads:23.6.0' implementation 'androidx.core:core-ktx:1.8.0' testImplementation 'junit:junit:4.13.2' From f9bcb1571a4096b1eb21b13ef9e7f72c541b59d5 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 11 Feb 2025 11:59:12 -0800 Subject: [PATCH 064/318] Updating AppLovin Flutter plugin version to 2.0.0 in the mediation developer docs. PiperOrigin-RevId: 725719670 --- .../gma_mediation_applovin/CHANGELOG.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index c15573a32..03c749dfe 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,21 +1,23 @@ ## AppLovin Flutter Mediation Adapter Changelog -#### Next Version +#### 2.0.0 +- Supports [AppLovin Android adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13010). +- Supports [AppLovin iOS adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13010). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.2.0 -* Verified compatibility with AppLovin Android adapter version 12.6.1.0. -* Verified compatibility with AppLovin iOS adapter version 12.6.1.0. +* Supports [AppLovin Android adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12610). +* Supports [AppLovin iOS adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12610). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. #### 1.1.0 * API for the GmaMediationApplovin is no longer static. -* Verified compatibility with AppLovin Android adapter version 12.4.3.0. -* Verified compatibility with AppLovin iOS adapter version 12.4.2.0. +* Supports [AppLovin Android adapter version 12.4.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12430). +* Supports [AppLovin iOS adapter version 12.4.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12420). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. #### 1.0.0 * Initial release. -* Verified compatibility with AppLovin Android adapter version 12.3.0.0 -* Verified compatibility with AppLovin iOS adapter version 12.2.1.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. \ No newline at end of file +- Supports [AppLovin Android adapter version 12.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12300). +- Supports [AppLovin iOS adapter version 12.2.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12210). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. From c5dd60b497f926f71edd62d9dc394a01a7a59970 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 11 Feb 2025 12:48:24 -0800 Subject: [PATCH 065/318] Updating Meta Audience Network Flutter plugin version to 1.1.0 in the mediation developer docs. PiperOrigin-RevId: 725736799 --- .../mediation/gma_mediation_meta/CHANGELOG.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 9c6b208a4..7486d9304 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,21 +1,19 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog -#### Next Version +#### 1.1.0 * iOS plugin is now a static framework. -* Verified compatibility with Meta Android adapter version 6.18.0.0 -* Verified compatibility with Meta iOS adapter version 6.16.0.0 +* Supports [Meta Audience Network Android adapter version 6.18.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61800). +* Supports [Meta Audience Network iOS adapter version 6.16.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61600). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.1 - * Added dart class to allow correct compatibility analysis with host platforms -* Verified compatibility with Meta Android adapter version 6.17.0.0 -* Verified compatibility with Meta iOS adapter version 6.15.0.0 +- Supports [Meta Audience Network Android adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61700). +- Supports [Meta Audience Network iOS adapter version 6.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61500). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. #### 1.0.0 - * Initial release. -* Verified compatibility with Meta Android adapter version 6.17.0.0 -* Verified compatibility with Meta iOS adapter version 6.15.0.0 +- Supports [Meta Audience Network Android adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61700). +- Supports [Meta Audience Network iOS adapter version 6.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61500). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. From 30808d0f436e8484f36819f22deb68c9fb6df37c Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 11 Feb 2025 13:27:29 -0800 Subject: [PATCH 066/318] Updating AppLovin Android adapter to version 13.1.0.0, iOS adapter to version 13.1.0.0 PiperOrigin-RevId: 725751076 --- .../mediation/gma_mediation_applovin/android/build.gradle | 6 +++--- .../ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index aee066ff9..1dea0b794 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version '1.0-SNAPSHOT' +version '2.1.0' buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.0.1.0" + stringVersion = "13.1.0.0" } android { @@ -54,7 +54,7 @@ android { } dependencies { - implementation 'com.applovin:applovin-sdk:13.0.1' + implementation 'com.applovin:applovin-sdk:13.1.0' implementation "com.google.ads.mediation:applovin:$stringVersion" implementation 'com.google.android.gms:play-services-ads:23.6.0' implementation 'androidx.core:core-ktx:1.8.0' diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index a0a8e0b82..73794b4f3 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.0.0' + s.version = '2.1.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.0.1.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.1.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index a64af203c..6ce3a1d58 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.0.0 +version: 2.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From b4eb95ca25685d3178fe8bdfffecdee32b350d23 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 18 Feb 2025 09:17:41 -0800 Subject: [PATCH 067/318] Creation of Moloco Flutter Adapter PiperOrigin-RevId: 728237688 --- .../gma_mediation_moloco/CHANGELOG.md | 9 + .../mediation/gma_mediation_moloco/LICENSE | 202 ++++++ .../mediation/gma_mediation_moloco/README.md | 36 + .../analysis_options.yaml | 19 + .../gma_mediation_moloco/android/build.gradle | 77 +++ .../android/gma_mediation_moloco_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationMolocoPlugin.kt | 24 + .../GmaMediationMolocoPluginTest.kt | 17 + .../gma_mediation_moloco/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle | 44 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle | 18 + .../gma_mediation_moloco_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle | 25 + .../example/gma_mediation_moloco_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../GmaMediationMolocoPluginTests.swift | 20 + .../example/lib/main.dart | 29 + .../gma_mediation_moloco/example/pubspec.lock | 323 +++++++++ .../gma_mediation_moloco/example/pubspec.yaml | 85 +++ .../gma_mediation_moloco.iml | 17 + .../Classes/GmaMediationMolocoPlugin.swift | 23 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_moloco.podspec | 21 + .../lib/gma_mediation_moloco.dart | 16 + .../pigeons/moloco_sdk_api.dart | 36 + .../gma_mediation_moloco/pubspec.lock | 413 ++++++++++++ .../gma_mediation_moloco/pubspec.yaml | 27 + 83 files changed, 3064 insertions(+) create mode 100644 packages/mediation/gma_mediation_moloco/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_moloco/LICENSE create mode 100644 packages/mediation/gma_mediation_moloco/README.md create mode 100644 packages/mediation/gma_mediation_moloco/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_moloco/android/build.gradle create mode 100644 packages/mediation/gma_mediation_moloco/android/gma_mediation_moloco_android.iml create mode 100644 packages/mediation/gma_mediation_moloco/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_moloco/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_moloco/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPlugin.kt create mode 100644 packages/mediation/gma_mediation_moloco/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPluginTest.kt create mode 100644 packages/mediation/gma_mediation_moloco/example/README.md create mode 100644 packages/mediation/gma_mediation_moloco/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/build.gradle create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/build.gradle create mode 100644 packages/mediation/gma_mediation_moloco/example/android/gma_mediation_moloco_example_android.iml create mode 100644 packages/mediation/gma_mediation_moloco/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_moloco/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_moloco/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_moloco/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_moloco/example/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_moloco/example/gma_mediation_moloco_example.iml create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_moloco/example/ios/RunnerTests/GmaMediationMolocoPluginTests.swift create mode 100644 packages/mediation/gma_mediation_moloco/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_moloco/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_moloco/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_moloco/gma_mediation_moloco.iml create mode 100644 packages/mediation/gma_mediation_moloco/ios/Classes/GmaMediationMolocoPlugin.swift create mode 100644 packages/mediation/gma_mediation_moloco/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec create mode 100644 packages/mediation/gma_mediation_moloco/lib/gma_mediation_moloco.dart create mode 100644 packages/mediation/gma_mediation_moloco/pigeons/moloco_sdk_api.dart create mode 100644 packages/mediation/gma_mediation_moloco/pubspec.lock create mode 100644 packages/mediation/gma_mediation_moloco/pubspec.yaml diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md new file mode 100644 index 000000000..5e575d66a --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -0,0 +1,9 @@ +## Moloco Flutter Mediation Adapter Changelog + +#### 1.0.0 + +TODO: Add version numbers +* Initial release. +* Verified compatibility with Moloco Android adapter version a.b.c.d +* Verified compatibility with Moloco iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_moloco/LICENSE b/packages/mediation/gma_mediation_moloco/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_moloco/README.md b/packages/mediation/gma_mediation_moloco/README.md new file mode 100644 index 000000000..1390131f4 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/README.md @@ -0,0 +1,36 @@ +# Google Mobile Ads Mediation of Moloco for Flutter + +[![gma_mediation_moloco](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation Moloco Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +Moloco Ad Network through the Google Mobile Ads SDK. + +This plugin use the [Pigeon Flutter plugin](https://pub.dev/packages/pigeon) to +generate the classes that bridge the dart layer with each platform's code. +To add or modify the third party sdk, use the classes in the pigeons folder +following [this guide](https://github.com/flutter/packages/blob/main/packages/pigeon/example/README.md). + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [Moloco](https://developers.google.com/admob/flutter/mediation/moloco). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_moloco/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_moloco/analysis_options.yaml b/packages/mediation/gma_mediation_moloco/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle new file mode 100644 index 000000000..ec77b0b2b --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -0,0 +1,77 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" +version = "1.0.0" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.1.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:moloco:3.6.1.0") + testImplementation 'junit:junit:4.13.2' + testImplementation 'androidx.test:core:1.6.1' + testImplementation 'androidx.test:core-ktx:1.6.1' + testImplementation 'androidx.test.ext:junit:1.2.1' + testImplementation 'org.jetbrains.kotlin:kotlin-stdlib:2.0.21' + testImplementation 'org.mockito:mockito-core:5.5.0' + testImplementation 'org.mockito.kotlin:mockito-kotlin:5.1.0' + testImplementation 'org.robolectric:robolectric:4.10.3' + } + + testOptions { + unitTests.all { + useJUnit() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + unitTests { + includeAndroidResources = true + unitTests.returnDefaultValues = true + } + } +} diff --git a/packages/mediation/gma_mediation_moloco/android/gma_mediation_moloco_android.iml b/packages/mediation/gma_mediation_moloco/android/gma_mediation_moloco_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/gma_mediation_moloco_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/android/settings.gradle b/packages/mediation/gma_mediation_moloco/android/settings.gradle new file mode 100644 index 000000000..ce3ca0c56 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_moloco' diff --git a/packages/mediation/gma_mediation_moloco/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_moloco/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..bef83c901 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_moloco/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPlugin.kt b/packages/mediation/gma_mediation_moloco/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPlugin.kt new file mode 100644 index 000000000..be9e46d3a --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the Moloco Adapter. */ +class GmaMediationMolocoPlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_moloco/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPluginTest.kt b/packages/mediation/gma_mediation_moloco/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPluginTest.kt new file mode 100644 index 000000000..1d32bce26 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/GmaMediationMolocoPluginTest.kt @@ -0,0 +1,17 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco + +internal class GmaMediationMolocoPluginTest {} diff --git a/packages/mediation/gma_mediation_moloco/example/README.md b/packages/mediation/gma_mediation_moloco/example/README.md new file mode 100644 index 000000000..5c705f456 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_moloco_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/moloco). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_moloco/example/analysis_options.yaml b/packages/mediation/gma_mediation_moloco/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle b/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle new file mode 100644 index 000000000..fb0b8ab23 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle @@ -0,0 +1,44 @@ +plugins { + id "com.android.application" + id "kotlin-android" + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id "dev.flutter.flutter-gradle-plugin" +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.debug + } + } +} + +flutter { + source = "../.." +} diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..161a45c48 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco_example/MainActivity.kt b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco_example/MainActivity.kt new file mode 100644 index 000000000..c1d0253b3 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_moloco/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/build.gradle b/packages/mediation/gma_mediation_moloco/example/android/build.gradle new file mode 100644 index 000000000..d2ffbffa4 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/build.gradle @@ -0,0 +1,18 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = "../build" +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/packages/mediation/gma_mediation_moloco/example/android/gma_mediation_moloco_example_android.iml b/packages/mediation/gma_mediation_moloco/example/android/gma_mediation_moloco_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/gma_mediation_moloco_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/android/gradle.properties b/packages/mediation/gma_mediation_moloco/example/android/gradle.properties new file mode 100644 index 000000000..259717082 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_moloco/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_moloco/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..7bb2df6ba --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip diff --git a/packages/mediation/gma_mediation_moloco/example/android/gradlew b/packages/mediation/gma_mediation_moloco/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_moloco/example/android/gradlew.bat b/packages/mediation/gma_mediation_moloco/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_moloco/example/android/settings.gradle b/packages/mediation/gma_mediation_moloco/example/android/settings.gradle new file mode 100644 index 000000000..b9e43bd37 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/android/settings.gradle @@ -0,0 +1,25 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.1.0" apply false + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/packages/mediation/gma_mediation_moloco/example/gma_mediation_moloco_example.iml b/packages/mediation/gma_mediation_moloco/example/gma_mediation_moloco_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/gma_mediation_moloco_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..012bf6621 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMolocoExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..8e3ca5dfe --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_moloco/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Info.plist new file mode 100644 index 000000000..71f133ff8 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Moloco + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_moloco_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_moloco/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_moloco/example/ios/RunnerTests/GmaMediationMolocoPluginTests.swift b/packages/mediation/gma_mediation_moloco/example/ios/RunnerTests/GmaMediationMolocoPluginTests.swift new file mode 100644 index 000000000..a326f9a54 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/ios/RunnerTests/GmaMediationMolocoPluginTests.swift @@ -0,0 +1,20 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import UIKit +import XCTest + +@testable import gma_mediation_moloco + +class GmaMediationMolocoPluginTests: XCTestCase {} diff --git a/packages/mediation/gma_mediation_moloco/example/lib/main.dart b/packages/mediation/gma_mediation_moloco/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_moloco/example/pubspec.lock b/packages/mediation/gma_mediation_moloco/example/pubspec.lock new file mode 100644 index 000000000..1e9ac9bef --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: transitive + description: + name: collection + sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf + url: "https://pub.dev" + source: hosted + version: "1.19.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + file: + dependency: transitive + description: + name: file + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_moloco: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" + url: "https://pub.dev" + source: hosted + version: "10.0.7" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" + url: "https://pub.dev" + source: hosted + version: "3.0.8" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + platform: + dependency: transitive + description: + name: platform + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" + url: "https://pub.dev" + source: hosted + version: "3.1.5" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "21e54fd2faf1b5bdd5102afd25012184a6793927648ea81eea80552ac9405b32" + url: "https://pub.dev" + source: hosted + version: "5.0.2" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" + url: "https://pub.dev" + source: hosted + version: "1.12.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" + url: "https://pub.dev" + source: hosted + version: "0.7.3" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b + url: "https://pub.dev" + source: hosted + version: "14.3.0" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8" + url: "https://pub.dev" + source: hosted + version: "3.0.4" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: "7310de7efa4e6df8b3d2ff14aef3f290bc00b43363f2d0028845e6de46507fc9" + url: "https://pub.dev" + source: hosted + version: "3.18.1" +sdks: + dart: ">=3.6.2 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_moloco/example/pubspec.yaml b/packages/mediation/gma_mediation_moloco/example/pubspec.yaml new file mode 100644 index 000000000..810d43dde --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_moloco_example +description: "Demonstrates how to use the gma_mediation_moloco plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.6.2 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_moloco: + # When depending on this package from a real application you should use: + # gma_mediation_moloco: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_moloco/gma_mediation_moloco.iml b/packages/mediation/gma_mediation_moloco/gma_mediation_moloco.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/gma_mediation_moloco.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_moloco/ios/Classes/GmaMediationMolocoPlugin.swift b/packages/mediation/gma_mediation_moloco/ios/Classes/GmaMediationMolocoPlugin.swift new file mode 100644 index 000000000..cfea52906 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/ios/Classes/GmaMediationMolocoPlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the Moloco Adapter. +public class GmaMediationMolocoPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_moloco/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_moloco/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec new file mode 100644 index 000000000..dc163004d --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_moloco' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of Moloco.' + s.description = <<-DESC + Mediation Adapter for Moloco to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/moloco' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.6.0.0' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_moloco/lib/gma_mediation_moloco.dart b/packages/mediation/gma_mediation_moloco/lib/gma_mediation_moloco.dart new file mode 100644 index 000000000..6670bbc6c --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/lib/gma_mediation_moloco.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationMoloco {} diff --git a/packages/mediation/gma_mediation_moloco/pigeons/moloco_sdk_api.dart b/packages/mediation/gma_mediation_moloco/pigeons/moloco_sdk_api.dart new file mode 100644 index 000000000..eebcaf1b0 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/pigeons/moloco_sdk_api.dart @@ -0,0 +1,36 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:pigeon/pigeon.dart'; + +@ConfigurePigeon( + PigeonOptions( + dartOut: 'lib/moloco_sdk_api.g.dart', + dartOptions: DartOptions(), + kotlinOut: + 'android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_moloco/MolocoSDKApi.g.kt', + kotlinOptions: KotlinOptions( + package: + "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco", + ), + swiftOut: 'ios/Classes/MolocoSDKApi.g.swift', + swiftOptions: SwiftOptions(), + dartPackageName: 'gma_mediation_moloco', + ), +) +@HostApi() +/// The generated classes set the channels to call the methods in the corresponding kotlin MolocoSDKApi interface and swift MolocoSDKApi protocol from the dart layer. +abstract class MolocoSDKApi { + // TODO: Add SDK methods here. +} diff --git a/packages/mediation/gma_mediation_moloco/pubspec.lock b/packages/mediation/gma_mediation_moloco/pubspec.lock new file mode 100644 index 000000000..b98eff2a1 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/pubspec.lock @@ -0,0 +1,413 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 + url: "https://pub.dev" + source: hosted + version: "80.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" + url: "https://pub.dev" + source: hosted + version: "7.3.0" + args: + dependency: transitive + description: + name: args + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + url: "https://pub.dev" + source: hosted + version: "2.6.0" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: "28a712df2576b63c6c005c465989a348604960c0958d28be5303ba9baa841ac2" + url: "https://pub.dev" + source: hosted + version: "8.9.3" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" + url: "https://pub.dev" + source: hosted + version: "4.10.1" + collection: + dependency: transitive + description: + name: collection + sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf + url: "https://pub.dev" + source: hosted + version: "1.19.0" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + glob: + dependency: transitive + description: + name: glob + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de + url: "https://pub.dev" + source: hosted + version: "2.1.3" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" + url: "https://pub.dev" + source: hosted + version: "10.0.7" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" + url: "https://pub.dev" + source: hosted + version: "3.0.8" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "9d4a1bc7196b9eb8bcbb1fd9cbb7df28b926948bb4d36a183c207bf7502e0a87" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + pigeon: + dependency: "direct dev" + description: + name: pigeon + sha256: "70aabf0a7afc2665d17f7da9914e1aa461ce991c3bf20dc15ec68b3b96e32238" + url: "https://pub.dev" + source: hosted + version: "24.1.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" + url: "https://pub.dev" + source: hosted + version: "1.12.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" + url: "https://pub.dev" + source: hosted + version: "0.7.3" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b + url: "https://pub.dev" + source: hosted + version: "14.3.0" + watcher: + dependency: transitive + description: + name: watcher + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: "7310de7efa4e6df8b3d2ff14aef3f290bc00b43363f2d0028845e6de46507fc9" + url: "https://pub.dev" + source: hosted + version: "3.18.1" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.6.2 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml new file mode 100644 index 000000000..ca7c27276 --- /dev/null +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -0,0 +1,27 @@ +name: gma_mediation_moloco +description: 'Mediation Adapter that enables sending ad requests to the Moloco + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.6.2 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.3.1 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.4.0 + pigeon: ^24.1.1 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco + pluginClass: GmaMediationMolocoPlugin + ios: + pluginClass: GmaMediationMolocoPlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_moloco From 96f737ac018a18c08da60e157d12b4e0a5cf78c6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 19 Feb 2025 15:30:47 -0800 Subject: [PATCH 068/318] Adds variable with the Chartboost adapter version in the build.gradle file PiperOrigin-RevId: 728840688 --- .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 550e3b429..4aab32c24 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -27,6 +27,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "9.8.1.0" +} + android { if (project.android.hasProperty("namespace")) { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" From 013f4b3b5fd80b521d17f04381a290cc88db934f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 20 Feb 2025 12:31:04 -0800 Subject: [PATCH 069/318] Updating AppLovin Flutter mediation plugin version to 2.1.0 in the mediation developer docs PiperOrigin-RevId: 729210787 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 03c749dfe..fd47898fc 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,10 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### 2.1.0 +- Supports [AppLovin Android adapter version 13.1.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13100). +- Supports [AppLovin iOS adapter version 13.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13100). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 2.0.0 - Supports [AppLovin Android adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13010). - Supports [AppLovin iOS adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13010). From baff587f347c2b017b98ac33f1248b699e7efd7d Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 21 Feb 2025 11:01:08 -0800 Subject: [PATCH 070/318] Updated build.gradle files to have the corresponding plugin version PiperOrigin-RevId: 729588012 --- .../mediation/gma_mediation_chartboost/android/build.gradle | 2 +- .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- packages/mediation/gma_mediation_line/android/build.gradle | 2 +- packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- packages/mediation/gma_mediation_mintegral/android/build.gradle | 2 +- packages/mediation/gma_mediation_pangle/android/build.gradle | 2 +- packages/mediation/gma_mediation_unity/android/build.gradle | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 4aab32c24..b965bd5eb 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.0-SNAPSHOT" +version = "1.0.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 48b63e366..898dd6664 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 61edc30ec..3e1534ce4 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index e41c6323f..bf00536b4 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 8599894d4..cafca3b5d 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index c9c933a71..7068aa472 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0-SNAPSHOT" +version = "1.0.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index e18e0ffe4..30e848a2b 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index d49be5357..d6bf9c416 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version '1.0-SNAPSHOT' +version '1.1.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index e2a17ee8b..2690d6dd2 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version '1.0-SNAPSHOT' +version '2.0.0' buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 37eb0d18b..10716a835 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version '1.0-SNAPSHOT' +version '1.2.0' buildscript { ext.kotlin_version = '2.0.21' From 020ded77ea3c40d1458536fa9504203f9c07e549 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 21 Feb 2025 20:03:55 -0800 Subject: [PATCH 071/318] Updating DTExchange Flutter mediation plugin version to 1.1.0 in the mediation developer docs PiperOrigin-RevId: 729747226 --- .../mediation/gma_mediation_dtexchange/CHANGELOG.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index e97024cc5..1a702ef7e 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,13 +1,13 @@ ## DT Exchange Flutter Mediation Adapter Changelog -#### Next Version +#### 1.1.0 * iOS plugin is now a static framework. -* Verified compatibility with DT Exchange Android adapter version 8.3.5.0. -* Verified compatibility with DT Exchange iOS adapter version 8.3.4.0. +* Supports [DT Exchange Android adapter version 8.3.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8350). +* Supports [DT Exchange iOS adapter version 8.3.4.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8340). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 * Initial release. -* Verified compatibility with DT Exchange Android adapter version 8.2.7.0. -* Verified compatibility with DT Exchange iOS adapter version 8.2.8.0. +* Supports [DT Exchange Android adapter version 8.2.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8270). +* Supports [DT Exchange iOS adapter version 8.2.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8280). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 6f39552f8e86cb5394795413491fcee9ddd18f79 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 21 Feb 2025 20:05:59 -0800 Subject: [PATCH 072/318] Updated the IronSource Flutter adapter version to 1.1.0 PiperOrigin-RevId: 729748478 --- .../mediation/gma_mediation_ironsource/CHANGELOG.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 1dbe439ac..b5260387b 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,13 +1,13 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Next Version +#### 1.1.0 * iOS plugin is now a static framework. -* Verified compatibility with ironSource Android adapter version 8.6.1.0 -* Verified compatibility with ironSource iOS adapter version 8.6.0.0.0 +- Supports [ironSource Android adapter version 8.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8610). +- Supports [ironSource iOS adapter version 8.6.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-86000). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 * Initial release. -* Verified compatibility with ironSource Android adapter version 8.0.0.0 -* Verified compatibility with ironSource iOS adapter version 8.0.0.0.0 +- Supports [ironSource Android adapter version 8.0.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8000). +- Supports [ironSource iOS adapter version 8.0.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-80000). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 3d6494aa7a315a9d367362eb2505e610ce1f906c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 21 Feb 2025 20:07:38 -0800 Subject: [PATCH 073/318] Updating Unity Ads Flutter adapter version to version 1.2.0. PiperOrigin-RevId: 729749342 --- .../mediation/gma_mediation_unity/CHANGELOG.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index dfd3d1194..9f2f6483b 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,12 +1,17 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.2.0 +- Supports [Unity Android adapter version 4.13.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41300). +- Supports [Unity iOS adapter version 4.12.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41250). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### Version 1.1.0 -- Verified compatibility with Unity Android adapter version 4.12.3.0 -- Verified compatibility with Unity iOS adapter version 4.12.3.1 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. +- Supports [Unity Android adapter version 4.12.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41230). +- Supports [Unity iOS adapter version 4.12.3.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41231). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. #### Version 1.0.0 - Initial release. -- Verified compatibility with Unity Android adapter version 4.10.0.0 -- Verified compatibility with Unity iOS adapter version 4.10.0.0 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. +- Supports [Unity Android adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41000). +- Supports [Unity iOS adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41000). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. From 1c896a996feef7b9cfbad0bdb47a21c905ee87c6 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 24 Feb 2025 09:07:03 -0800 Subject: [PATCH 074/318] Created maio Flutter Mediation Adapter PiperOrigin-RevId: 730474640 --- .../mediation/gma_mediation_maio/CHANGELOG.md | 9 + packages/mediation/gma_mediation_maio/LICENSE | 202 ++++++ .../mediation/gma_mediation_maio/README.md | 31 + .../gma_mediation_maio/analysis_options.yaml | 19 + .../gma_mediation_maio/android/build.gradle | 67 ++ .../android/gma_mediation_maio_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationMaioPlugin.kt | 33 + .../GmaMediationmaioPlugin.kt | 24 + .../gma_mediation_maio/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle.kts | 41 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle.kts | 20 + .../gma_mediation_maio_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle.kts | 25 + .../example/gma_mediation_maio_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 99 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../gma_mediation_maio/example/lib/main.dart | 29 + .../gma_mediation_maio/example/pubspec.lock | 323 +++++++++ .../gma_mediation_maio/example/pubspec.yaml | 85 +++ .../gma_mediation_maio/gma_mediation_maio.iml | 17 + .../ios/Classes/GmaMediationMaioPlugin.swift | 20 + .../ios/Classes/GmaMediationmaioPlugin.swift | 23 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_maio.podspec | 21 + .../lib/gma_mediation_maio.dart | 16 + .../mediation/gma_mediation_maio/pubspec.lock | 261 ++++++++ .../mediation/gma_mediation_maio/pubspec.yaml | 26 + 82 files changed, 2876 insertions(+) create mode 100644 packages/mediation/gma_mediation_maio/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_maio/LICENSE create mode 100644 packages/mediation/gma_mediation_maio/README.md create mode 100644 packages/mediation/gma_mediation_maio/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_maio/android/build.gradle create mode 100644 packages/mediation/gma_mediation_maio/android/gma_mediation_maio_android.iml create mode 100644 packages/mediation/gma_mediation_maio/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_maio/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt create mode 100644 packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationmaioPlugin.kt create mode 100644 packages/mediation/gma_mediation_maio/example/README.md create mode 100644 packages/mediation/gma_mediation_maio/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_maio/example/android/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_maio/example/android/gma_mediation_maio_example_android.iml create mode 100644 packages/mediation/gma_mediation_maio/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_maio/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_maio/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_maio/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_maio/example/android/settings.gradle.kts create mode 100644 packages/mediation/gma_mediation_maio/example/gma_mediation_maio_example.iml create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_maio/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_maio/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_maio/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_maio/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_maio/gma_mediation_maio.iml create mode 100644 packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift create mode 100644 packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationmaioPlugin.swift create mode 100644 packages/mediation/gma_mediation_maio/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec create mode 100644 packages/mediation/gma_mediation_maio/lib/gma_mediation_maio.dart create mode 100644 packages/mediation/gma_mediation_maio/pubspec.lock create mode 100644 packages/mediation/gma_mediation_maio/pubspec.yaml diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md new file mode 100644 index 000000000..a525225c0 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -0,0 +1,9 @@ +## maio Flutter Mediation Adapter Changelog + +#### 1.0.0 + +TODO: Add version numbers +* Initial release. +* Verified compatibility with maio Android adapter version a.b.c.d +* Verified compatibility with maio iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_maio/LICENSE b/packages/mediation/gma_mediation_maio/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_maio/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_maio/README.md b/packages/mediation/gma_mediation_maio/README.md new file mode 100644 index 000000000..2bc0b1503 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/README.md @@ -0,0 +1,31 @@ +# Google Mobile Ads Mediation of maio for Flutter + +[![gma_mediation_maio](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation maio Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +maio Ad Network through the Google Mobile Ads SDK. + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [maio](https://developers.google.com/admob/flutter/mediation/maio). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_maio/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_maio/analysis_options.yaml b/packages/mediation/gma_mediation_maio/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle new file mode 100644 index 000000000..0cc99db7e --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -0,0 +1,67 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" +version = "1.0-SNAPSHOT" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.7.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:maio:2.0.3.0") + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_maio/android/gma_mediation_maio_android.iml b/packages/mediation/gma_mediation_maio/android/gma_mediation_maio_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/gma_mediation_maio_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/android/settings.gradle b/packages/mediation/gma_mediation_maio/android/settings.gradle new file mode 100644 index 000000000..79d154e90 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_maio' diff --git a/packages/mediation/gma_mediation_maio/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_maio/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..8a79eb1fb --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt b/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt new file mode 100644 index 000000000..fe5840d80 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt @@ -0,0 +1,33 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio + +import io.flutter.embedding.engine.plugins.FlutterPlugin +import io.flutter.plugin.common.MethodCall +import io.flutter.plugin.common.MethodChannel +import io.flutter.plugin.common.MethodChannel.MethodCallHandler +import io.flutter.plugin.common.MethodChannel.Result + +/** GmaMediationMaioPlugin */ +class GmaMediationMaioPlugin : FlutterPlugin, MethodCallHandler { + /// The MethodChannel that will the communication between Flutter and native Android + /// + /// This local reference serves to register the plugin with the Flutter Engine and unregister it + /// when the Flutter Engine is detached from the Activity + private lateinit var channel: MethodChannel + + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { + channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_maio") + channel.setMethodCallHandler(this) + } + + override fun onMethodCall(call: MethodCall, result: Result) { + if (call.method == "getPlatformVersion") { + result.success("Android ${android.os.Build.VERSION.RELEASE}") + } else { + result.notImplemented() + } + } + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { + channel.setMethodCallHandler(null) + } +} diff --git a/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationmaioPlugin.kt b/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationmaioPlugin.kt new file mode 100644 index 000000000..1c7b2c087 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationmaioPlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the maio Adapter. */ +class GmaMediationmaioPlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_maio/example/README.md b/packages/mediation/gma_mediation_maio/example/README.md new file mode 100644 index 000000000..be0aadd37 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_maio_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/maio). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_maio/example/analysis_options.yaml b/packages/mediation/gma_mediation_maio/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts new file mode 100644 index 000000000..996d3138d --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts @@ -0,0 +1,41 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } + + defaultConfig { + // TODO: Specify your own unique Application ID + // (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { source = "../.." } diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..ac35f6e2b --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio_example/MainActivity.kt b/packages/mediation/gma_mediation_maio/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio_example/MainActivity.kt new file mode 100644 index 000000000..590c3012b --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_maio/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/build.gradle.kts b/packages/mediation/gma_mediation_maio/example/android/build.gradle.kts new file mode 100644 index 000000000..893d07262 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/build.gradle.kts @@ -0,0 +1,20 @@ +allprojects { + repositories { + google() + mavenCentral() + maven { url = uri("https://imobile-maio.github.io/maven") } + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() + +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { project.evaluationDependsOn(":app") } + +tasks.register("clean") { delete(rootProject.layout.buildDirectory) } diff --git a/packages/mediation/gma_mediation_maio/example/android/gma_mediation_maio_example_android.iml b/packages/mediation/gma_mediation_maio/example/android/gma_mediation_maio_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/gma_mediation_maio_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/android/gradle.properties b/packages/mediation/gma_mediation_maio/example/android/gradle.properties new file mode 100644 index 000000000..f018a6181 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_maio/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_maio/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..afa1e8eb0 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_maio/example/android/gradlew b/packages/mediation/gma_mediation_maio/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_maio/example/android/gradlew.bat b/packages/mediation/gma_mediation_maio/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_maio/example/android/settings.gradle.kts b/packages/mediation/gma_mediation_maio/example/android/settings.gradle.kts new file mode 100644 index 000000000..b58f94546 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.0" apply false + id("org.jetbrains.kotlin.android") version "1.8.22" apply false +} + +include(":app") diff --git a/packages/mediation/gma_mediation_maio/example/gma_mediation_maio_example.iml b/packages/mediation/gma_mediation_maio/example/gma_mediation_maio_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/gma_mediation_maio_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_maio/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_maio/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_maio/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_maio/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..acb7a3ed1 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMaioExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..15cada483 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_maio/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_maio/example/ios/Runner/Info.plist new file mode 100644 index 000000000..8a69f473a --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Maio + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_maio_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_maio/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_maio/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_maio/example/lib/main.dart b/packages/mediation/gma_mediation_maio/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_maio/example/pubspec.lock b/packages/mediation/gma_mediation_maio/example/pubspec.lock new file mode 100644 index 000000000..4c929ea20 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_maio: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" + url: "https://pub.dev" + source: hosted + version: "5.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8" + url: "https://pub.dev" + source: hosted + version: "3.0.4" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_maio/example/pubspec.yaml b/packages/mediation/gma_mediation_maio/example/pubspec.yaml new file mode 100644 index 000000000..38a5278b3 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_maio_example +description: "Demonstrates how to use the gma_mediation_maio plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.7.0 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_maio: + # When depending on this package from a real application you should use: + # gma_mediation_maio: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_maio/gma_mediation_maio.iml b/packages/mediation/gma_mediation_maio/gma_mediation_maio.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_maio/gma_mediation_maio.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift b/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift new file mode 100644 index 000000000..4281c49f0 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift @@ -0,0 +1,20 @@ +import Flutter +import UIKit + +public class GmaMediationMaioPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + let channel = FlutterMethodChannel( + name: "gma_mediation_maio", binaryMessenger: registrar.messenger()) + let instance = GmaMediationMaioPlugin() + registrar.addMethodCallDelegate(instance, channel: channel) + } + + public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { + switch call.method { + case "getPlatformVersion": + result("iOS " + UIDevice.current.systemVersion) + default: + result(FlutterMethodNotImplemented) + } + } +} diff --git a/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationmaioPlugin.swift b/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationmaioPlugin.swift new file mode 100644 index 000000000..e4a9a2480 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationmaioPlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the maio Adapter. +public class GmaMediationmaioPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_maio/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_maio/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec new file mode 100644 index 000000000..67ef0ceea --- /dev/null +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_maio' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of maio.' + s.description = <<-DESC + Mediation Adapter for maio to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/maio' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationMaio', '>= 2.1.6.1' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_maio/lib/gma_mediation_maio.dart b/packages/mediation/gma_mediation_maio/lib/gma_mediation_maio.dart new file mode 100644 index 000000000..91f9c8a6f --- /dev/null +++ b/packages/mediation/gma_mediation_maio/lib/gma_mediation_maio.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationmaio {} diff --git a/packages/mediation/gma_mediation_maio/pubspec.lock b/packages/mediation/gma_mediation_maio/pubspec.lock new file mode 100644 index 000000000..e72b0d763 --- /dev/null +++ b/packages/mediation/gma_mediation_maio/pubspec.lock @@ -0,0 +1,261 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "68d71111816dc7c1de358281e506efe574bb5072eae4a19f8a57484bf96825f5" + url: "https://pub.dev" + source: hosted + version: "2.6.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_maio/pubspec.yaml b/packages/mediation/gma_mediation_maio/pubspec.yaml new file mode 100644 index 000000000..4b5fdd8ed --- /dev/null +++ b/packages/mediation/gma_mediation_maio/pubspec.yaml @@ -0,0 +1,26 @@ +name: gma_mediation_maio +description: 'Mediation Adapter that enables sending ad requests to the maio + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.7.0 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.3.1 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.6.1 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio + pluginClass: GmaMediationmaioPlugin + ios: + pluginClass: GmaMediationmaioPlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_maio From 3152b255a36a8f61bcbf5eff0ee03f5df64f5df5 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 24 Feb 2025 09:19:37 -0800 Subject: [PATCH 075/318] Created Flutter Mediation Adapter for i-mobile PiperOrigin-RevId: 730479282 --- .../gma_mediation_imobile/CHANGELOG.md | 9 + .../mediation/gma_mediation_imobile/LICENSE | 202 ++++++ .../mediation/gma_mediation_imobile/README.md | 31 + .../analysis_options.yaml | 19 + .../android/build.gradle | 67 ++ .../android/gma_mediation_imobile_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationImobilePlugin.kt | 33 + .../GmaMediationimobilePlugin.kt | 24 + .../gma_mediation_imobile/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle.kts | 41 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle.kts | 20 + .../gma_mediation_imobile_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle.kts | 25 + .../example/gma_mediation_imobile_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 99 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../example/lib/main.dart | 29 + .../example/pubspec.lock | 323 +++++++++ .../example/pubspec.yaml | 85 +++ .../gma_mediation_imobile.iml | 17 + .../Classes/GmaMediationImobilePlugin.swift | 20 + .../Classes/GmaMediationimobilePlugin.swift | 23 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_imobile.podspec | 21 + .../lib/gma_mediation_imobile.dart | 16 + .../gma_mediation_imobile/pubspec.lock | 261 ++++++++ .../gma_mediation_imobile/pubspec.yaml | 26 + 82 files changed, 2876 insertions(+) create mode 100644 packages/mediation/gma_mediation_imobile/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_imobile/LICENSE create mode 100644 packages/mediation/gma_mediation_imobile/README.md create mode 100644 packages/mediation/gma_mediation_imobile/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_imobile/android/build.gradle create mode 100644 packages/mediation/gma_mediation_imobile/android/gma_mediation_imobile_android.iml create mode 100644 packages/mediation/gma_mediation_imobile/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_imobile/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt create mode 100644 packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationimobilePlugin.kt create mode 100644 packages/mediation/gma_mediation_imobile/example/README.md create mode 100644 packages/mediation/gma_mediation_imobile/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_imobile/example/android/gma_mediation_imobile_example_android.iml create mode 100644 packages/mediation/gma_mediation_imobile/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_imobile/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_imobile/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_imobile/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_imobile/example/android/settings.gradle.kts create mode 100644 packages/mediation/gma_mediation_imobile/example/gma_mediation_imobile_example.iml create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_imobile/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_imobile/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_imobile/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_imobile/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_imobile/gma_mediation_imobile.iml create mode 100644 packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift create mode 100644 packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationimobilePlugin.swift create mode 100644 packages/mediation/gma_mediation_imobile/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec create mode 100644 packages/mediation/gma_mediation_imobile/lib/gma_mediation_imobile.dart create mode 100644 packages/mediation/gma_mediation_imobile/pubspec.lock create mode 100644 packages/mediation/gma_mediation_imobile/pubspec.yaml diff --git a/packages/mediation/gma_mediation_imobile/CHANGELOG.md b/packages/mediation/gma_mediation_imobile/CHANGELOG.md new file mode 100644 index 000000000..cc4488ee2 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/CHANGELOG.md @@ -0,0 +1,9 @@ +## imobile Flutter Mediation Adapter Changelog + +#### 1.0.0 + +TODO: Add version numbers +* Initial release. +* Verified compatibility with imobile Android adapter version a.b.c.d +* Verified compatibility with imobile iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_imobile/LICENSE b/packages/mediation/gma_mediation_imobile/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_imobile/README.md b/packages/mediation/gma_mediation_imobile/README.md new file mode 100644 index 000000000..46679cfbe --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/README.md @@ -0,0 +1,31 @@ +# Google Mobile Ads Mediation of imobile for Flutter + +[![gma_mediation_imobile](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation imobile Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +imobile Ad Network through the Google Mobile Ads SDK. + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [imobile](https://developers.google.com/admob/flutter/mediation/imobile). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_imobile/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_imobile/analysis_options.yaml b/packages/mediation/gma_mediation_imobile/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_imobile/android/build.gradle b/packages/mediation/gma_mediation_imobile/android/build.gradle new file mode 100644 index 000000000..806e4c5f7 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/build.gradle @@ -0,0 +1,67 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile" +version = "1.0-SNAPSHOT" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.7.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:imobile:2.3.2.0") + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_imobile/android/gma_mediation_imobile_android.iml b/packages/mediation/gma_mediation_imobile/android/gma_mediation_imobile_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/gma_mediation_imobile_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/android/settings.gradle b/packages/mediation/gma_mediation_imobile/android/settings.gradle new file mode 100644 index 000000000..7d650fe0a --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_imobile' diff --git a/packages/mediation/gma_mediation_imobile/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_imobile/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..501ea232b --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt b/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt new file mode 100644 index 000000000..70ea68cce --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt @@ -0,0 +1,33 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile + +import io.flutter.embedding.engine.plugins.FlutterPlugin +import io.flutter.plugin.common.MethodCall +import io.flutter.plugin.common.MethodChannel +import io.flutter.plugin.common.MethodChannel.MethodCallHandler +import io.flutter.plugin.common.MethodChannel.Result + +/** GmaMediationImobilePlugin */ +class GmaMediationImobilePlugin : FlutterPlugin, MethodCallHandler { + /// The MethodChannel that will the communication between Flutter and native Android + /// + /// This local reference serves to register the plugin with the Flutter Engine and unregister it + /// when the Flutter Engine is detached from the Activity + private lateinit var channel: MethodChannel + + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { + channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_imobile") + channel.setMethodCallHandler(this) + } + + override fun onMethodCall(call: MethodCall, result: Result) { + if (call.method == "getPlatformVersion") { + result.success("Android ${android.os.Build.VERSION.RELEASE}") + } else { + result.notImplemented() + } + } + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { + channel.setMethodCallHandler(null) + } +} diff --git a/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationimobilePlugin.kt b/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationimobilePlugin.kt new file mode 100644 index 000000000..34614fd45 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationimobilePlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the imobile Adapter. */ +class GmaMediationimobilePlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_imobile/example/README.md b/packages/mediation/gma_mediation_imobile/example/README.md new file mode 100644 index 000000000..4d40328e9 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_imobile_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/imobile). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_imobile/example/analysis_options.yaml b/packages/mediation/gma_mediation_imobile/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts new file mode 100644 index 000000000..8195e83e8 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts @@ -0,0 +1,41 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } + + defaultConfig { + // TODO: Specify your own unique Application ID + // (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { source = "../.." } diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..dbe9d7941 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile_example/MainActivity.kt b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile_example/MainActivity.kt new file mode 100644 index 000000000..09a57a8be --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_imobile/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/build.gradle.kts b/packages/mediation/gma_mediation_imobile/example/android/build.gradle.kts new file mode 100644 index 000000000..2417aee25 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/build.gradle.kts @@ -0,0 +1,20 @@ +allprojects { + repositories { + google() + mavenCentral() + maven { url = uri("https://imobile.github.io/adnw-sdk-android") } + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() + +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { project.evaluationDependsOn(":app") } + +tasks.register("clean") { delete(rootProject.layout.buildDirectory) } diff --git a/packages/mediation/gma_mediation_imobile/example/android/gma_mediation_imobile_example_android.iml b/packages/mediation/gma_mediation_imobile/example/android/gma_mediation_imobile_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/gma_mediation_imobile_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/android/gradle.properties b/packages/mediation/gma_mediation_imobile/example/android/gradle.properties new file mode 100644 index 000000000..f018a6181 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_imobile/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_imobile/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..afa1e8eb0 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_imobile/example/android/gradlew b/packages/mediation/gma_mediation_imobile/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_imobile/example/android/gradlew.bat b/packages/mediation/gma_mediation_imobile/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_imobile/example/android/settings.gradle.kts b/packages/mediation/gma_mediation_imobile/example/android/settings.gradle.kts new file mode 100644 index 000000000..b58f94546 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.0" apply false + id("org.jetbrains.kotlin.android") version "1.8.22" apply false +} + +include(":app") diff --git a/packages/mediation/gma_mediation_imobile/example/gma_mediation_imobile_example.iml b/packages/mediation/gma_mediation_imobile/example/gma_mediation_imobile_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/gma_mediation_imobile_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..ad1b7cd37 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationImobileExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..15cada483 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_imobile/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Info.plist new file mode 100644 index 000000000..3fb255807 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Imobile + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_imobile_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_imobile/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_imobile/example/lib/main.dart b/packages/mediation/gma_mediation_imobile/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_imobile/example/pubspec.lock b/packages/mediation/gma_mediation_imobile/example/pubspec.lock new file mode 100644 index 000000000..9062495ad --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_imobile: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" + url: "https://pub.dev" + source: hosted + version: "5.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8" + url: "https://pub.dev" + source: hosted + version: "3.0.4" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_imobile/example/pubspec.yaml b/packages/mediation/gma_mediation_imobile/example/pubspec.yaml new file mode 100644 index 000000000..4e8a54bbb --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_imobile_example +description: "Demonstrates how to use the gma_mediation_imobile plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.7.0 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_imobile: + # When depending on this package from a real application you should use: + # gma_mediation_imobile: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_imobile/gma_mediation_imobile.iml b/packages/mediation/gma_mediation_imobile/gma_mediation_imobile.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/gma_mediation_imobile.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift b/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift new file mode 100644 index 000000000..30c35e670 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift @@ -0,0 +1,20 @@ +import Flutter +import UIKit + +public class GmaMediationImobilePlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + let channel = FlutterMethodChannel( + name: "gma_mediation_imobile", binaryMessenger: registrar.messenger()) + let instance = GmaMediationImobilePlugin() + registrar.addMethodCallDelegate(instance, channel: channel) + } + + public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { + switch call.method { + case "getPlatformVersion": + result("iOS " + UIDevice.current.systemVersion) + default: + result(FlutterMethodNotImplemented) + } + } +} diff --git a/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationimobilePlugin.swift b/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationimobilePlugin.swift new file mode 100644 index 000000000..6aaeec58e --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationimobilePlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the imobile Adapter. +public class GmaMediationimobilePlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_imobile/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_imobile/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec new file mode 100644 index 000000000..e8d498626 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_imobile' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of imobile.' + s.description = <<-DESC + Mediation Adapter for imobile to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/imobile' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationIMobile', '>= 2.3.4.2' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_imobile/lib/gma_mediation_imobile.dart b/packages/mediation/gma_mediation_imobile/lib/gma_mediation_imobile.dart new file mode 100644 index 000000000..63bfbaa36 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/lib/gma_mediation_imobile.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationimobile {} diff --git a/packages/mediation/gma_mediation_imobile/pubspec.lock b/packages/mediation/gma_mediation_imobile/pubspec.lock new file mode 100644 index 000000000..e72b0d763 --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/pubspec.lock @@ -0,0 +1,261 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "68d71111816dc7c1de358281e506efe574bb5072eae4a19f8a57484bf96825f5" + url: "https://pub.dev" + source: hosted + version: "2.6.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_imobile/pubspec.yaml b/packages/mediation/gma_mediation_imobile/pubspec.yaml new file mode 100644 index 000000000..7d7fae01e --- /dev/null +++ b/packages/mediation/gma_mediation_imobile/pubspec.yaml @@ -0,0 +1,26 @@ +name: gma_mediation_imobile +description: 'Mediation Adapter that enables sending ad requests to the imobile + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.7.0 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.3.1 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.6.1 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile + pluginClass: GmaMediationimobilePlugin + ios: + pluginClass: GmaMediationimobilePlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_imobile From f0cd9690df51eb9370bfad81365fbddec3f8de20 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 24 Feb 2025 14:29:13 -0800 Subject: [PATCH 076/318] Updated new plugins' version in their build.gradle to align with their corresponding flutter plugin version. PiperOrigin-RevId: 730597646 --- packages/mediation/gma_mediation_imobile/android/build.gradle | 2 +- packages/mediation/gma_mediation_maio/android/build.gradle | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_imobile/android/build.gradle b/packages/mediation/gma_mediation_imobile/android/build.gradle index 806e4c5f7..a4310fe3c 100644 --- a/packages/mediation/gma_mediation_imobile/android/build.gradle +++ b/packages/mediation/gma_mediation_imobile/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile" -version = "1.0-SNAPSHOT" +version = "1.0.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 0cc99db7e..654baa73d 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" -version = "1.0-SNAPSHOT" +version = "1.0.0" buildscript { ext.kotlin_version = "1.8.22" From a51c7ca77078d1e682997923cb15f8fc4b6fc2de Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 26 Feb 2025 07:35:00 -0800 Subject: [PATCH 077/318] Updating Mintegral Flutter mediation plugin version to 1.1.0 PiperOrigin-RevId: 731311568 --- .../gma_mediation_mintegral/CHANGELOG.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index de71cc4a8..6c4dc4693 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,14 +1,14 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Next Version -* iOS plugin is now a static framework. -* Verified compatibility with Mintegral Android adapter version 16.8.61.0. -* Verified compatibility with Mintegral iOS adapter version 7.7.5.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +#### 1.1.0 +- iOS plugin is now a static framework. +- Supports [Mintegral Android adapter version 16.8.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-168610). +- Supports [Mintegral iOS adapter version 7.7.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7750). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. #### 1.0.0 -* Initial release. -* Verified compatibility with Mintegral Android adapter version 16.7.21.0. -* Verified compatibility with Mintegral iOS adapter version 7.6.3.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +- Initial release. +- Supports [Mintegral Android adapter version 16.7.21.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-167210). +- Supports [Mintegral iOS adapter version 7.6.3.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7630). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 6072f8d9700bb498fad4b2c924c12dab3c9d0107 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 26 Feb 2025 09:27:50 -0800 Subject: [PATCH 078/318] Updating Line Flutter mediation plugin version to 1.0.0 PiperOrigin-RevId: 731347410 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 560180171..eee5c3cff 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,7 +1,7 @@ ## Line Flutter Mediation Adapter Changelog #### 1.0.0 -* Initial release. -* Verified compatibility with Line Android adapter version 2.9.20250110.0 -* Verified compatibility with Line iOS adapter version 2.9.20241106.1 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Initial release. +- Supports [Line Android adapter version 2.9.20250110.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501100). +- Supports [Line iOS adapter version 2.9.20241106.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411061). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. From a8001a0226ca970df7d15418534e9aa935e9d2c8 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 26 Feb 2025 11:57:06 -0800 Subject: [PATCH 079/318] Updating Moloco Flutter mediation plugin version to 1.0.0 in the mediation developer docs PiperOrigin-RevId: 731402643 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 5e575d66a..9ed2201c1 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,9 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog #### 1.0.0 - -TODO: Add version numbers -* Initial release. -* Verified compatibility with Moloco Android adapter version a.b.c.d -* Verified compatibility with Moloco iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +- Initial release. +- Supports [Moloco Android adapter version 3.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3610). +- Supports [Moloco iOS adapter version 3.6.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3600). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. \ No newline at end of file From 05541358c075f5259717c201dfaba97ddb03c221 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 3 Mar 2025 10:30:49 -0800 Subject: [PATCH 080/318] Update all the Android adapters to use a local variable as dependency version PiperOrigin-RevId: 732973509 --- .../mediation/gma_mediation_chartboost/android/build.gradle | 2 +- .../mediation/gma_mediation_dtexchange/android/build.gradle | 6 +++++- .../mediation/gma_mediation_imobile/android/build.gradle | 6 +++++- .../mediation/gma_mediation_inmobi/android/build.gradle | 6 +++++- .../mediation/gma_mediation_ironsource/android/build.gradle | 6 +++++- .../gma_mediation_liftoffmonetize/android/build.gradle | 6 +++++- packages/mediation/gma_mediation_line/android/build.gradle | 6 +++++- packages/mediation/gma_mediation_maio/android/build.gradle | 6 +++++- packages/mediation/gma_mediation_meta/android/build.gradle | 6 +++++- .../mediation/gma_mediation_mintegral/android/build.gradle | 6 +++++- .../mediation/gma_mediation_moloco/android/build.gradle | 6 +++++- .../mediation/gma_mediation_pangle/android/build.gradle | 6 +++++- packages/mediation/gma_mediation_unity/android/build.gradle | 6 +++++- 13 files changed, 61 insertions(+), 13 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index b965bd5eb..6794faff0 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -57,7 +57,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:chartboost:9.8.1.0") + implementation("com.google.ads.mediation:chartboost:$stringVersion") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 898dd6664..4e86096a3 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "8.3.5.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' @@ -50,7 +54,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:fyber:8.3.5.0' + implementation "com.google.ads.mediation:fyber:$stringVersion" testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_imobile/android/build.gradle b/packages/mediation/gma_mediation_imobile/android/build.gradle index a4310fe3c..96e1c4827 100644 --- a/packages/mediation/gma_mediation_imobile/android/build.gradle +++ b/packages/mediation/gma_mediation_imobile/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "2.3.2.0" +} + android { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile" @@ -48,7 +52,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:imobile:2.3.2.0") + implementation("com.google.ads.mediation:imobile:$stringVersion") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 3e1534ce4..9a4eca580 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "10.8.0.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' @@ -50,7 +54,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:inmobi:10.8.0.0' + implementation "com.google.ads.mediation:inmobi:$stringVersion" testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index bf00536b4..784f3b92f 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -27,6 +27,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "8.6.1.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' @@ -53,7 +57,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:ironsource:8.6.1.0' + implementation "com.google.ads.mediation:ironsource:$stringVersion" testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index cafca3b5d..8387581e7 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "7.4.3.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' @@ -50,7 +54,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:vungle:7.4.3.0' + implementation "com.google.ads.mediation:vungle:$stringVersion" testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index 7068aa472..ef52dcb6d 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "2.9.20250110.0" +} + android { if (project.android.hasProperty("namespace")) { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" @@ -50,7 +54,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:line:2.9.20250110.0") + implementation("com.google.ads.mediation:line:$stringVersion") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 654baa73d..4cf02c065 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "2.0.3.0" +} + android { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" @@ -48,7 +52,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:maio:2.0.3.0") + implementation("com.google.ads.mediation:maio:$stringVersion") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 30e848a2b..45f38bcde 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "6.18.0.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' @@ -50,7 +54,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:facebook:6.18.0.0' + implementation "com.google.ads.mediation:facebook:$stringVersion" testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index d6bf9c416..d706d11d2 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "16.8.61.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' @@ -50,7 +54,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:mintegral:16.8.61.0' + implementation "com.google.ads.mediation:mintegral:$stringVersion" testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index ec77b0b2b..6e67ec0e3 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "3.6.1.0" +} + android { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" @@ -48,7 +52,7 @@ android { } dependencies { - implementation("com.google.ads.mediation:moloco:3.6.1.0") + implementation("com.google.ads.mediation:moloco:$stringVersion") testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.6.1' testImplementation 'androidx.test:core-ktx:1.6.1' diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 2690d6dd2..71b7beb03 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -27,6 +27,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "6.4.0.6.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' @@ -53,7 +57,7 @@ android { } dependencies { - implementation 'com.google.ads.mediation:pangle:6.4.0.6.0' + implementation "com.google.ads.mediation:pangle:$stringVersion" testImplementation 'org.jetbrains.kotlin:kotlin-test' testImplementation 'org.mockito:mockito-core:5.0.0' } diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 10716a835..984349a1b 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: 'com.android.library' apply plugin: 'kotlin-android' +ext { + stringVersion = "4.13.0.0" +} + android { if (project.android.hasProperty("namespace")) { namespace 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' @@ -52,7 +56,7 @@ android { dependencies { implementation 'com.unity3d.ads:unity-ads:4.13.0' - implementation 'com.google.ads.mediation:unity:4.13.0.0' + implementation "com.google.ads.mediation:unity:$stringVersion" testImplementation 'junit:junit:4.13.2' testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' From c95a9c3b53e5bad5cd0f16de727c014ea1e15619 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 6 Mar 2025 09:18:45 -0800 Subject: [PATCH 081/318] Created myTarget Flutter Mediation Adapter PiperOrigin-RevId: 734171531 --- .../gma_mediation_mytarget/CHANGELOG.md | 9 + .../mediation/gma_mediation_mytarget/LICENSE | 202 ++++++ .../gma_mediation_mytarget/README.md | 36 + .../analysis_options.yaml | 19 + .../android/build.gradle | 71 ++ .../gma_mediation_mytarget_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationMytargetPlugin.kt | 33 + .../GmaMediationmytargetPlugin.kt | 24 + .../MytargetFlutterMediationExtras.kt | 35 + .../GmaMediationMytargetPluginTest.kt | 27 + .../GmaMediationmytargetPluginTest.kt | 17 + .../gma_mediation_mytarget/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle.kts | 41 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle.kts | 19 + ...gma_mediation_mytarget_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle.kts | 25 + .../gma_mediation_mytarget_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 99 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../GmaMediationmytargetPluginTests.swift | 20 + .../example/lib/main.dart | 29 + .../example/pubspec.lock | 323 +++++++++ .../example/pubspec.yaml | 85 +++ .../gma_mediation_mytarget.iml | 17 + .../Classes/GmaMediationMytargetPlugin.swift | 20 + .../Classes/GmaMediationmytargetPlugin.swift | 23 + .../MytargetFlutterMediationExtras.swift | 34 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_mytarget.podspec | 21 + .../lib/gma_mediation_mytarget.dart | 16 + .../lib/mytarget_mediation_extras.dart | 39 ++ .../pigeons/mytarget_sdk_api.dart | 36 + .../gma_mediation_mytarget/pubspec.lock | 413 ++++++++++++ .../gma_mediation_mytarget/pubspec.yaml | 27 + 89 files changed, 3245 insertions(+) create mode 100644 packages/mediation/gma_mediation_mytarget/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_mytarget/LICENSE create mode 100644 packages/mediation/gma_mediation_mytarget/README.md create mode 100644 packages/mediation/gma_mediation_mytarget/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_mytarget/android/build.gradle create mode 100644 packages/mediation/gma_mediation_mytarget/android/gma_mediation_mytarget_android.iml create mode 100644 packages/mediation/gma_mediation_mytarget/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPlugin.kt create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/MytargetFlutterMediationExtras.kt create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt create mode 100644 packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPluginTest.kt create mode 100644 packages/mediation/gma_mediation_mytarget/example/README.md create mode 100644 packages/mediation/gma_mediation_mytarget/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/gma_mediation_mytarget_example_android.iml create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_mytarget/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_mytarget/example/android/settings.gradle.kts create mode 100644 packages/mediation/gma_mediation_mytarget/example/gma_mediation_mytarget_example.iml create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_mytarget/example/ios/RunnerTests/GmaMediationmytargetPluginTests.swift create mode 100644 packages/mediation/gma_mediation_mytarget/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_mytarget/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_mytarget/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_mytarget/gma_mediation_mytarget.iml create mode 100644 packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift create mode 100644 packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationmytargetPlugin.swift create mode 100644 packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift create mode 100644 packages/mediation/gma_mediation_mytarget/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec create mode 100644 packages/mediation/gma_mediation_mytarget/lib/gma_mediation_mytarget.dart create mode 100644 packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart create mode 100644 packages/mediation/gma_mediation_mytarget/pigeons/mytarget_sdk_api.dart create mode 100644 packages/mediation/gma_mediation_mytarget/pubspec.lock create mode 100644 packages/mediation/gma_mediation_mytarget/pubspec.yaml diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md new file mode 100644 index 000000000..3e564f289 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -0,0 +1,9 @@ +## mytarget Flutter Mediation Adapter Changelog + +#### 1.0.0 + +TODO: Add version numbers +* Initial release. +* Verified compatibility with mytarget Android adapter version a.b.c.d +* Verified compatibility with mytarget iOS adapter version a.b.c.d +* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. diff --git a/packages/mediation/gma_mediation_mytarget/LICENSE b/packages/mediation/gma_mediation_mytarget/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_mytarget/README.md b/packages/mediation/gma_mediation_mytarget/README.md new file mode 100644 index 000000000..c8ad289de --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/README.md @@ -0,0 +1,36 @@ +# Google Mobile Ads Mediation of mytarget for Flutter + +[![gma_mediation_mytarget](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation mytarget Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +mytarget Ad Network through the Google Mobile Ads SDK. + +This plugin use the [Pigeon Flutter plugin](https://pub.dev/packages/pigeon) to +generate the classes that bridge the dart layer with each platform's code. +To add or modify the third party sdk, use the classes in the pigeons folder +following [this guide](https://github.com/flutter/packages/blob/main/packages/pigeon/example/README.md). + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [mytarget](https://developers.google.com/admob/flutter/mediation/mytarget). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_mytarget/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_mytarget/analysis_options.yaml b/packages/mediation/gma_mediation_mytarget/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle new file mode 100644 index 000000000..2e09a3dc5 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -0,0 +1,71 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" +version = "1.0.0" + +buildscript { + ext.kotlin_version = "1.8.22" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.7.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +ext { + stringVersion = "5.27.1.0" +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + implementation("com.google.ads.mediation:mytarget:$stringVersion") + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_mytarget/android/gma_mediation_mytarget_android.iml b/packages/mediation/gma_mediation_mytarget/android/gma_mediation_mytarget_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/gma_mediation_mytarget_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/android/settings.gradle b/packages/mediation/gma_mediation_mytarget/android/settings.gradle new file mode 100644 index 000000000..34241917e --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_mytarget' diff --git a/packages/mediation/gma_mediation_mytarget/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_mytarget/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..5a0ebc5d7 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt new file mode 100644 index 000000000..abe058951 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt @@ -0,0 +1,33 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + +import io.flutter.embedding.engine.plugins.FlutterPlugin +import io.flutter.plugin.common.MethodCall +import io.flutter.plugin.common.MethodChannel +import io.flutter.plugin.common.MethodChannel.MethodCallHandler +import io.flutter.plugin.common.MethodChannel.Result + +/** GmaMediationMytargetPlugin */ +class GmaMediationMytargetPlugin : FlutterPlugin, MethodCallHandler { + /// The MethodChannel that will the communication between Flutter and native Android + /// + /// This local reference serves to register the plugin with the Flutter Engine and unregister it + /// when the Flutter Engine is detached from the Activity + private lateinit var channel: MethodChannel + + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { + channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_mytarget") + channel.setMethodCallHandler(this) + } + + override fun onMethodCall(call: MethodCall, result: Result) { + if (call.method == "getPlatformVersion") { + result.success("Android ${android.os.Build.VERSION.RELEASE}") + } else { + result.notImplemented() + } + } + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { + channel.setMethodCallHandler(null) + } +} diff --git a/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPlugin.kt b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPlugin.kt new file mode 100644 index 000000000..57506ee22 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the mytarget Adapter. */ +class GmaMediationmytargetPlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/MytargetFlutterMediationExtras.kt b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/MytargetFlutterMediationExtras.kt new file mode 100644 index 000000000..96cc20718 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/MytargetFlutterMediationExtras.kt @@ -0,0 +1,35 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + +import android.os.Bundle +import android.util.Pair +import androidx.core.os.bundleOf +import com.google.android.gms.ads.mediation.Adapter +import com.google.android.gms.ads.mediation.MediationExtrasReceiver +import io.flutter.plugins.googlemobileads.FlutterMediationExtras + +class MytargetFlutterMediationExtras : FlutterMediationExtras() { + private var flutterExtras: Map? = null + + override fun setMediationExtras(extras: MutableMap) { + flutterExtras = extras + } + + override fun getMediationExtras(): Pair, Bundle> { + // MyTarget does not support any extras for Android adapter. + return Pair, Bundle>(Adapter::class.java, bundleOf()) + } +} diff --git a/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt b/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt new file mode 100644 index 000000000..898cf0850 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt @@ -0,0 +1,27 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + +import io.flutter.plugin.common.MethodCall +import io.flutter.plugin.common.MethodChannel +import kotlin.test.Test +import org.mockito.Mockito + +/* + * This demonstrates a simple unit test of the Kotlin portion of this plugin's implementation. + * + * Once you have built the plugin's example app, you can run these tests from the command + * line by running `./gradlew testDebugUnitTest` in the `example/android/` directory, or + * you can run them directly from IDEs that support JUnit such as Android Studio. + */ + +internal class GmaMediationMytargetPluginTest { + @Test + fun onMethodCall_getPlatformVersion_returnsExpectedValue() { + val plugin = GmaMediationMytargetPlugin() + + val call = MethodCall("getPlatformVersion", null) + val mockResult: MethodChannel.Result = Mockito.mock(MethodChannel.Result::class.java) + plugin.onMethodCall(call, mockResult) + + Mockito.verify(mockResult).success("Android " + android.os.Build.VERSION.RELEASE) + } +} diff --git a/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPluginTest.kt b/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPluginTest.kt new file mode 100644 index 000000000..98a1fa6d1 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationmytargetPluginTest.kt @@ -0,0 +1,17 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + +internal class GmaMediationmytargetPluginTest {} diff --git a/packages/mediation/gma_mediation_mytarget/example/README.md b/packages/mediation/gma_mediation_mytarget/example/README.md new file mode 100644 index 000000000..7b76fcf9f --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_mytarget_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/mytarget). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_mytarget/example/analysis_options.yaml b/packages/mediation/gma_mediation_mytarget/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts new file mode 100644 index 000000000..4b36dd009 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts @@ -0,0 +1,41 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } + + defaultConfig { + // TODO: Specify your own unique Application ID + // (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { source = "../.." } diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..f0564d728 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget_example/MainActivity.kt b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget_example/MainActivity.kt new file mode 100644 index 000000000..e06793ea5 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_mytarget/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/build.gradle.kts b/packages/mediation/gma_mediation_mytarget/example/android/build.gradle.kts new file mode 100644 index 000000000..97eed2dd6 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/build.gradle.kts @@ -0,0 +1,19 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() + +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { project.evaluationDependsOn(":app") } + +tasks.register("clean") { delete(rootProject.layout.buildDirectory) } diff --git a/packages/mediation/gma_mediation_mytarget/example/android/gma_mediation_mytarget_example_android.iml b/packages/mediation/gma_mediation_mytarget/example/android/gma_mediation_mytarget_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/gma_mediation_mytarget_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/android/gradle.properties b/packages/mediation/gma_mediation_mytarget/example/android/gradle.properties new file mode 100644 index 000000000..f018a6181 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_mytarget/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_mytarget/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..afa1e8eb0 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_mytarget/example/android/gradlew b/packages/mediation/gma_mediation_mytarget/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_mytarget/example/android/gradlew.bat b/packages/mediation/gma_mediation_mytarget/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_mytarget/example/android/settings.gradle.kts b/packages/mediation/gma_mediation_mytarget/example/android/settings.gradle.kts new file mode 100644 index 000000000..b58f94546 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.0" apply false + id("org.jetbrains.kotlin.android") version "1.8.22" apply false +} + +include(":app") diff --git a/packages/mediation/gma_mediation_mytarget/example/gma_mediation_mytarget_example.iml b/packages/mediation/gma_mediation_mytarget/example/gma_mediation_mytarget_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/gma_mediation_mytarget_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..6ab4a521a --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationMytargetExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..15cada483 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Info.plist new file mode 100644 index 000000000..decee1627 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Mytarget + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_mytarget_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_mytarget/example/ios/RunnerTests/GmaMediationmytargetPluginTests.swift b/packages/mediation/gma_mediation_mytarget/example/ios/RunnerTests/GmaMediationmytargetPluginTests.swift new file mode 100644 index 000000000..f8d21dc1a --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/ios/RunnerTests/GmaMediationmytargetPluginTests.swift @@ -0,0 +1,20 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import UIKit +import XCTest + +@testable import gma_mediation_mytarget + +class GmaMediationmytargetPluginTests: XCTestCase {} diff --git a/packages/mediation/gma_mediation_mytarget/example/lib/main.dart b/packages/mediation/gma_mediation_mytarget/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_mytarget/example/pubspec.lock b/packages/mediation/gma_mediation_mytarget/example/pubspec.lock new file mode 100644 index 000000000..7417a0b17 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_mytarget: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" + url: "https://pub.dev" + source: hosted + version: "5.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "3d773670966f02a646319410766d3b5e1037efb7f07cc68f844d5e06cd4d61c8" + url: "https://pub.dev" + source: hosted + version: "3.0.4" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml new file mode 100644 index 000000000..ee512cc72 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_mytarget_example +description: "Demonstrates how to use the gma_mediation_mytarget plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.7.0 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_mytarget: + # When depending on this package from a real application you should use: + # gma_mediation_mytarget: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_mytarget/gma_mediation_mytarget.iml b/packages/mediation/gma_mediation_mytarget/gma_mediation_mytarget.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/gma_mediation_mytarget.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift b/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift new file mode 100644 index 000000000..c9996c177 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift @@ -0,0 +1,20 @@ +import Flutter +import UIKit + +public class GmaMediationMytargetPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + let channel = FlutterMethodChannel( + name: "gma_mediation_mytarget", binaryMessenger: registrar.messenger()) + let instance = GmaMediationMytargetPlugin() + registrar.addMethodCallDelegate(instance, channel: channel) + } + + public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { + switch call.method { + case "getPlatformVersion": + result("iOS " + UIDevice.current.systemVersion) + default: + result(FlutterMethodNotImplemented) + } + } +} diff --git a/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationmytargetPlugin.swift b/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationmytargetPlugin.swift new file mode 100644 index 000000000..35b8bbb6c --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationmytargetPlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the mytarget Adapter. +public class GmaMediationmytargetPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift b/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift new file mode 100644 index 000000000..2b5ff4a7b --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift @@ -0,0 +1,34 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Foundation +import MyTargetAdapter + +@objc protocol FLTMediationExtras { + var extras: NSMutableDictionary { get } + func getMediationExtras() -> GADAdNetworkExtras +} + +@objc(MytargetFlutterMediationExtras) +class MytargetFlutterMediationExtras: NSObject, FLTMediationExtras { + var extras: NSMutableDictionary = [:] + + func getMediationExtras() -> GADAdNetworkExtras { + let mytargetExtras = GADMAdapterMyTargetExtras() + if let isIOSDebugMode = extras["isIOSDebugMode"] as? Bool { + mytargetExtras.isDebugMode = isIOSDebugMode + } + return mytargetExtras + } +} diff --git a/packages/mediation/gma_mediation_mytarget/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_mytarget/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec new file mode 100644 index 000000000..2525ef6d0 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_mytarget' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of mytarget.' + s.description = <<-DESC + Mediation Adapter for mytarget to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/mytarget' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.25.1.0' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_mytarget/lib/gma_mediation_mytarget.dart b/packages/mediation/gma_mediation_mytarget/lib/gma_mediation_mytarget.dart new file mode 100644 index 000000000..175cd45dc --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/lib/gma_mediation_mytarget.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationmytarget {} diff --git a/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart b/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart new file mode 100644 index 000000000..9ce772059 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart @@ -0,0 +1,39 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Extra information sent to the mytarget adapter through an [AdRequest] or an [AdManagerAdRequest]. +class mytargetMediationExtras implements MediationExtras { + /// Default constructor with required extras value. + const mytargetMediationExtras({required this.isIOSDebugMode}); + + /// Specifies whether to enable logging for iOS. + final bool isIOSDebugMode; + + @override + String getAndroidClassName() { + return 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget.MytargetFlutterMediationExtras'; + } + + @override + String getIOSClassName() { + return 'MytargetFlutterMediationExtras'; + } + + @override + Map getExtras() { + return {'isIOSDebugMode': isIOSDebugMode}; + } +} diff --git a/packages/mediation/gma_mediation_mytarget/pigeons/mytarget_sdk_api.dart b/packages/mediation/gma_mediation_mytarget/pigeons/mytarget_sdk_api.dart new file mode 100644 index 000000000..65823f3b8 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/pigeons/mytarget_sdk_api.dart @@ -0,0 +1,36 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import 'package:pigeon/pigeon.dart'; + +@ConfigurePigeon( + PigeonOptions( + dartOut: 'lib/mytarget_sdk_api.g.dart', + dartOptions: DartOptions(), + kotlinOut: + 'android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/mytargetSDKApi.g.kt', + kotlinOptions: KotlinOptions( + package: + "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget", + ), + swiftOut: 'ios/Classes/mytargetSDKApi.g.swift', + swiftOptions: SwiftOptions(), + dartPackageName: 'gma_mediation_mytarget', + ), +) +@HostApi() +/// The generated classes set the channels to call the methods in the corresponding kotlin mytargetSDKApi interface and swift mytargetSDKApi protocol from the dart layer. +abstract class mytargetSDKApi { + // TODO: Add SDK methods here. +} diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.lock b/packages/mediation/gma_mediation_mytarget/pubspec.lock new file mode 100644 index 000000000..32c7205b0 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/pubspec.lock @@ -0,0 +1,413 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 + url: "https://pub.dev" + source: hosted + version: "80.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" + url: "https://pub.dev" + source: hosted + version: "7.3.0" + args: + dependency: transitive + description: + name: args + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + url: "https://pub.dev" + source: hosted + version: "2.6.0" + async: + dependency: transitive + description: + name: async + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + url: "https://pub.dev" + source: hosted + version: "2.12.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: "28a712df2576b63c6c005c465989a348604960c0958d28be5303ba9baa841ac2" + url: "https://pub.dev" + source: hosted + version: "8.9.3" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" + url: "https://pub.dev" + source: hosted + version: "4.10.1" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + url: "https://pub.dev" + source: hosted + version: "1.3.2" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + glob: + dependency: transitive + description: + name: glob + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de + url: "https://pub.dev" + source: hosted + version: "2.1.3" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: "0d4a3744b5e8ed1b8be6a1b452d309f811688855a497c6113fc4400f922db603" + url: "https://pub.dev" + source: hosted + version: "5.3.1" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + url: "https://pub.dev" + source: hosted + version: "10.0.8" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "68d71111816dc7c1de358281e506efe574bb5072eae4a19f8a57484bf96825f5" + url: "https://pub.dev" + source: hosted + version: "2.6.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + pigeon: + dependency: "direct dev" + description: + name: pigeon + sha256: "1bab69b62617e5f31cf84dcab82c62aa21b7883055f0ca7ff93e76651eef8575" + url: "https://pub.dev" + source: hosted + version: "24.2.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + url: "https://pub.dev" + source: hosted + version: "14.3.1" + watcher: + dependency: transitive + description: + name: watcher + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "512c26ccc5b8a571fd5d13ec994b7509f142ff6faf85835e243dde3538fdc713" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + url: "https://pub.dev" + source: hosted + version: "2.10.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: d7403ef4f042714c9ee2b26eaac4cadae7394cb0d4e608b1dd850c3ff96bd893 + url: "https://pub.dev" + source: hosted + version: "3.18.2" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.7.0 <4.0.0" + flutter: ">=3.24.0" diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml new file mode 100644 index 000000000..60511b510 --- /dev/null +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -0,0 +1,27 @@ +name: gma_mediation_mytarget +description: 'Mediation Adapter that enables sending ad requests to the mytarget + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.7.0 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^5.3.1 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.6.1 + pigeon: ^24.2.1 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget + pluginClass: GmaMediationmytargetPlugin + ios: + pluginClass: GmaMediationmytargetPlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mytarget From c68721655e2a9376248e1171d7444259488a454f Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 7 Mar 2025 10:35:09 -0800 Subject: [PATCH 082/318] Changed format of maio Adapter iOS dependency PiperOrigin-RevId: 734609305 --- .../mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index 67ef0ceea..5a227507c 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMaio', '>= 2.1.6.1' + s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.1' s.platform = :ios, '12.0' s.static_framework = true From f67ee7f56c5614c3c9b5d7f026ba3b71e9f60d93 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 10:43:01 -0800 Subject: [PATCH 083/318] Updating Line Flutter mediation plugin to support the latest adapters (2.9.20250110.1, 2.9.20241106.2) PiperOrigin-RevId: 734612114 --- packages/mediation/gma_mediation_line/android/build.gradle | 4 ++-- .../gma_mediation_line/ios/gma_mediation_line.podspec | 2 +- packages/mediation/gma_mediation_line/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index ef52dcb6d..c85113956 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.9.20250110.0" + stringVersion = "2.9.20250110.1" } android { diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec index 55e77a26d..39cd90024 100644 --- a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_line' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of Line.' s.description = <<-DESC Mediation Adapter for Line to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index e6b88c24e..13d97650a 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_line description: 'Mediation Adapter that enables sending ad requests to the Line ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.5.4 flutter: '>=3.3.0' From ef9ec009ac0a78691bcb2a4c1f93723b2a679712 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 10:47:13 -0800 Subject: [PATCH 084/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.8.3.0, 9.8.1.0) PiperOrigin-RevId: 734613491 --- .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 2 +- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 6794faff0..ce44d416c 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.8.1.0" + stringVersion = "9.8.3.0" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index ad3b9f903..2377058bf 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index fb304450e..f00090ea1 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.5.4 flutter: '>=3.3.0' From 1db15e8b9be332a8b98825ab5da6869d98f92fe1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 10:47:23 -0800 Subject: [PATCH 085/318] Updating DTExchange Flutter mediation plugin to support the latest adapters (8.3.6.0, 8.3.5.1) PiperOrigin-RevId: 734613561 --- .../mediation/gma_mediation_dtexchange/android/build.gradle | 4 ++-- .../ios/gma_mediation_dtexchange.podspec | 4 ++-- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 4e86096a3..ca380d086 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version '1.1.0' +version '1.1.1' buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.3.5.0" + stringVersion = "8.3.6.0" } android { diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index c57563278..a72a8a87a 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.1.0' + s.version = '1.1.1' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.4.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.5.0' s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index 70f4d6cd7..60f2ef4b9 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.1.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: From 9c142e26f03d17400a8cfb3bdf754be8a9213709 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 10:49:38 -0800 Subject: [PATCH 086/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.7.0.0, 8.7.0.0.0) PiperOrigin-RevId: 734614448 --- .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 784f3b92f..4e70d2b1d 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version '1.1.0' +version '1.2.0' buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.6.1.0" + stringVersion = "8.7.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 829b8b41b..2a36ec65e 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.6.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.6.1.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index f054fc7a1..a7452f8c3 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From 2e520db495acbbe46291186d2920f869b3e16bae Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 10:53:25 -0800 Subject: [PATCH 087/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.41.1, 7.7.7.0) PiperOrigin-RevId: 734616256 --- .../mediation/gma_mediation_mintegral/android/build.gradle | 4 ++-- .../ios/gma_mediation_mintegral.podspec | 2 +- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index d706d11d2..1cf4e4a97 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version '1.1.0' +version '1.2.0' buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "16.8.61.0" + stringVersion = "16.9.41.0" } android { diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 29073edf2..b0d41f683 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index fee73cff4..0ca6f4122 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From 0eed1e911c6fece89fc08936b492e928553f432c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 11:11:25 -0800 Subject: [PATCH 088/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.13.1.0, 4.13.2.0) PiperOrigin-RevId: 734623369 --- packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 984349a1b..015d5215e 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version '1.2.0' +version '1.3.0' buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.13.0.0" + stringVersion = "4.13.1.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 07c6f7a32..fdc78f3a7 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.2.0' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.12.5.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.13.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index c67dd8f72..9b80530b2 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 1.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From d90002f3d23cfc3eb33a9c0015f9a4322b592b96 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 11:47:05 -0800 Subject: [PATCH 089/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.7.0.0, 3.7.1.0) PiperOrigin-RevId: 734636485 --- packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 2 +- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 6e67ec0e3..0bc37e62c 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.0.0" +version = "1.1.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.6.1.0" + stringVersion = "3.7.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index dc163004d..f0d190580 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index ca7c27276..8d747e9ae 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.1.0 environment: sdk: ^3.6.2 flutter: '>=3.3.0' From f23184bc43a01e79f8e2cbb5795c88c3510a3b2a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 7 Mar 2025 11:47:05 -0800 Subject: [PATCH 090/318] Updating Pangle Flutter mediation plugin to support the latest adapters (6.5.0.4.1, 6.5.0.8.0) PiperOrigin-RevId: 734636490 --- packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 71b7beb03..ddd53ddf1 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version '2.0.0' +version '2.1.0' buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.4.0.6.0" + stringVersion = "6.5.0.4.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index b58669ea4..9cf4d3d5c 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '2.0.0' + s.version = '2.1.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.4.1.1.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.4.1.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 04f5dba7c..be2dc635c 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 2.0.0 +version: 2.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 7d94590574c5b6567954b1c0827186c12029f37e Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Sat, 8 Mar 2025 17:03:37 -0800 Subject: [PATCH 091/318] Updated format on some build.gradle files. PiperOrigin-RevId: 734981817 --- packages/mediation/gma_mediation_applovin/android/build.gradle | 2 +- .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- packages/mediation/gma_mediation_mintegral/android/build.gradle | 2 +- packages/mediation/gma_mediation_pangle/android/build.gradle | 2 +- packages/mediation/gma_mediation_unity/android/build.gradle | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 1dea0b794..4bbb85734 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version '2.1.0' +version = "2.1.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index ca380d086..2a8bcfda3 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version '1.1.1' +version = "1.1.1" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 9a4eca580..0a7a60e33 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version '1.1.0' +version = "1.1.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 4e70d2b1d..a60d3013b 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version '1.2.0' +version = "1.2.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 8387581e7..da26d92c9 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version '1.1.0' +version = "1.1.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 45f38bcde..b53bdc0c9 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version '1.1.0' +version = "1.1.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index 1cf4e4a97..e7ff0b512 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version '1.2.0' +version = "1.2.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index ddd53ddf1..b7280759c 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version '2.1.0' +version = "2.1.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 015d5215e..1ff0b695b 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version '1.3.0' +version = "1.3.0" buildscript { ext.kotlin_version = '2.0.21' From 624ae233e19b5b7446c2eb4ba2cb490dcf8a45fb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 11 Mar 2025 12:57:29 -0700 Subject: [PATCH 092/318] Updating DT Exchange Flutter mediation plugin version to 1.1.1 in the mediation developer docs. PiperOrigin-RevId: 735858887 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 1a702ef7e..e5431e843 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,10 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### 1.1.1 +* Supports [DT Exchange Android adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8360). +* Supports [DT Exchange iOS adapter version 8.3.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8350). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.1.0 * iOS plugin is now a static framework. * Supports [DT Exchange Android adapter version 8.3.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8350). From c1d721f36a22f93b688b82574aff8bcd7ad5a394 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 11 Mar 2025 16:18:00 -0700 Subject: [PATCH 093/318] Updating Moloco Flutter mediation plugin version to 1.1.0 in the mediation developer docs. PiperOrigin-RevId: 735926756 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 9ed2201c1..08506e84d 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,10 @@ ## Moloco Flutter Mediation Adapter Changelog +#### 1.1.0 +- Supports [Moloco Android adapter version 3.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3700). +- Supports [Moloco iOS adapter version 3.6.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3600). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.0.0 - Initial release. - Supports [Moloco Android adapter version 3.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3610). From 9f2eb22a195618fd7a78733c941aa1349a0e8030 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 12 Mar 2025 12:57:26 -0700 Subject: [PATCH 094/318] Updating Unity Ads Flutter mediation plugin version to 1.3.0 in the mediation developer docs. PiperOrigin-RevId: 736235668 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 9f2f6483b..3158675c8 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,16 +1,21 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Version 1.2.0 +#### 1.3.0 +- Supports [Unity Android adapter version 4.13.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41310). +- Supports [Unity iOS adapter version 4.13.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41310). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### 1.2.0 - Supports [Unity Android adapter version 4.13.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41300). - Supports [Unity iOS adapter version 4.12.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41250). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### Version 1.1.0 +#### 1.1.0 - Supports [Unity Android adapter version 4.12.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41230). - Supports [Unity iOS adapter version 4.12.3.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41231). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. -#### Version 1.0.0 +#### 1.0.0 - Initial release. - Supports [Unity Android adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41000). - Supports [Unity iOS adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41000). From af24b84f33bed04b7a48daafc55f77f481478b4e Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 12 Mar 2025 15:18:16 -0700 Subject: [PATCH 095/318] Updating Pangle Flutter Mediation plugin to version 2.1.0 PiperOrigin-RevId: 736284574 --- .../gma_mediation_pangle/CHANGELOG.md | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index b4728e22f..bec80c4de 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,17 +1,22 @@ ## Pangle Flutter Mediation Adapter Changelog +#### 2.1.0 +- Supports [Pangle Android adapter version 6.5.0.4.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-65041). +- Supports [Pangle iOS adapter version 6.5.0.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-65080). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 2.0.0 -* Verified compatibility with Pangle Android adapter version 6.4.0.6.0. -* Verified compatibility with Pangle iOS adapter version 6.4.1.1.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Supports [Pangle Android adapter version 6.4.0.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-64060). +- Supports [Pangle iOS adapter version 6.4.1.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-64110). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.0. #### 1.1.0 -* Verified compatibility with Pangle Android adapter version 5.9.0.4.0. -* Verified compatibility with Pangle iOS adapter version 5.9.0.7.0. -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +- Supports [Pangle Android adapter version 5.9.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-59040). +- Supports [Pangle iOS adapter version 5.9.0.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-59070). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. #### 1.0.0 -* Initial release. -* Verified compatibility with Pangle Android adapter version 5.8.0.9.0 -* Verified compatibility with Pangle iOS adapter version 5.8.0.8.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.0. +- Initial release. +- Supports [Pangle Android adapter version 5.8.0.9.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-58090). +- Supports [Pangle iOS adapter version 5.8.0.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-58080). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.0.1. \ No newline at end of file From e5ddb0db219448c7353a05f4fdb4de6633cdd472 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 13 Mar 2025 14:26:02 -0700 Subject: [PATCH 096/318] Updating Line Flutter Mediation Plugin to version 1.0.1 PiperOrigin-RevId: 736640056 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index eee5c3cff..f97589e9a 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,7 +1,12 @@ ## Line Flutter Mediation Adapter Changelog +#### 1.0.1 +- Supports [Line Android adapter version 2.9.20250110.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501101). +- Supports [Line iOS adapter version 2.9.20241106.2](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411062). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.0.0 - Initial release. - Supports [Line Android adapter version 2.9.20250110.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501100). - Supports [Line iOS adapter version 2.9.20241106.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411061). -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. \ No newline at end of file From 9bd51dd64566bdd9b91cc8fb3c71638adb7a667f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 13 Mar 2025 14:27:10 -0700 Subject: [PATCH 097/318] Updating Chartboost Flutter Mediation Plugin to versino 1.0.1 PiperOrigin-RevId: 736640450 --- .../gma_mediation_chartboost/CHANGELOG.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 6002bb854..3e82e8bd6 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,8 +1,12 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### 1.0.0 +#### 1.0.1 +- Supports [Chartboost Android adapter version 9.8.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9830). +- Supports [Charboost iOS adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9810). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -* Initial release. -* Verified compatibility with Chartboost Android adapter version 9.8.1.0 -* Verified compatibility with Chartboost iOS adapter version 9.8.0.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. +#### 1.0.0 +- Initial release. +- Supports [Chartboost Android adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9810). +- Supports [Charboost iOS adapter version 9.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9800). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. \ No newline at end of file From 4ea5b4dfd933c0a951c74c4fc457454538789d99 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 14 Mar 2025 10:39:16 -0700 Subject: [PATCH 098/318] Updating Mintegral Flutter mediation plugin version to 1.2.0 in the mediation developer docs. PiperOrigin-RevId: 736912347 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 6c4dc4693..4f1b47029 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,10 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### 1.2.0 +- Supports [Mintegral Android adapter version 16.9.41.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169411). +- Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.1.0 - iOS plugin is now a static framework. - Supports [Mintegral Android adapter version 16.8.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-168610). From 104db2aadc9a37494dcf28b1a3df901bbdc4fa53 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 17 Mar 2025 10:09:05 -0700 Subject: [PATCH 099/318] Removed duplicated files with similar names that caused issues to the repo PiperOrigin-RevId: 737657795 --- .../GmaMediationImobilePlugin.kt | 33 ------------------- .../Classes/GmaMediationImobilePlugin.swift | 20 ----------- .../GmaMediationMaioPlugin.kt | 33 ------------------- .../ios/Classes/GmaMediationMaioPlugin.swift | 20 ----------- .../GmaMediationMytargetPlugin.kt | 33 ------------------- .../Classes/GmaMediationMytargetPlugin.swift | 20 ----------- 6 files changed, 159 deletions(-) delete mode 100644 packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt delete mode 100644 packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift delete mode 100644 packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt delete mode 100644 packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift delete mode 100644 packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt delete mode 100644 packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift diff --git a/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt b/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt deleted file mode 100644 index 70ea68cce..000000000 --- a/packages/mediation/gma_mediation_imobile/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_imobile/GmaMediationImobilePlugin.kt +++ /dev/null @@ -1,33 +0,0 @@ -package io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile - -import io.flutter.embedding.engine.plugins.FlutterPlugin -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import io.flutter.plugin.common.MethodChannel.MethodCallHandler -import io.flutter.plugin.common.MethodChannel.Result - -/** GmaMediationImobilePlugin */ -class GmaMediationImobilePlugin : FlutterPlugin, MethodCallHandler { - /// The MethodChannel that will the communication between Flutter and native Android - /// - /// This local reference serves to register the plugin with the Flutter Engine and unregister it - /// when the Flutter Engine is detached from the Activity - private lateinit var channel: MethodChannel - - override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { - channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_imobile") - channel.setMethodCallHandler(this) - } - - override fun onMethodCall(call: MethodCall, result: Result) { - if (call.method == "getPlatformVersion") { - result.success("Android ${android.os.Build.VERSION.RELEASE}") - } else { - result.notImplemented() - } - } - - override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { - channel.setMethodCallHandler(null) - } -} diff --git a/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift b/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift deleted file mode 100644 index 30c35e670..000000000 --- a/packages/mediation/gma_mediation_imobile/ios/Classes/GmaMediationImobilePlugin.swift +++ /dev/null @@ -1,20 +0,0 @@ -import Flutter -import UIKit - -public class GmaMediationImobilePlugin: NSObject, FlutterPlugin { - public static func register(with registrar: FlutterPluginRegistrar) { - let channel = FlutterMethodChannel( - name: "gma_mediation_imobile", binaryMessenger: registrar.messenger()) - let instance = GmaMediationImobilePlugin() - registrar.addMethodCallDelegate(instance, channel: channel) - } - - public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - switch call.method { - case "getPlatformVersion": - result("iOS " + UIDevice.current.systemVersion) - default: - result(FlutterMethodNotImplemented) - } - } -} diff --git a/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt b/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt deleted file mode 100644 index fe5840d80..000000000 --- a/packages/mediation/gma_mediation_maio/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_maio/GmaMediationMaioPlugin.kt +++ /dev/null @@ -1,33 +0,0 @@ -package io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio - -import io.flutter.embedding.engine.plugins.FlutterPlugin -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import io.flutter.plugin.common.MethodChannel.MethodCallHandler -import io.flutter.plugin.common.MethodChannel.Result - -/** GmaMediationMaioPlugin */ -class GmaMediationMaioPlugin : FlutterPlugin, MethodCallHandler { - /// The MethodChannel that will the communication between Flutter and native Android - /// - /// This local reference serves to register the plugin with the Flutter Engine and unregister it - /// when the Flutter Engine is detached from the Activity - private lateinit var channel: MethodChannel - - override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { - channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_maio") - channel.setMethodCallHandler(this) - } - - override fun onMethodCall(call: MethodCall, result: Result) { - if (call.method == "getPlatformVersion") { - result.success("Android ${android.os.Build.VERSION.RELEASE}") - } else { - result.notImplemented() - } - } - - override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { - channel.setMethodCallHandler(null) - } -} diff --git a/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift b/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift deleted file mode 100644 index 4281c49f0..000000000 --- a/packages/mediation/gma_mediation_maio/ios/Classes/GmaMediationMaioPlugin.swift +++ /dev/null @@ -1,20 +0,0 @@ -import Flutter -import UIKit - -public class GmaMediationMaioPlugin: NSObject, FlutterPlugin { - public static func register(with registrar: FlutterPluginRegistrar) { - let channel = FlutterMethodChannel( - name: "gma_mediation_maio", binaryMessenger: registrar.messenger()) - let instance = GmaMediationMaioPlugin() - registrar.addMethodCallDelegate(instance, channel: channel) - } - - public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - switch call.method { - case "getPlatformVersion": - result("iOS " + UIDevice.current.systemVersion) - default: - result(FlutterMethodNotImplemented) - } - } -} diff --git a/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt b/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt deleted file mode 100644 index abe058951..000000000 --- a/packages/mediation/gma_mediation_mytarget/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPlugin.kt +++ /dev/null @@ -1,33 +0,0 @@ -package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget - -import io.flutter.embedding.engine.plugins.FlutterPlugin -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import io.flutter.plugin.common.MethodChannel.MethodCallHandler -import io.flutter.plugin.common.MethodChannel.Result - -/** GmaMediationMytargetPlugin */ -class GmaMediationMytargetPlugin : FlutterPlugin, MethodCallHandler { - /// The MethodChannel that will the communication between Flutter and native Android - /// - /// This local reference serves to register the plugin with the Flutter Engine and unregister it - /// when the Flutter Engine is detached from the Activity - private lateinit var channel: MethodChannel - - override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { - channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_mytarget") - channel.setMethodCallHandler(this) - } - - override fun onMethodCall(call: MethodCall, result: Result) { - if (call.method == "getPlatformVersion") { - result.success("Android ${android.os.Build.VERSION.RELEASE}") - } else { - result.notImplemented() - } - } - - override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { - channel.setMethodCallHandler(null) - } -} diff --git a/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift b/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift deleted file mode 100644 index c9996c177..000000000 --- a/packages/mediation/gma_mediation_mytarget/ios/Classes/GmaMediationMytargetPlugin.swift +++ /dev/null @@ -1,20 +0,0 @@ -import Flutter -import UIKit - -public class GmaMediationMytargetPlugin: NSObject, FlutterPlugin { - public static func register(with registrar: FlutterPluginRegistrar) { - let channel = FlutterMethodChannel( - name: "gma_mediation_mytarget", binaryMessenger: registrar.messenger()) - let instance = GmaMediationMytargetPlugin() - registrar.addMethodCallDelegate(instance, channel: channel) - } - - public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - switch call.method { - case "getPlatformVersion": - result("iOS " + UIDevice.current.systemVersion) - default: - result(FlutterMethodNotImplemented) - } - } -} From 1de974e05a587b542128ec3057e808a016261f03 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 17 Mar 2025 13:03:27 -0700 Subject: [PATCH 100/318] Updating ironSource Flutter mediation plugin version to 1.2.0 in the mediation developer docs. PiperOrigin-RevId: 737723026 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index b5260387b..a11691b11 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,10 @@ ## ironSource Flutter Mediation Adapter Changelog +#### 1.2.0 +- Supports [ironSource Android adapter version 8.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8700). +- Supports [ironSource iOS adapter version 8.6.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-86100). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.1.0 * iOS plugin is now a static framework. - Supports [ironSource Android adapter version 8.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8610). From 84123e2b56626488fdd3e047868737170d2cb163 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 17 Mar 2025 14:58:09 -0700 Subject: [PATCH 101/318] Downgraded Maio Mediation Adapter for iOS to version 2.1.6.0. Higher versions require GMA SDK 12. PiperOrigin-RevId: 737763346 --- .../mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index 5a227507c..ba77f2409 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.1' + s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.0' s.platform = :ios, '12.0' s.static_framework = true From b3ad670faf98b695131ec9d4e58490cc8d38bc58 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 17 Mar 2025 20:29:03 -0700 Subject: [PATCH 102/318] Updating maio Flutter mediation plugin version to 1.0.0 in the mediation developer docs. PiperOrigin-RevId: 737845639 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index a525225c0..2b37d86d1 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,9 +1,7 @@ ## maio Flutter Mediation Adapter Changelog #### 1.0.0 - -TODO: Add version numbers -* Initial release. -* Verified compatibility with maio Android adapter version a.b.c.d -* Verified compatibility with maio iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +- Initial release. +- Supports [maio Android adapter version 2.0.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2030). +- Supports [maio iOS adapter version 2.1.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2160). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. From 5345f89c3444d718243923354d76c07e2b218e33 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 18 Mar 2025 10:07:16 -0700 Subject: [PATCH 103/318] Delete duplicate test file for myTarget Adapter PiperOrigin-RevId: 738049511 --- .../GmaMediationMytargetPluginTest.kt | 27 ------------------- 1 file changed, 27 deletions(-) delete mode 100644 packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt diff --git a/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt b/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt deleted file mode 100644 index 898cf0850..000000000 --- a/packages/mediation/gma_mediation_mytarget/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_mytarget/GmaMediationMytargetPluginTest.kt +++ /dev/null @@ -1,27 +0,0 @@ -package io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget - -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import kotlin.test.Test -import org.mockito.Mockito - -/* - * This demonstrates a simple unit test of the Kotlin portion of this plugin's implementation. - * - * Once you have built the plugin's example app, you can run these tests from the command - * line by running `./gradlew testDebugUnitTest` in the `example/android/` directory, or - * you can run them directly from IDEs that support JUnit such as Android Studio. - */ - -internal class GmaMediationMytargetPluginTest { - @Test - fun onMethodCall_getPlatformVersion_returnsExpectedValue() { - val plugin = GmaMediationMytargetPlugin() - - val call = MethodCall("getPlatformVersion", null) - val mockResult: MethodChannel.Result = Mockito.mock(MethodChannel.Result::class.java) - plugin.onMethodCall(call, mockResult) - - Mockito.verify(mockResult).success("Android " + android.os.Build.VERSION.RELEASE) - } -} From fefc0711b91b5784e5c86de528a4c41699c96498 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Tue, 25 Mar 2025 10:59:12 -0700 Subject: [PATCH 104/318] Made samples files align with new dart format (#1286) * Made samples files align with new dart format --- .github/workflows/build.yaml | 5 +- .github/workflows/scripts/install-flutter.sh | 1 + .../lib/app_lifecycle_reactor.dart | 5 +- .../lib/app_open_ad_manager.dart | 7 +- .../app_open_example/lib/consent_manager.dart | 35 ++- samples/admob/app_open_example/lib/main.dart | 63 ++--- samples/admob/app_open_example/pubspec.yaml | 2 +- .../banner_example/lib/consent_manager.dart | 35 ++- samples/admob/banner_example/lib/main.dart | 124 +++++---- samples/admob/banner_example/pubspec.yaml | 4 +- .../lib/consent_manager.dart | 35 ++- .../admob/interstitial_example/lib/main.dart | 231 ++++++++-------- .../admob/interstitial_example/pubspec.yaml | 4 +- samples/admob/mediation_example/lib/main.dart | 52 ++-- .../lib/my_method_channel.dart | 23 +- samples/admob/mediation_example/pubspec.yaml | 1 + .../lib/consent_manager.dart | 35 ++- .../native_platform_example/lib/main.dart | 117 ++++---- .../native_platform_example/pubspec.yaml | 8 +- .../lib/consent_manager.dart | 35 ++- .../native_template_example/lib/main.dart | 216 ++++++++------- .../native_template_example/pubspec.yaml | 8 +- .../rewarded_example/lib/consent_manager.dart | 31 ++- .../rewarded_example/lib/countdown_timer.dart | 7 +- samples/admob/rewarded_example/lib/main.dart | 252 ++++++++++-------- samples/admob/rewarded_example/pubspec.yaml | 2 +- .../lib/ad_dialog.dart | 37 ++- .../lib/consent_manager.dart | 35 ++- .../lib/countdown_timer.dart | 7 +- .../lib/main.dart | 238 +++++++++-------- .../pubspec.yaml | 2 +- 31 files changed, 883 insertions(+), 774 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 09bfc3905..637a8f5eb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -104,10 +104,13 @@ jobs: - name: "Flutter Analyze" run: | cd $GOOGLEMOBILEADS_PLUGIN_SCOPE_EXAMPLE + flutter clean + flutter pub get flutter analyze env: GOOGLEMOBILEADS_PLUGIN_SCOPE_EXAMPLE: ${{ matrix.REGEX }} - name: "Flutter Format" run: | - dart format samples/ + dart format --version + dart format samples/ --language-version latest ./.github/workflows/scripts/validate-formatting.sh diff --git a/.github/workflows/scripts/install-flutter.sh b/.github/workflows/scripts/install-flutter.sh index 38f4b8d3a..86677dd5f 100755 --- a/.github/workflows/scripts/install-flutter.sh +++ b/.github/workflows/scripts/install-flutter.sh @@ -14,5 +14,6 @@ # limitations under the License. BRANCH=$1 +git config --global core.autocrlf input git clone https://github.com/flutter/flutter.git --depth 1 -b $BRANCH _flutter echo "$GITHUB_WORKSPACE/_flutter/bin" >> $GITHUB_PATH diff --git a/samples/admob/app_open_example/lib/app_lifecycle_reactor.dart b/samples/admob/app_open_example/lib/app_lifecycle_reactor.dart index 08f4ecebc..b3ef98eee 100644 --- a/samples/admob/app_open_example/lib/app_lifecycle_reactor.dart +++ b/samples/admob/app_open_example/lib/app_lifecycle_reactor.dart @@ -25,8 +25,9 @@ class AppLifecycleReactor { void listenToAppStateChanges() { AppStateEventNotifier.startListening(); - AppStateEventNotifier.appStateStream - .forEach((state) => _onAppStateChanged(state)); + AppStateEventNotifier.appStateStream.forEach( + (state) => _onAppStateChanged(state), + ); } void _onAppStateChanged(AppState appState) { diff --git a/samples/admob/app_open_example/lib/app_open_ad_manager.dart b/samples/admob/app_open_example/lib/app_open_ad_manager.dart index 810f1aab2..26c393266 100644 --- a/samples/admob/app_open_example/lib/app_open_ad_manager.dart +++ b/samples/admob/app_open_example/lib/app_open_ad_manager.dart @@ -29,9 +29,10 @@ class AppOpenAdManager { AppOpenAd? _appOpenAd; bool _isShowingAd = false; - String adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/9257395921' - : 'ca-app-pub-3940256099942544/5575463023'; + String adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/9257395921' + : 'ca-app-pub-3940256099942544/5575463023'; /// Load an [AppOpenAd]. void loadAd() async { diff --git a/samples/admob/app_open_example/lib/consent_manager.dart b/samples/admob/app_open_example/lib/consent_manager.dart index 3bf97a2d9..10e097a39 100644 --- a/samples/admob/app_open_example/lib/consent_manager.dart +++ b/samples/admob/app_open_example/lib/consent_manager.dart @@ -27,28 +27,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/app_open_example/lib/main.dart b/samples/admob/app_open_example/lib/main.dart index 8112bcee2..9ea873618 100644 --- a/samples/admob/app_open_example/lib/main.dart +++ b/samples/admob/app_open_example/lib/main.dart @@ -33,9 +33,7 @@ class MainApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( - theme: ThemeData( - primarySwatch: Colors.blue, - ), + theme: ThemeData(primarySwatch: Colors.blue), home: const HomePage(), ); } @@ -59,15 +57,17 @@ class _HomePageState extends State { void initState() { super.initState(); - _appLifecycleReactor = - AppLifecycleReactor(appOpenAdManager: _appOpenAdManager); + _appLifecycleReactor = AppLifecycleReactor( + appOpenAdManager: _appOpenAdManager, + ); _appLifecycleReactor.listenToAppStateChanges(); ConsentManager.instance.gatherConsent((consentGatheringError) { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Check if a privacy options entry point is required. @@ -92,9 +92,7 @@ class _HomePageState extends State { child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - Text( - 'Leave and switch back to the app to see the ad.', - ), + Text('Leave and switch back to the app to see the ad.'), ], ), ), @@ -110,28 +108,31 @@ class _HomePageState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - }); - case 1: - ConsentManager.instance.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + ConsentManager.instance.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } + }, + ), ]; } diff --git a/samples/admob/app_open_example/pubspec.yaml b/samples/admob/app_open_example/pubspec.yaml index a01627288..694462bc1 100644 --- a/samples/admob/app_open_example/pubspec.yaml +++ b/samples/admob/app_open_example/pubspec.yaml @@ -14,7 +14,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter: uses-material-design: true diff --git a/samples/admob/banner_example/lib/consent_manager.dart b/samples/admob/banner_example/lib/consent_manager.dart index 39c9f3155..60db83b8c 100644 --- a/samples/admob/banner_example/lib/consent_manager.dart +++ b/samples/admob/banner_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index 845f0c3cc..46ac8e45e 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -8,9 +8,7 @@ import 'consent_manager.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: BannerExample(), - )); + runApp(const MaterialApp(home: BannerExample())); } /// An example app that loads a banner ad. @@ -29,9 +27,10 @@ class BannerExampleState extends State { bool _isLoaded = false; Orientation? _currentOrientation; - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/9214589741' - : 'ca-app-pub-3940256099942544/2435281174'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/9214589741' + : 'ca-app-pub-3940256099942544/2435281174'; @override void initState() { @@ -41,7 +40,8 @@ class BannerExampleState extends State { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Check if a privacy options entry point is required. @@ -58,34 +58,38 @@ class BannerExampleState extends State { @override Widget build(BuildContext context) { return MaterialApp( - title: 'Banner Example', - home: Scaffold( - appBar: AppBar( - title: const Text('Banner Example'), actions: _appBarActions()), - body: OrientationBuilder( - builder: (context, orientation) { - if (_currentOrientation != orientation) { - _isLoaded = false; - _loadAd(); - _currentOrientation = orientation; - } - return Stack( - children: [ - if (_bannerAd != null && _isLoaded) - Align( - alignment: Alignment.bottomCenter, - child: SafeArea( - child: SizedBox( - width: _bannerAd!.size.width.toDouble(), - height: _bannerAd!.size.height.toDouble(), - child: AdWidget(ad: _bannerAd!), - ), - ), - ) - ], - ); - }, - ))); + title: 'Banner Example', + home: Scaffold( + appBar: AppBar( + title: const Text('Banner Example'), + actions: _appBarActions(), + ), + body: OrientationBuilder( + builder: (context, orientation) { + if (_currentOrientation != orientation) { + _isLoaded = false; + _loadAd(); + _currentOrientation = orientation; + } + return Stack( + children: [ + if (_bannerAd != null && _isLoaded) + Align( + alignment: Alignment.bottomCenter, + child: SafeArea( + child: SizedBox( + width: _bannerAd!.size.width.toDouble(), + height: _bannerAd!.size.height.toDouble(), + child: AdWidget(ad: _bannerAd!), + ), + ), + ), + ], + ); + }, + ), + ), + ); } List _appBarActions() { @@ -97,28 +101,31 @@ class BannerExampleState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } + }, + ), ]; } @@ -139,7 +146,8 @@ class BannerExampleState extends State { // Get an AnchoredAdaptiveBannerAdSize before loading the ad. final size = await AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize( - MediaQuery.sizeOf(context).width.truncate()); + MediaQuery.sizeOf(context).width.truncate(), + ); if (size == null) { // Unable to get width of anchored banner. diff --git a/samples/admob/banner_example/pubspec.yaml b/samples/admob/banner_example/pubspec.yaml index 3e90e7ac6..da160dbe5 100644 --- a/samples/admob/banner_example/pubspec.yaml +++ b/samples/admob/banner_example/pubspec.yaml @@ -4,7 +4,7 @@ publish_to: "none" version: 1.0.0+1 environment: - sdk: ">=3.1.5 <4.0.0" + sdk: '>=3.2.0 <4.0.0' dependencies: flutter: @@ -14,7 +14,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter: uses-material-design: true diff --git a/samples/admob/interstitial_example/lib/consent_manager.dart b/samples/admob/interstitial_example/lib/consent_manager.dart index 39c9f3155..60db83b8c 100644 --- a/samples/admob/interstitial_example/lib/consent_manager.dart +++ b/samples/admob/interstitial_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/interstitial_example/lib/main.dart b/samples/admob/interstitial_example/lib/main.dart index 23c6b927a..1a166dbf3 100644 --- a/samples/admob/interstitial_example/lib/main.dart +++ b/samples/admob/interstitial_example/lib/main.dart @@ -9,9 +9,7 @@ import 'consent_manager.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: InterstitialExample(), - )); + runApp(const MaterialApp(home: InterstitialExample())); } /// An example app that loads an interstitial ad. @@ -33,9 +31,10 @@ class InterstitialExampleState extends State { late var _counter = _gameLength; Timer? _timer; - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/1033173712' - : 'ca-app-pub-3940256099942544/4411468910'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/1033173712' + : 'ca-app-pub-3940256099942544/4411468910'; @override void initState() { @@ -45,7 +44,8 @@ class InterstitialExampleState extends State { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Kick off the first play of the "game". @@ -91,42 +91,44 @@ class InterstitialExampleState extends State { return MaterialApp( title: 'Interstitial Example', home: Scaffold( - appBar: AppBar( - title: const Text('Interstitial Example'), - actions: _appBarActions(), - ), - body: Stack( - children: [ - const Align( - alignment: Alignment.topCenter, - child: Padding( - padding: EdgeInsets.all(15), - child: Text( - 'The Impossible Game', - style: - TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + appBar: AppBar( + title: const Text('Interstitial Example'), + actions: _appBarActions(), + ), + body: Stack( + children: [ + const Align( + alignment: Alignment.topCenter, + child: Padding( + padding: EdgeInsets.all(15), + child: Text( + 'The Impossible Game', + style: TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + ), + ), + ), + Align( + alignment: Alignment.center, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text('${_counter.toString()} seconds left!'), + Visibility( + visible: _counter == 0, + child: TextButton( + onPressed: () { + _startNewGame(); + _loadAd(); + }, + child: const Text('Play Again'), ), - )), - Align( - alignment: Alignment.center, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text('${_counter.toString()} seconds left!'), - Visibility( - visible: _counter == 0, - child: TextButton( - onPressed: () { - _startNewGame(); - _loadAd(); - }, - child: const Text('Play Again'), - ), - ) - ], - )), - ], - )), + ), + ], + ), + ), + ], + ), + ), ); } @@ -139,31 +141,34 @@ class InterstitialExampleState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - _pauseGame(); - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - _resumeGame(); - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } + }, + ), ]; } @@ -177,54 +182,58 @@ class InterstitialExampleState extends State { } InterstitialAd.load( - adUnitId: _adUnitId, - request: const AdRequest(), - adLoadCallback: InterstitialAdLoadCallback( - // Called when an ad is successfully received. - onAdLoaded: (InterstitialAd ad) { - ad.fullScreenContentCallback = FullScreenContentCallback( - // Called when the ad showed the full screen content. - onAdShowedFullScreenContent: (ad) {}, - // Called when an impression occurs on the ad. - onAdImpression: (ad) {}, - // Called when the ad failed to show full screen content. - onAdFailedToShowFullScreenContent: (ad, err) { - ad.dispose(); - }, - // Called when the ad dismissed full screen content. - onAdDismissedFullScreenContent: (ad) { - ad.dispose(); - }, - // Called when a click is recorded for an ad. - onAdClicked: (ad) {}); - - // Keep a reference to the ad so you can show it later. - _interstitialAd = ad; - }, - // Called when an ad request failed. - onAdFailedToLoad: (LoadAdError error) { - // ignore: avoid_print - print('InterstitialAd failed to load: $error'); - }, - )); + adUnitId: _adUnitId, + request: const AdRequest(), + adLoadCallback: InterstitialAdLoadCallback( + // Called when an ad is successfully received. + onAdLoaded: (InterstitialAd ad) { + ad.fullScreenContentCallback = FullScreenContentCallback( + // Called when the ad showed the full screen content. + onAdShowedFullScreenContent: (ad) {}, + // Called when an impression occurs on the ad. + onAdImpression: (ad) {}, + // Called when the ad failed to show full screen content. + onAdFailedToShowFullScreenContent: (ad, err) { + ad.dispose(); + }, + // Called when the ad dismissed full screen content. + onAdDismissedFullScreenContent: (ad) { + ad.dispose(); + }, + // Called when a click is recorded for an ad. + onAdClicked: (ad) {}, + ); + + // Keep a reference to the ad so you can show it later. + _interstitialAd = ad; + }, + // Called when an ad request failed. + onAdFailedToLoad: (LoadAdError error) { + // ignore: avoid_print + print('InterstitialAd failed to load: $error'); + }, + ), + ); } void _showAlert(BuildContext context) { showDialog( - context: context, - builder: (context) => AlertDialog( - title: const Text('Game Over'), - content: Text('You lasted $_gameLength seconds'), - actions: [ - TextButton( - onPressed: () { - Navigator.pop(context); - _interstitialAd?.show(); - }, - child: const Text('OK'), - ) - ], - )); + context: context, + builder: + (context) => AlertDialog( + title: const Text('Game Over'), + content: Text('You lasted $_gameLength seconds'), + actions: [ + TextButton( + onPressed: () { + Navigator.pop(context); + _interstitialAd?.show(); + }, + child: const Text('OK'), + ), + ], + ), + ); } void _startTimer() { diff --git a/samples/admob/interstitial_example/pubspec.yaml b/samples/admob/interstitial_example/pubspec.yaml index 2dbf2f9ba..c8473c598 100644 --- a/samples/admob/interstitial_example/pubspec.yaml +++ b/samples/admob/interstitial_example/pubspec.yaml @@ -4,7 +4,7 @@ publish_to: 'none' version: 1.0.0+1 environment: - sdk: '>=3.1.5 <4.0.0' + sdk: '>=3.2.0 <4.0.0' dependencies: flutter: @@ -14,7 +14,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter: uses-material-design: true diff --git a/samples/admob/mediation_example/lib/main.dart b/samples/admob/mediation_example/lib/main.dart index 6be0780a5..017799e26 100644 --- a/samples/admob/mediation_example/lib/main.dart +++ b/samples/admob/mediation_example/lib/main.dart @@ -39,9 +39,7 @@ class MyApp extends StatelessWidget { Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Mediation Example', - theme: ThemeData( - primarySwatch: Colors.blue, - ), + theme: ThemeData(primarySwatch: Colors.blue), home: MyHomePage(title: 'Flutter Demo Home Page'), ); } @@ -84,13 +82,14 @@ class _MyHomePageState extends State { listener: BannerAdListener( onAdLoaded: (ad) { debugPrint( - '$ad loaded: ${ad.responseInfo?.mediationAdapterClassName}'); + '$ad loaded: ${ad.responseInfo?.mediationAdapterClassName}', + ); setState(() { _bannerIsLoaded = true; }); }, - onAdFailedToLoad: (ad, error) => - debugPrint('$ad failed to load: ${error.message}'), + onAdFailedToLoad: + (ad, error) => debugPrint('$ad failed to load: ${error.message}'), ), request: AdRequest(nonPersonalizedAds: true), )..load(); @@ -101,44 +100,41 @@ class _MyHomePageState extends State { return [ PopupMenuButton( - itemBuilder: (BuildContext context) => >[ - PopupMenuItem( - value: adInspectorMenuItem, - child: Text(adInspectorMenuItem.label), - ), - ], - onSelected: (item) { - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - }); - }) + itemBuilder: + (BuildContext context) => >[ + PopupMenuItem( + value: adInspectorMenuItem, + child: Text(adInspectorMenuItem.label), + ), + ], + onSelected: (item) { + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + }, + ), ]; } @override Widget build(BuildContext context) { return Scaffold( - appBar: AppBar( - title: Text(widget.title), - actions: _appBarActions(), - ), + appBar: AppBar(title: Text(widget.title), actions: _appBarActions()), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - Text( - 'You have pushed the button this many times:', - ), + Text('You have pushed the button this many times:'), Text( '$_counter', style: Theme.of(context).textTheme.headlineMedium, ), _bannerIsLoaded && _bannerAd != null ? Container( - height: _bannerAd!.size.height.toDouble(), - width: _bannerAd!.size.width.toDouble(), - child: AdWidget(ad: _bannerAd!), - ) + height: _bannerAd!.size.height.toDouble(), + width: _bannerAd!.size.width.toDouble(), + child: AdWidget(ad: _bannerAd!), + ) : Text('ad is not loaded'), ], ), diff --git a/samples/admob/mediation_example/lib/my_method_channel.dart b/samples/admob/mediation_example/lib/my_method_channel.dart index 373b84897..30e1399f6 100644 --- a/samples/admob/mediation_example/lib/my_method_channel.dart +++ b/samples/admob/mediation_example/lib/my_method_channel.dart @@ -18,26 +18,21 @@ import 'package:flutter/services.dart'; /// /// You may need a method channel to call APIs in 3P SDKs used for mediation. class MyMethodChannel { - final MethodChannel _methodChannel = - MethodChannel('com.example.mediationexample/mediation-channel'); + final MethodChannel _methodChannel = MethodChannel( + 'com.example.mediationexample/mediation-channel', + ); /// Sets whether the user is age restricted in AppLovin. Future setAppLovinIsAgeRestrictedUser(bool isAgeRestricted) async { - return _methodChannel.invokeMethod( - 'setIsAgeRestrictedUser', - { - 'isAgeRestricted': isAgeRestricted, - }, - ); + return _methodChannel.invokeMethod('setIsAgeRestrictedUser', { + 'isAgeRestricted': isAgeRestricted, + }); } /// Sets whether we have user consent for the user in AppLovin. Future setHasUserConsent(bool hasUserConsent) async { - return _methodChannel.invokeMethod( - 'setHasUserConsent', - { - 'hasUserConsent': hasUserConsent, - }, - ); + return _methodChannel.invokeMethod('setHasUserConsent', { + 'hasUserConsent': hasUserConsent, + }); } } diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index d9ead2d4f..310ac5fb5 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -31,6 +31,7 @@ dependencies: cupertino_icons: ^1.0.2 dev_dependencies: + flutter_lints: ^5.0.0 flutter_test: sdk: flutter diff --git a/samples/admob/native_platform_example/lib/consent_manager.dart b/samples/admob/native_platform_example/lib/consent_manager.dart index 39c9f3155..60db83b8c 100644 --- a/samples/admob/native_platform_example/lib/consent_manager.dart +++ b/samples/admob/native_platform_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/native_platform_example/lib/main.dart b/samples/admob/native_platform_example/lib/main.dart index 8a4bafc55..0c1d0fc9f 100644 --- a/samples/admob/native_platform_example/lib/main.dart +++ b/samples/admob/native_platform_example/lib/main.dart @@ -8,9 +8,7 @@ import 'consent_manager.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: NativeExample(), - )); + runApp(const MaterialApp(home: NativeExample())); } /// An example app that loads a native ad. @@ -29,9 +27,10 @@ class NativeExampleState extends State { NativeAd? _nativeAd; bool _nativeAdIsLoaded = false; - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/2247696110' - : 'ca-app-pub-3940256099942544/3986624511'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/2247696110' + : 'ca-app-pub-3940256099942544/3986624511'; @override void initState() { @@ -41,7 +40,8 @@ class NativeExampleState extends State { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Check if a privacy options entry point is required. @@ -58,34 +58,42 @@ class NativeExampleState extends State { @override Widget build(BuildContext context) { return MaterialApp( - title: 'Native Example', - home: Scaffold( - appBar: AppBar( - title: const Text('Native Example'), actions: _appBarActions()), - body: Center( - child: Column( + title: 'Native Example', + home: Scaffold( + appBar: AppBar( + title: const Text('Native Example'), + actions: _appBarActions(), + ), + body: Center( + child: Column( + children: [ + Stack( children: [ - Stack(children: [ + SizedBox( + height: _nativeAdHeight, + width: MediaQuery.of(context).size.width, + ), + if (_nativeAdIsLoaded && _nativeAd != null) SizedBox( - height: _nativeAdHeight, - width: MediaQuery.of(context).size.width), - if (_nativeAdIsLoaded && _nativeAd != null) - SizedBox( - height: _nativeAdHeight, - width: MediaQuery.of(context).size.width, - child: AdWidget(ad: _nativeAd!)) - ]), - TextButton( - onPressed: _loadAd, child: const Text("Refresh Ad")), - FutureBuilder( - future: MobileAds.instance.getVersionString(), - builder: (context, snapshot) { - var versionString = snapshot.data ?? ""; - return Text(versionString); - }) + height: _nativeAdHeight, + width: MediaQuery.of(context).size.width, + child: AdWidget(ad: _nativeAd!), + ), ], ), - ))); + TextButton(onPressed: _loadAd, child: const Text("Refresh Ad")), + FutureBuilder( + future: MobileAds.instance.getVersionString(), + builder: (context, snapshot) { + var versionString = snapshot.data ?? ""; + return Text(versionString); + }, + ), + ], + ), + ), + ), + ); } List _appBarActions() { @@ -97,28 +105,31 @@ class NativeExampleState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } + }, + ), ]; } diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index db5fb9759..63598e5ff 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -37,16 +37,10 @@ dependencies: cupertino_icons: ^1.0.2 dev_dependencies: + flutter_lints: ^5.0.0 flutter_test: sdk: flutter - # The "flutter_lints" package below contains a set of recommended lints to - # encourage good coding practices. The lint set provided by the package is - # activated in the `analysis_options.yaml` file located at the root of your - # package. See that file for information about deactivating specific lint - # rules and activating additional ones. - flutter_lints: ^2.0.0 - # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/samples/admob/native_template_example/lib/consent_manager.dart b/samples/admob/native_template_example/lib/consent_manager.dart index 39c9f3155..60db83b8c 100644 --- a/samples/admob/native_template_example/lib/consent_manager.dart +++ b/samples/admob/native_template_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/native_template_example/lib/main.dart b/samples/admob/native_template_example/lib/main.dart index 06764c077..186ce2f7a 100644 --- a/samples/admob/native_template_example/lib/main.dart +++ b/samples/admob/native_template_example/lib/main.dart @@ -8,9 +8,7 @@ import 'consent_manager.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: NativeExample(), - )); + runApp(const MaterialApp(home: NativeExample())); } /// An example app that loads a native ad. @@ -31,9 +29,10 @@ class NativeExampleState extends State { // final double _adAspectRatioSmall = (91 / 355); final double _adAspectRatioMedium = (370 / 355); - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/2247696110' - : 'ca-app-pub-3940256099942544/3986624511'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/2247696110' + : 'ca-app-pub-3940256099942544/3986624511'; @override void initState() { @@ -43,7 +42,8 @@ class NativeExampleState extends State { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Check if a privacy options entry point is required. @@ -60,40 +60,48 @@ class NativeExampleState extends State { @override Widget build(BuildContext context) { return MaterialApp( - title: 'Native Example', - home: Scaffold( - appBar: AppBar( - title: const Text('Native Example'), actions: _appBarActions()), - body: SizedBox( - height: MediaQuery.of(context).size.height, - width: MediaQuery.of(context).size.width, - child: Column( + title: 'Native Example', + home: Scaffold( + appBar: AppBar( + title: const Text('Native Example'), + actions: _appBarActions(), + ), + body: SizedBox( + height: MediaQuery.of(context).size.height, + width: MediaQuery.of(context).size.width, + child: Column( + children: [ + Stack( children: [ - Stack( - children: [ - SizedBox( - height: MediaQuery.of(context).size.width * - _adAspectRatioMedium, - width: MediaQuery.of(context).size.width), - if (_nativeAdIsLoaded && _nativeAd != null) - SizedBox( - height: MediaQuery.of(context).size.width * - _adAspectRatioMedium, - width: MediaQuery.of(context).size.width, - child: AdWidget(ad: _nativeAd!)), - ], + SizedBox( + height: + MediaQuery.of(context).size.width * + _adAspectRatioMedium, + width: MediaQuery.of(context).size.width, ), - TextButton( - onPressed: _loadAd, child: const Text("Refresh Ad")), - FutureBuilder( - future: MobileAds.instance.getVersionString(), - builder: (context, snapshot) { - var versionString = snapshot.data ?? ""; - return Text(versionString); - }) + if (_nativeAdIsLoaded && _nativeAd != null) + SizedBox( + height: + MediaQuery.of(context).size.width * + _adAspectRatioMedium, + width: MediaQuery.of(context).size.width, + child: AdWidget(ad: _nativeAd!), + ), ], ), - ))); + TextButton(onPressed: _loadAd, child: const Text("Refresh Ad")), + FutureBuilder( + future: MobileAds.instance.getVersionString(), + builder: (context, snapshot) { + var versionString = snapshot.data ?? ""; + return Text(versionString); + }, + ), + ], + ), + ), + ), + ); } List _appBarActions() { @@ -105,28 +113,31 @@ class NativeExampleState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + }); + } + }, + ), ]; } @@ -144,48 +155,53 @@ class NativeExampleState extends State { }); _nativeAd = NativeAd( - adUnitId: _adUnitId, - listener: NativeAdListener( - onAdLoaded: (ad) { - // ignore: avoid_print - print('$NativeAd loaded.'); - setState(() { - _nativeAdIsLoaded = true; - }); - }, - onAdFailedToLoad: (ad, error) { - // ignore: avoid_print - print('$NativeAd failedToLoad: $error'); - ad.dispose(); - }, - onAdClicked: (ad) {}, - onAdImpression: (ad) {}, - onAdClosed: (ad) {}, - onAdOpened: (ad) {}, - onAdWillDismissScreen: (ad) {}, - onPaidEvent: (ad, valueMicros, precision, currencyCode) {}, + adUnitId: _adUnitId, + listener: NativeAdListener( + onAdLoaded: (ad) { + // ignore: avoid_print + print('$NativeAd loaded.'); + setState(() { + _nativeAdIsLoaded = true; + }); + }, + onAdFailedToLoad: (ad, error) { + // ignore: avoid_print + print('$NativeAd failedToLoad: $error'); + ad.dispose(); + }, + onAdClicked: (ad) {}, + onAdImpression: (ad) {}, + onAdClosed: (ad) {}, + onAdOpened: (ad) {}, + onAdWillDismissScreen: (ad) {}, + onPaidEvent: (ad, valueMicros, precision, currencyCode) {}, + ), + request: const AdRequest(), + nativeTemplateStyle: NativeTemplateStyle( + templateType: TemplateType.medium, + mainBackgroundColor: const Color(0xfffffbed), + callToActionTextStyle: NativeTemplateTextStyle( + textColor: Colors.white, + style: NativeTemplateFontStyle.monospace, + size: 16.0, + ), + primaryTextStyle: NativeTemplateTextStyle( + textColor: Colors.black, + style: NativeTemplateFontStyle.bold, + size: 16.0, + ), + secondaryTextStyle: NativeTemplateTextStyle( + textColor: Colors.black, + style: NativeTemplateFontStyle.italic, + size: 16.0, + ), + tertiaryTextStyle: NativeTemplateTextStyle( + textColor: Colors.black, + style: NativeTemplateFontStyle.normal, + size: 16.0, ), - request: const AdRequest(), - nativeTemplateStyle: NativeTemplateStyle( - templateType: TemplateType.medium, - mainBackgroundColor: const Color(0xfffffbed), - callToActionTextStyle: NativeTemplateTextStyle( - textColor: Colors.white, - style: NativeTemplateFontStyle.monospace, - size: 16.0), - primaryTextStyle: NativeTemplateTextStyle( - textColor: Colors.black, - style: NativeTemplateFontStyle.bold, - size: 16.0), - secondaryTextStyle: NativeTemplateTextStyle( - textColor: Colors.black, - style: NativeTemplateFontStyle.italic, - size: 16.0), - tertiaryTextStyle: NativeTemplateTextStyle( - textColor: Colors.black, - style: NativeTemplateFontStyle.normal, - size: 16.0))) - ..load(); + ), + )..load(); } /// Redraw the app bar actions if a privacy options entry point is required. diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index 66226f4f1..5d3f84a3d 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -37,16 +37,10 @@ dependencies: cupertino_icons: ^1.0.2 dev_dependencies: + flutter_lints: ^5.0.0 flutter_test: sdk: flutter - # The "flutter_lints" package below contains a set of recommended lints to - # encourage good coding practices. The lint set provided by the package is - # activated in the `analysis_options.yaml` file located at the root of your - # package. See that file for information about deactivating specific lint - # rules and activating additional ones. - flutter_lints: ^2.0.0 - # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/samples/admob/rewarded_example/lib/consent_manager.dart b/samples/admob/rewarded_example/lib/consent_manager.dart index 7dbd9bf84..e80f19e86 100644 --- a/samples/admob/rewarded_example/lib/consent_manager.dart +++ b/samples/admob/rewarded_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( debugGeography: DebugGeography.debugGeographyEea, ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/rewarded_example/lib/countdown_timer.dart b/samples/admob/rewarded_example/lib/countdown_timer.dart index 6d378b7c3..ad5c5e3a6 100644 --- a/samples/admob/rewarded_example/lib/countdown_timer.dart +++ b/samples/admob/rewarded_example/lib/countdown_timer.dart @@ -1,12 +1,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; -enum CountdownState { - notStarted, - active, - paused, - ended, -} +enum CountdownState { notStarted, active, paused, ended } /// A simple class that keeps track of a decrementing timer. class CountdownTimer extends ChangeNotifier { diff --git a/samples/admob/rewarded_example/lib/main.dart b/samples/admob/rewarded_example/lib/main.dart index 01c667d9a..367698924 100644 --- a/samples/admob/rewarded_example/lib/main.dart +++ b/samples/admob/rewarded_example/lib/main.dart @@ -9,9 +9,7 @@ import 'countdown_timer.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: RewardedExample(), - )); + runApp(const MaterialApp(home: RewardedExample())); } /// An example app that loads a rewarded ad. @@ -33,9 +31,10 @@ class RewardedExampleState extends State { var _coins = 0; RewardedAd? _rewardedAd; - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/5224354917' - : 'ca-app-pub-3940256099942544/1712485313'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5224354917' + : 'ca-app-pub-3940256099942544/1712485313'; @override void initState() { @@ -45,7 +44,8 @@ class RewardedExampleState extends State { if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Kick off the first play of the "game". @@ -62,15 +62,17 @@ class RewardedExampleState extends State { _initializeMobileAdsSDK(); // Show the "Watch video" button when the timer reaches zero. - _countdownTimer.addListener(() => setState(() { - if (_countdownTimer.isComplete) { - _gameOver = true; - _showWatchVideoButton = true; - _coins += 1; - } else { - _showWatchVideoButton = false; - } - })); + _countdownTimer.addListener( + () => setState(() { + if (_countdownTimer.isComplete) { + _gameOver = true; + _showWatchVideoButton = true; + _coins += 1; + } else { + _showWatchVideoButton = false; + } + }), + ); } void _startNewGame() { @@ -100,65 +102,75 @@ class RewardedExampleState extends State { return MaterialApp( title: 'Rewarded Example', home: Scaffold( - appBar: AppBar( - title: const Text('Rewarded Example'), actions: _appBarActions()), - body: Stack( - children: [ - const Align( - alignment: Alignment.topCenter, - child: Padding( - padding: EdgeInsets.all(15), - child: Text( - 'The Impossible Game', - style: - TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + appBar: AppBar( + title: const Text('Rewarded Example'), + actions: _appBarActions(), + ), + body: Stack( + children: [ + const Align( + alignment: Alignment.topCenter, + child: Padding( + padding: EdgeInsets.all(15), + child: Text( + 'The Impossible Game', + style: TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + ), + ), + ), + Align( + alignment: Alignment.center, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + _countdownTimer.isComplete + ? 'Game over!' + : '${_countdownTimer.timeLeft} seconds left!', + ), + Visibility( + visible: _countdownTimer.isComplete, + child: TextButton( + onPressed: () { + _startNewGame(); + _loadAd(); + }, + child: const Text('Play Again'), ), - )), - Align( - alignment: Alignment.center, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(_countdownTimer.isComplete - ? 'Game over!' - : '${_countdownTimer.timeLeft} seconds left!'), - Visibility( - visible: _countdownTimer.isComplete, - child: TextButton( - onPressed: () { - _startNewGame(); - _loadAd(); - }, - child: const Text('Play Again'), - ), - ), - Visibility( - visible: _showWatchVideoButton, - child: TextButton( - onPressed: () { - setState(() => _showWatchVideoButton = false); + ), + Visibility( + visible: _showWatchVideoButton, + child: TextButton( + onPressed: () { + setState(() => _showWatchVideoButton = false); - _rewardedAd?.show(onUserEarnedReward: - (AdWithoutView ad, RewardItem rewardItem) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); - setState( - () => _coins += rewardItem.amount.toInt()); - }); - }, - child: const Text( - 'Watch video for additional 10 coins'), - )) - ], - )), - Align( - alignment: Alignment.bottomLeft, - child: Padding( - padding: const EdgeInsets.all(15), - child: Text('Coins: $_coins')), + _rewardedAd?.show( + onUserEarnedReward: ( + AdWithoutView ad, + RewardItem rewardItem, + ) { + // ignore: avoid_print + print('Reward amount: ${rewardItem.amount}'); + setState(() => _coins += rewardItem.amount.toInt()); + }, + ); + }, + child: const Text('Watch video for additional 10 coins'), + ), + ), + ], + ), + ), + Align( + alignment: Alignment.bottomLeft, + child: Padding( + padding: const EdgeInsets.all(15), + child: Text('Coins: $_coins'), ), - ], - )), + ), + ], + ), + ), ); } @@ -171,31 +183,34 @@ class RewardedExampleState extends State { return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - _pauseGame(); - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - _resumeGame(); - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } + }, + ), ]; } @@ -209,31 +224,36 @@ class RewardedExampleState extends State { } RewardedAd.load( - adUnitId: _adUnitId, - request: const AdRequest(), - rewardedAdLoadCallback: RewardedAdLoadCallback(onAdLoaded: (ad) { + adUnitId: _adUnitId, + request: const AdRequest(), + rewardedAdLoadCallback: RewardedAdLoadCallback( + onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( - // Called when the ad showed the full screen content. - onAdShowedFullScreenContent: (ad) {}, - // Called when an impression occurs on the ad. - onAdImpression: (ad) {}, - // Called when the ad failed to show full screen content. - onAdFailedToShowFullScreenContent: (ad, err) { - ad.dispose(); - }, - // Called when the ad dismissed full screen content. - onAdDismissedFullScreenContent: (ad) { - ad.dispose(); - }, - // Called when a click is recorded for an ad. - onAdClicked: (ad) {}); + // Called when the ad showed the full screen content. + onAdShowedFullScreenContent: (ad) {}, + // Called when an impression occurs on the ad. + onAdImpression: (ad) {}, + // Called when the ad failed to show full screen content. + onAdFailedToShowFullScreenContent: (ad, err) { + ad.dispose(); + }, + // Called when the ad dismissed full screen content. + onAdDismissedFullScreenContent: (ad) { + ad.dispose(); + }, + // Called when a click is recorded for an ad. + onAdClicked: (ad) {}, + ); // Keep a reference to the ad so you can show it later. _rewardedAd = ad; - }, onAdFailedToLoad: (LoadAdError error) { + }, + onAdFailedToLoad: (LoadAdError error) { // ignore: avoid_print print('RewardedAd failed to load: $error'); - })); + }, + ), + ); } /// Redraw the app bar actions if a privacy options entry point is required. diff --git a/samples/admob/rewarded_example/pubspec.yaml b/samples/admob/rewarded_example/pubspec.yaml index 6bd022dfd..3b382117c 100644 --- a/samples/admob/rewarded_example/pubspec.yaml +++ b/samples/admob/rewarded_example/pubspec.yaml @@ -14,7 +14,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter: uses-material-design: true diff --git a/samples/admob/rewarded_interstitial_example/lib/ad_dialog.dart b/samples/admob/rewarded_interstitial_example/lib/ad_dialog.dart index 340c4a351..f1d8f67b6 100644 --- a/samples/admob/rewarded_interstitial_example/lib/ad_dialog.dart +++ b/samples/admob/rewarded_interstitial_example/lib/ad_dialog.dart @@ -5,10 +5,7 @@ import 'package:flutter/material.dart'; class AdDialog extends StatefulWidget { final VoidCallback showAd; - const AdDialog({ - Key? key, - required this.showAd, - }) : super(key: key); + const AdDialog({super.key, required this.showAd}); @override AdDialogState createState() => AdDialogState(); @@ -19,12 +16,14 @@ class AdDialogState extends State { @override void initState() { - _countdownTimer.addListener(() => setState(() { - if (_countdownTimer.isComplete) { - Navigator.pop(context); - widget.showAd(); - } - })); + _countdownTimer.addListener( + () => setState(() { + if (_countdownTimer.isComplete) { + Navigator.pop(context); + widget.showAd(); + } + }), + ); _countdownTimer.start(); super.initState(); @@ -34,17 +33,17 @@ class AdDialogState extends State { Widget build(BuildContext context) { return AlertDialog( title: const Text('Watch an ad for 10 more coins'), - content: Text('Video starting in ${_countdownTimer.timeLeft} seconds...', - style: const TextStyle(color: Colors.grey)), + content: Text( + 'Video starting in ${_countdownTimer.timeLeft} seconds...', + style: const TextStyle(color: Colors.grey), + ), actions: [ TextButton( - onPressed: () { - Navigator.pop(context); - }, - child: const Text( - 'No thanks', - style: TextStyle(color: Colors.red), - )) + onPressed: () { + Navigator.pop(context); + }, + child: const Text('No thanks', style: TextStyle(color: Colors.red)), + ), ], ); } diff --git a/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart b/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart index 39c9f3155..60db83b8c 100644 --- a/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart +++ b/samples/admob/rewarded_interstitial_example/lib/consent_manager.dart @@ -24,28 +24,35 @@ class ConsentManager { /// Helper method to call the Mobile Ads SDK to request consent information /// and load/show a consent form if necessary. void gatherConsent( - OnConsentGatheringCompleteListener onConsentGatheringCompleteListener) { + OnConsentGatheringCompleteListener onConsentGatheringCompleteListener, + ) { // For testing purposes, you can force a DebugGeography of Eea or NotEea. ConsentDebugSettings debugSettings = ConsentDebugSettings( - // debugGeography: DebugGeography.debugGeographyEea, - ); - ConsentRequestParameters params = - ConsentRequestParameters(consentDebugSettings: debugSettings); + // debugGeography: DebugGeography.debugGeographyEea, + ); + ConsentRequestParameters params = ConsentRequestParameters( + consentDebugSettings: debugSettings, + ); // Requesting an update to consent information should be called on every app launch. - ConsentInformation.instance.requestConsentInfoUpdate(params, () async { - ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { - // Consent has been gathered. - onConsentGatheringCompleteListener(loadAndShowError); - }); - }, (FormError formError) { - onConsentGatheringCompleteListener(formError); - }); + ConsentInformation.instance.requestConsentInfoUpdate( + params, + () async { + ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) { + // Consent has been gathered. + onConsentGatheringCompleteListener(loadAndShowError); + }); + }, + (FormError formError) { + onConsentGatheringCompleteListener(formError); + }, + ); } /// Helper method to call the Mobile Ads SDK method to show the privacy options form. void showPrivacyOptionsForm( - OnConsentFormDismissedListener onConsentFormDismissedListener) { + OnConsentFormDismissedListener onConsentFormDismissedListener, + ) { ConsentForm.showPrivacyOptionsForm(onConsentFormDismissedListener); } } diff --git a/samples/admob/rewarded_interstitial_example/lib/countdown_timer.dart b/samples/admob/rewarded_interstitial_example/lib/countdown_timer.dart index a50d1f7a9..c1ab3c57a 100644 --- a/samples/admob/rewarded_interstitial_example/lib/countdown_timer.dart +++ b/samples/admob/rewarded_interstitial_example/lib/countdown_timer.dart @@ -1,12 +1,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; -enum CountdownState { - notStarted, - active, - paused, - ended, -} +enum CountdownState { notStarted, active, paused, ended } /// A simple class that keeps track of a decrementing timer. class CountdownTimer extends ChangeNotifier { diff --git a/samples/admob/rewarded_interstitial_example/lib/main.dart b/samples/admob/rewarded_interstitial_example/lib/main.dart index 3b25c4514..cf9328950 100644 --- a/samples/admob/rewarded_interstitial_example/lib/main.dart +++ b/samples/admob/rewarded_interstitial_example/lib/main.dart @@ -10,9 +10,7 @@ import 'consent_manager.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); - runApp(const MaterialApp( - home: RewardedInterstitialExample(), - )); + runApp(const MaterialApp(home: RewardedInterstitialExample())); } /// An example app that loads a rewarded interstitial ad. @@ -35,9 +33,10 @@ class RewardedInterstitialExampleState var _isPrivacyOptionsRequired = false; RewardedInterstitialAd? _rewardedInterstitialAd; - final String _adUnitId = Platform.isAndroid - ? 'ca-app-pub-3940256099942544/5354046379' - : 'ca-app-pub-3940256099942544/6978759866'; + final String _adUnitId = + Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5354046379' + : 'ca-app-pub-3940256099942544/6978759866'; @override void initState() { @@ -47,7 +46,8 @@ class RewardedInterstitialExampleState if (consentGatheringError != null) { // Consent not obtained in current session. debugPrint( - "${consentGatheringError.errorCode}: ${consentGatheringError.message}"); + "${consentGatheringError.errorCode}: ${consentGatheringError.message}", + ); } // Kick off the first play of the "game". @@ -64,17 +64,23 @@ class RewardedInterstitialExampleState _initializeMobileAdsSDK(); // Show an alert dialog when the timer reaches zero. - _countdownTimer.addListener(() => setState(() { - if (_countdownTimer.isComplete) { - showDialog( - context: context, - builder: (context) => AdDialog(showAd: () { - _gameOver = true; - _showAdCallback(); - })); - _coins += 1; - } - })); + _countdownTimer.addListener( + () => setState(() { + if (_countdownTimer.isComplete) { + showDialog( + context: context, + builder: + (context) => AdDialog( + showAd: () { + _gameOver = true; + _showAdCallback(); + }, + ), + ); + _coins += 1; + } + }), + ); } void _startNewGame() { @@ -101,11 +107,12 @@ class RewardedInterstitialExampleState void _showAdCallback() { _rewardedInterstitialAd?.show( - onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); - setState(() => _coins += rewardItem.amount.toInt()); - }); + onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) { + // ignore: avoid_print + print('Reward amount: ${rewardItem.amount}'); + setState(() => _coins += rewardItem.amount.toInt()); + }, + ); } @override @@ -113,49 +120,55 @@ class RewardedInterstitialExampleState return MaterialApp( title: 'Rewarded Interstitial Example', home: Scaffold( - appBar: AppBar( - title: const Text('Rewarded Interstitial Example'), - actions: _appBarActions()), - body: Stack( - children: [ - const Align( - alignment: Alignment.topCenter, - child: Padding( - padding: EdgeInsets.all(15), - child: Text( - 'The Impossible Game', - style: - TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + appBar: AppBar( + title: const Text('Rewarded Interstitial Example'), + actions: _appBarActions(), + ), + body: Stack( + children: [ + const Align( + alignment: Alignment.topCenter, + child: Padding( + padding: EdgeInsets.all(15), + child: Text( + 'The Impossible Game', + style: TextStyle(fontSize: 25, fontWeight: FontWeight.bold), + ), + ), + ), + Align( + alignment: Alignment.center, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + _countdownTimer.isComplete + ? 'Game over!' + : '${_countdownTimer.timeLeft} seconds left!', + ), + Visibility( + visible: _countdownTimer.isComplete, + child: TextButton( + onPressed: () { + _startNewGame(); + _loadAd(); + }, + child: const Text('Play Again'), ), - )), - Align( - alignment: Alignment.center, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(_countdownTimer.isComplete - ? 'Game over!' - : '${_countdownTimer.timeLeft} seconds left!'), - Visibility( - visible: _countdownTimer.isComplete, - child: TextButton( - onPressed: () { - _startNewGame(); - _loadAd(); - }, - child: const Text('Play Again'), - ), - ) - ], - )), - Align( - alignment: Alignment.bottomLeft, - child: Padding( - padding: const EdgeInsets.all(15), - child: Text('Coins: $_coins')), + ), + ], ), - ], - )), + ), + Align( + alignment: Alignment.bottomLeft, + child: Padding( + padding: const EdgeInsets.all(15), + child: Text('Coins: $_coins'), + ), + ), + ], + ), + ), ); } @@ -168,31 +181,34 @@ class RewardedInterstitialExampleState return [ PopupMenuButton( - itemBuilder: (context) => array - .map((item) => PopupMenuItem( - value: item, - child: Text( - item.label, - ), - )) - .toList(), - onSelected: (item) { - _pauseGame(); - switch (item.value) { - case 0: - MobileAds.instance.openAdInspector((error) { - // Error will be non-null if ad inspector closed due to an error. - _resumeGame(); - }); - case 1: - _consentManager.showPrivacyOptionsForm((formError) { - if (formError != null) { - debugPrint("${formError.errorCode}: ${formError.message}"); - } - _resumeGame(); - }); - } - }) + itemBuilder: + (context) => + array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), + onSelected: (item) { + _pauseGame(); + switch (item.value) { + case 0: + MobileAds.instance.openAdInspector((error) { + // Error will be non-null if ad inspector closed due to an error. + _resumeGame(); + }); + case 1: + _consentManager.showPrivacyOptionsForm((formError) { + if (formError != null) { + debugPrint("${formError.errorCode}: ${formError.message}"); + } + _resumeGame(); + }); + } + }, + ), ]; } @@ -206,32 +222,36 @@ class RewardedInterstitialExampleState } RewardedInterstitialAd.load( - adUnitId: _adUnitId, - request: const AdRequest(), - rewardedInterstitialAdLoadCallback: - RewardedInterstitialAdLoadCallback(onAdLoaded: (ad) { + adUnitId: _adUnitId, + request: const AdRequest(), + rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback( + onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( - // Called when the ad showed the full screen content. - onAdShowedFullScreenContent: (ad) {}, - // Called when an impression occurs on the ad. - onAdImpression: (ad) {}, - // Called when the ad failed to show full screen content. - onAdFailedToShowFullScreenContent: (ad, err) { - ad.dispose(); - }, - // Called when the ad dismissed full screen content. - onAdDismissedFullScreenContent: (ad) { - ad.dispose(); - }, - // Called when a click is recorded for an ad. - onAdClicked: (ad) {}); + // Called when the ad showed the full screen content. + onAdShowedFullScreenContent: (ad) {}, + // Called when an impression occurs on the ad. + onAdImpression: (ad) {}, + // Called when the ad failed to show full screen content. + onAdFailedToShowFullScreenContent: (ad, err) { + ad.dispose(); + }, + // Called when the ad dismissed full screen content. + onAdDismissedFullScreenContent: (ad) { + ad.dispose(); + }, + // Called when a click is recorded for an ad. + onAdClicked: (ad) {}, + ); // Keep a reference to the ad so you can show it later. _rewardedInterstitialAd = ad; - }, onAdFailedToLoad: (LoadAdError error) { + }, + onAdFailedToLoad: (LoadAdError error) { // ignore: avoid_print print('RewardedInterstitialAd failed to load: $error'); - })); + }, + ), + ); } /// Redraw the app bar actions if a privacy options entry point is required. diff --git a/samples/admob/rewarded_interstitial_example/pubspec.yaml b/samples/admob/rewarded_interstitial_example/pubspec.yaml index f1c6f99b0..7f278558d 100644 --- a/samples/admob/rewarded_interstitial_example/pubspec.yaml +++ b/samples/admob/rewarded_interstitial_example/pubspec.yaml @@ -14,7 +14,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^2.0.0 + flutter_lints: ^5.0.0 flutter: uses-material-design: true From eabb90051f3149c217c97bf55f7fc24814bae867 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Tue, 25 Mar 2025 18:15:13 -0400 Subject: [PATCH 105/318] [Samples] Update Android to declaratively apply gradle (#1285) * Updating gradle to modern settings * Updated mediation example * Updated native samples * Updated rewarded samples --------- Co-authored-by: Justin Malandruccolo --- .../app_open_example/android/build.gradle | 12 ------ .../app_open_example/android/settings.gradle | 14 +++---- .../admob/banner_example/android/build.gradle | 13 ------- .../banner_example/android/settings.gradle | 19 +++++---- .../interstitial_example/android/build.gradle | 13 ------- .../android/settings.gradle | 19 +++++---- .../android/app/build.gradle | 27 +++++++++---- .../mediation_example/android/build.gradle | 18 ++------- .../mediation_example/android/settings.gradle | 30 ++++++++++---- .../android/app/build.gradle | 19 +++------ .../android/build.gradle | 15 +------ .../android/settings.gradle | 39 ++++++++++--------- .../android/app/build.gradle | 19 +++------ .../android/build.gradle | 13 ------- .../android/settings.gradle | 30 ++++++++++---- .../rewarded_example/android/build.gradle | 12 ------ .../rewarded_example/android/settings.gradle | 12 ++---- .../android/build.gradle | 12 ------ .../android/settings.gradle | 12 ++---- 19 files changed, 137 insertions(+), 211 deletions(-) diff --git a/samples/admob/app_open_example/android/build.gradle b/samples/admob/app_open_example/android/build.gradle index 2a2de2524..bc157bd1a 100644 --- a/samples/admob/app_open_example/android/build.gradle +++ b/samples/admob/app_open_example/android/build.gradle @@ -1,15 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/app_open_example/android/settings.gradle b/samples/admob/app_open_example/android/settings.gradle index 7cd712855..8452419a6 100644 --- a/samples/admob/app_open_example/android/settings.gradle +++ b/samples/admob/app_open_example/android/settings.gradle @@ -5,25 +5,21 @@ pluginManagement { def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() + }() - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") repositories { google() mavenCentral() gradlePluginPortal() } - - plugins { - id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false - } } plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.2.1" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false } -include ":app" +include ":app" \ No newline at end of file diff --git a/samples/admob/banner_example/android/build.gradle b/samples/admob/banner_example/android/build.gradle index 417ab3750..bc157bd1a 100644 --- a/samples/admob/banner_example/android/build.gradle +++ b/samples/admob/banner_example/android/build.gradle @@ -1,16 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.6.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/banner_example/android/settings.gradle b/samples/admob/banner_example/android/settings.gradle index 55c4ca8b1..c7b131ad9 100644 --- a/samples/admob/banner_example/android/settings.gradle +++ b/samples/admob/banner_example/android/settings.gradle @@ -5,16 +5,21 @@ pluginManagement { def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() + }() - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") - plugins { - id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false + repositories { + google() + mavenCentral() + gradlePluginPortal() } } -include ":app" +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false +} -apply from: "${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle/app_plugin_loader.gradle" +include ":app" \ No newline at end of file diff --git a/samples/admob/interstitial_example/android/build.gradle b/samples/admob/interstitial_example/android/build.gradle index 417ab3750..bc157bd1a 100644 --- a/samples/admob/interstitial_example/android/build.gradle +++ b/samples/admob/interstitial_example/android/build.gradle @@ -1,16 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.6.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/interstitial_example/android/settings.gradle b/samples/admob/interstitial_example/android/settings.gradle index 55c4ca8b1..c7b131ad9 100644 --- a/samples/admob/interstitial_example/android/settings.gradle +++ b/samples/admob/interstitial_example/android/settings.gradle @@ -5,16 +5,21 @@ pluginManagement { def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() + }() - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") - plugins { - id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false + repositories { + google() + mavenCentral() + gradlePluginPortal() } } -include ":app" +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false +} -apply from: "${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle/app_plugin_loader.gradle" +include ":app" \ No newline at end of file diff --git a/samples/admob/mediation_example/android/app/build.gradle b/samples/admob/mediation_example/android/app/build.gradle index 56a2c0c34..43675867e 100644 --- a/samples/admob/mediation_example/android/app/build.gradle +++ b/samples/admob/mediation_example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,14 +22,24 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { namespace "com.example.mediationexample" compileSdkVersion flutter.compileSdkVersion ndkVersion = flutter.ndkVersion + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = '1.8' + } + + sourceSets { + main.java.srcDirs += 'src/main/kotlin' + } + defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.mediationexample" diff --git a/samples/admob/mediation_example/android/build.gradle b/samples/admob/mediation_example/android/build.gradle index 8f7e4949b..8f31e8caf 100644 --- a/samples/admob/mediation_example/android/build.gradle +++ b/samples/admob/mediation_example/android/build.gradle @@ -1,15 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.6.0' - } -} - allprojects { repositories { google() @@ -20,9 +8,11 @@ allprojects { rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { project.evaluationDependsOn(':app') } tasks.register("clean", Delete) { - delete rootProject.layout.buildDirectory -} + delete rootProject.buildDir +} \ No newline at end of file diff --git a/samples/admob/mediation_example/android/settings.gradle b/samples/admob/mediation_example/android/settings.gradle index 44e62bcf0..c7b131ad9 100644 --- a/samples/admob/mediation_example/android/settings.gradle +++ b/samples/admob/mediation_example/android/settings.gradle @@ -1,11 +1,25 @@ -include ':app' +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false +} + +include ":app" \ No newline at end of file diff --git a/samples/admob/native_platform_example/android/app/build.gradle b/samples/admob/native_platform_example/android/app/build.gradle index fc7d924c9..6321c802d 100644 --- a/samples/admob/native_platform_example/android/app/build.gradle +++ b/samples/admob/native_platform_example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,10 +22,6 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { namespace = "com.example.native_platform_example" compileSdkVersion flutter.compileSdkVersion @@ -67,7 +64,3 @@ android { flutter { source '../..' } - -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} diff --git a/samples/admob/native_platform_example/android/build.gradle b/samples/admob/native_platform_example/android/build.gradle index 417ab3750..8f31e8caf 100644 --- a/samples/admob/native_platform_example/android/build.gradle +++ b/samples/admob/native_platform_example/android/build.gradle @@ -1,16 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.6.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() @@ -28,4 +15,4 @@ subprojects { tasks.register("clean", Delete) { delete rootProject.buildDir -} +} \ No newline at end of file diff --git a/samples/admob/native_platform_example/android/settings.gradle b/samples/admob/native_platform_example/android/settings.gradle index e90c8429e..c7b131ad9 100644 --- a/samples/admob/native_platform_example/android/settings.gradle +++ b/samples/admob/native_platform_example/android/settings.gradle @@ -1,24 +1,25 @@ -include ':app' +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() -def plugins = new Properties() -def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins') -if (pluginsFile.exists()) { - pluginsFile.withInputStream { stream -> plugins.load(stream) } -} + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -plugins.each { name, path -> - def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile() - include ":$name" - project(":$name").projectDir = pluginDirectory + repositories { + google() + mavenCentral() + gradlePluginPortal() + } } -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() - -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false +} -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" +include ":app" \ No newline at end of file diff --git a/samples/admob/native_template_example/android/app/build.gradle b/samples/admob/native_template_example/android/app/build.gradle index ca85deb43..bb58c927c 100644 --- a/samples/admob/native_template_example/android/app/build.gradle +++ b/samples/admob/native_template_example/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,10 +22,6 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { namespace = "com.example.native_template_example" compileSdkVersion flutter.compileSdkVersion @@ -67,7 +64,3 @@ android { flutter { source '../..' } - -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} diff --git a/samples/admob/native_template_example/android/build.gradle b/samples/admob/native_template_example/android/build.gradle index 417ab3750..bc157bd1a 100644 --- a/samples/admob/native_template_example/android/build.gradle +++ b/samples/admob/native_template_example/android/build.gradle @@ -1,16 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:8.6.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/native_template_example/android/settings.gradle b/samples/admob/native_template_example/android/settings.gradle index 44e62bcf0..c7b131ad9 100644 --- a/samples/admob/native_template_example/android/settings.gradle +++ b/samples/admob/native_template_example/android/settings.gradle @@ -1,11 +1,25 @@ -include ':app' +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false +} + +include ":app" \ No newline at end of file diff --git a/samples/admob/rewarded_example/android/build.gradle b/samples/admob/rewarded_example/android/build.gradle index 2a2de2524..bc157bd1a 100644 --- a/samples/admob/rewarded_example/android/build.gradle +++ b/samples/admob/rewarded_example/android/build.gradle @@ -1,15 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/rewarded_example/android/settings.gradle b/samples/admob/rewarded_example/android/settings.gradle index 4dedb24d9..c7b131ad9 100644 --- a/samples/admob/rewarded_example/android/settings.gradle +++ b/samples/admob/rewarded_example/android/settings.gradle @@ -5,25 +5,21 @@ pluginManagement { def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() + }() - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") repositories { google() mavenCentral() gradlePluginPortal() } - - plugins { - id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false - } } plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false } -include ":app" +include ":app" \ No newline at end of file diff --git a/samples/admob/rewarded_interstitial_example/android/build.gradle b/samples/admob/rewarded_interstitial_example/android/build.gradle index 2a2de2524..bc157bd1a 100644 --- a/samples/admob/rewarded_interstitial_example/android/build.gradle +++ b/samples/admob/rewarded_interstitial_example/android/build.gradle @@ -1,15 +1,3 @@ -buildscript { - ext.kotlin_version = '1.9.0' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() diff --git a/samples/admob/rewarded_interstitial_example/android/settings.gradle b/samples/admob/rewarded_interstitial_example/android/settings.gradle index 4dedb24d9..c7b131ad9 100644 --- a/samples/admob/rewarded_interstitial_example/android/settings.gradle +++ b/samples/admob/rewarded_interstitial_example/android/settings.gradle @@ -5,25 +5,21 @@ pluginManagement { def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath - } - settings.ext.flutterSdkPath = flutterSdkPath() + }() - includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") repositories { google() mavenCentral() gradlePluginPortal() } - - plugins { - id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false - } } plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "1.9.0" apply false } -include ":app" +include ":app" \ No newline at end of file From 5049f1130964be699e29f7f0e61247e2f089ade4 Mon Sep 17 00:00:00 2001 From: hellohuanlin <41930132+hellohuanlin@users.noreply.github.com> Date: Thu, 27 Mar 2025 13:34:12 -0700 Subject: [PATCH 106/318] Ad recycling support for admob banners (#1275) * added isMounted API --- .../lib/src/ad_containers.dart | 10 ++++++++ .../test/banner_ad_test.dart | 23 +++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/packages/google_mobile_ads/lib/src/ad_containers.dart b/packages/google_mobile_ads/lib/src/ad_containers.dart index 83a038b7f..5303fc646 100644 --- a/packages/google_mobile_ads/lib/src/ad_containers.dart +++ b/packages/google_mobile_ads/lib/src/ad_containers.dart @@ -899,6 +899,16 @@ class BannerAd extends AdWithView { Future getPlatformAdSize() async { return await instanceManager.getAdSize(this); } + + /// Returns true if the ad Id is already mounted in a WidgetAd managed + /// by the instanceManager. + bool get isMounted { + final int? id = instanceManager.adIdFor(this); + if (id != null) { + return instanceManager.isWidgetAdIdMounted(id); + } + return false; + } } /// An 'AdManagerBannerAd' that has fluid ad size. diff --git a/packages/google_mobile_ads/test/banner_ad_test.dart b/packages/google_mobile_ads/test/banner_ad_test.dart index 06d364395..74aa6bbf3 100644 --- a/packages/google_mobile_ads/test/banner_ad_test.dart +++ b/packages/google_mobile_ads/test/banner_ad_test.dart @@ -321,5 +321,28 @@ void main() { expect(instanceManager.adFor(0), isNull); expect(instanceManager.adIdFor(banner), isNull); }); + + test('isMounted returns correct value', () { + final BannerAd banner = BannerAd( + adUnitId: 'test-ad-unit', + size: AdSize.banner, + listener: BannerAdListener(), + request: AdRequest(), + ); + + expect(instanceManager.adIdFor(banner), isNull); + expect(banner.isMounted, isFalse); + + banner.load(); + final int? adId = instanceManager.adIdFor(banner); + expect(adId, isNotNull); + expect(banner.isMounted, isFalse); + + instanceManager.mountWidgetAdId(adId!); + expect(banner.isMounted, isTrue); + + instanceManager.unmountWidgetAdId(adId); + expect(banner.isMounted, isFalse); + }); }); } From 5c65a7baac7642417ddac7cc0e76c9e9a99d054f Mon Sep 17 00:00:00 2001 From: LTphantom Date: Fri, 28 Mar 2025 13:52:03 -0700 Subject: [PATCH 107/318] Update gma_mediation_ironsource.yaml --- .github/workflows/gma_mediation_ironsource.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 6851276a9..6d8f60c84 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -54,7 +54,7 @@ jobs: steps: - uses: swift-actions/setup-swift@v2 with: - swift-version: "5.7.2" + swift-version: "6.0.0" - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 From 78eb9bd55ac87bbc101fdd6e44c8922474177e9d Mon Sep 17 00:00:00 2001 From: LTphantom Date: Fri, 28 Mar 2025 14:21:41 -0700 Subject: [PATCH 108/318] Update gma_mediation_ironsource.yaml --- .../workflows/gma_mediation_ironsource.yaml | 57 ++++++++++--------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 6d8f60c84..8fa4ed0a2 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -48,34 +48,35 @@ jobs: run: | cd packages/mediation/gma_mediation_ironsource/example/android ./gradlew :gma_mediation_ironsource:testDebugUnitTest - iOS: - runs-on: macos-latest - timeout-minutes: 40 - steps: - - uses: swift-actions/setup-swift@v2 - with: - swift-version: "6.0.0" - - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - with: - fetch-depth: 0 - - name: "Install Flutter" - run: ./.github/workflows/scripts/install-flutter.sh stable - - name: "Install Tools" - run: | - ./.github/workflows/scripts/install-tools.sh - - name: "Unit Tests" - run: | - cd packages/mediation/gma_mediation_ironsource/example/ios - flutter clean - flutter pub get - flutter precache --ios - pod install - xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test - - uses: actions/upload-artifact@v4 - if: failure() - with: - name: iOSTestResults - path: packages/mediation/gma_mediation_ironsource/example/ios/TestResults.xcresult + # Disabling for now since it seems xcode 16 is required + # iOS: + # runs-on: macos-latest + # timeout-minutes: 40 + # steps: + # - uses: swift-actions/setup-swift@v2 + # with: + # swift-version: "6.0.0" + # - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + # with: + # fetch-depth: 0 + # - name: "Install Flutter" + # run: ./.github/workflows/scripts/install-flutter.sh stable + # - name: "Install Tools" + # run: | + # ./.github/workflows/scripts/install-tools.sh + # - name: "Unit Tests" + # run: | + # cd packages/mediation/gma_mediation_ironsource/example/ios + # flutter clean + # flutter pub get + # flutter precache --ios + # pod install + # xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test + # - uses: actions/upload-artifact@v4 + # if: failure() + # with: + # name: iOSTestResults + # path: packages/mediation/gma_mediation_ironsource/example/ios/TestResults.xcresult flutter: runs-on: ubuntu-latest if: github.event_name == 'pull_request' From e8bca4759161d4aa60e94ea7fad3c80e120e8cef Mon Sep 17 00:00:00 2001 From: LTphantom Date: Mon, 31 Mar 2025 09:27:58 -0700 Subject: [PATCH 109/318] Remove deprecated API on AdMessageCodec.java (#1288) * Remove deprecated API on AdMessageCodec plus lint fixes * Added hash and equals override to MediationExtras --- .../googlemobileads/AdMessageCodec.java | 12 +++++++++--- .../FlutterAdManagerAdRequest.java | 2 +- .../googlemobileads/FlutterAdRequest.java | 13 +++++++------ .../FlutterMediationExtras.java | 18 ++++++++++++++++++ .../FlutterMobileAdsWrapper.java | 4 +--- .../FlutterRequestAgentProvider.java | 3 ++- .../googlemobileads/GoogleMobileAdsPlugin.java | 2 +- 7 files changed, 39 insertions(+), 15 deletions(-) diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java index 91dd267cc..895effc45 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java @@ -32,6 +32,7 @@ import io.flutter.plugins.googlemobileads.nativetemplates.FlutterNativeTemplateStyle; import io.flutter.plugins.googlemobileads.nativetemplates.FlutterNativeTemplateTextStyle; import io.flutter.plugins.googlemobileads.nativetemplates.FlutterNativeTemplateType; +import java.lang.reflect.InvocationTargetException; import java.io.ByteArrayOutputStream; import java.nio.ByteBuffer; import java.util.List; @@ -71,7 +72,7 @@ class AdMessageCodec extends StandardMessageCodec { @NonNull Context context; @NonNull final FlutterAdSize.AdSizeFactory adSizeFactory; - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility @Nullable private MediationNetworkExtrasProvider mediationNetworkExtrasProvider; @@ -98,7 +99,7 @@ void setContext(@NonNull Context context) { this.context = context; } - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility void setMediationNetworkExtrasProvider( @Nullable MediationNetworkExtrasProvider mediationNetworkExtrasProvider) { this.mediationNetworkExtrasProvider = mediationNetworkExtrasProvider; @@ -307,11 +308,16 @@ protected Object readValueOfType(byte type, ByteBuffer buffer) { try { assert className != null; Class cls = Class.forName(className); - FlutterMediationExtras flutterExtras = (FlutterMediationExtras) cls.newInstance(); + FlutterMediationExtras flutterExtras = (FlutterMediationExtras) cls.getDeclaredConstructor() + .newInstance(); flutterExtras.setMediationExtras(extras); return flutterExtras; } catch (ClassNotFoundException e) { Log.e("FlutterMediationExtras", "Class not found: " + className); + } catch (NoSuchMethodException e) { + Log.e("FlutterMediationExtras", "No such method found: " + className + ".getDeclaredConstructor()"); + } catch (InvocationTargetException e) { + Log.e("FlutterMediationExtras", "Invocation Target Exception for: " + className); } catch (IllegalAccessException e) { Log.e("FlutterMediationExtras", "Illegal Access to " + className); } catch (InstantiationException e) { diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdManagerAdRequest.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdManagerAdRequest.java index 68c86b63a..2ae5f99f8 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdManagerAdRequest.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdManagerAdRequest.java @@ -76,7 +76,7 @@ FlutterAdManagerAdRequest build() { } } - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility private FlutterAdManagerAdRequest( @Nullable List keywords, @Nullable String contentUrl, diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdRequest.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdRequest.java index 53ee98f91..e1c658776 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdRequest.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterAdRequest.java @@ -37,7 +37,7 @@ class FlutterAdRequest { @Nullable private final Integer httpTimeoutMillis; @Nullable private final String mediationExtrasIdentifier; - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility @Nullable private final MediationNetworkExtrasProvider mediationNetworkExtrasProvider; @@ -53,7 +53,7 @@ protected static class Builder { @Nullable private Integer httpTimeoutMillis; @Nullable private String mediationExtrasIdentifier; - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility @Nullable private MediationNetworkExtrasProvider mediationNetworkExtrasProvider; @@ -105,7 +105,7 @@ Builder setMediationNetworkExtrasIdentifier(@Nullable String mediationExtrasIden } @CanIgnoreReturnValue - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility Builder setMediationNetworkExtrasProvider( @Nullable MediationNetworkExtrasProvider mediationNetworkExtrasProvider) { this.mediationNetworkExtrasProvider = mediationNetworkExtrasProvider; @@ -154,7 +154,7 @@ protected String getMediationExtrasIdentifier() { return mediationExtrasIdentifier; } - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility @Nullable protected MediationNetworkExtrasProvider getMediationNetworkExtrasProvider() { return mediationNetworkExtrasProvider; @@ -190,7 +190,7 @@ FlutterAdRequest build() { } } - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility protected FlutterAdRequest( @Nullable List keywords, @Nullable String contentUrl, @@ -340,7 +340,8 @@ public boolean equals(Object o) { && Objects.equals(httpTimeoutMillis, request.httpTimeoutMillis) && Objects.equals(mediationExtrasIdentifier, request.mediationExtrasIdentifier) && Objects.equals(mediationNetworkExtrasProvider, request.mediationNetworkExtrasProvider) - && Objects.equals(adMobExtras, request.adMobExtras); + && Objects.equals(adMobExtras, request.adMobExtras) + && Objects.equals(mediationExtras, request.mediationExtras); } @Override diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMediationExtras.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMediationExtras.java index 08370e63e..21612988b 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMediationExtras.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMediationExtras.java @@ -18,6 +18,7 @@ import android.util.Pair; import com.google.android.gms.ads.mediation.MediationExtrasReceiver; import java.util.Map; +import java.util.Objects; /** * Mediation Adapters that require extra parameters provide implementations of this interface to @@ -47,4 +48,21 @@ public abstract class FlutterMediationExtras { public void setMediationExtras(Map extras) { this.extras = extras; } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } else if (!(o instanceof FlutterMediationExtras)) { + return false; + } + + FlutterMediationExtras mediationExtras = (FlutterMediationExtras) o; + return Objects.equals(extras, mediationExtras.extras); + } + + @Override + public int hashCode() { + return Objects.hash(extras); + } } diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java index 159e9294b..83f0f783d 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterMobileAdsWrapper.java @@ -84,9 +84,7 @@ public void openAdInspector(Context context, OnAdInspectorClosedListener listene /** Register the webView for monetization. */ public void registerWebView(int webViewId, FlutterEngine flutterEngine) { WebView webView = WebViewFlutterAndroidExternalApi.getWebView(flutterEngine, webViewId); - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) { - Log.w(TAG, "MobileAds.registerWebView does not support API levels less than 21"); - } else if (webView == null) { + if (webView == null) { Log.w(TAG, "MobileAds.registerWebView unable to find webView with id: " + webViewId); } else { MobileAds.registerWebView(webView); diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterRequestAgentProvider.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterRequestAgentProvider.java index aa8fc75d9..1322df6d9 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterRequestAgentProvider.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/FlutterRequestAgentProvider.java @@ -4,6 +4,7 @@ import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; +import android.os.Build; import android.os.Bundle; import androidx.annotation.Nullable; @@ -25,7 +26,7 @@ class FlutterRequestAgentProvider { private void processGameAndNewsTemplateVersions(Context context) { try { ApplicationInfo info; - if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.TIRAMISU) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { info = context .getApplicationContext() diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/GoogleMobileAdsPlugin.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/GoogleMobileAdsPlugin.java index 89cc8b589..91479ca77 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/GoogleMobileAdsPlugin.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/GoogleMobileAdsPlugin.java @@ -69,7 +69,7 @@ private static T requireNonNull(T obj) { @Nullable private UserMessagingPlatformManager userMessagingPlatformManager; private final Map nativeAdFactories = new HashMap<>(); - @SuppressWarnings("deprecation") + @SuppressWarnings("deprecation") // Keeping for compatibility @Nullable private MediationNetworkExtrasProvider mediationNetworkExtrasProvider; From 69430ea2402119ac9b7e7113059c2075b55b9ab8 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Tue, 8 Apr 2025 11:54:54 -0700 Subject: [PATCH 110/318] GMA SDK major update version 6.0.0 (#1291) * Remove deprecated API on AdMessageCodec plus lint fixes * Added hash and equals override to MediationExtras * Android GMA SDK update * updated ios GMA SDK * Updated CHANGELOG * Adds version to example project * added publish_to none in the example pubspec * Updated iOS test * Changes sdks low bounds. Removes deprecated api from ad_instance_manager * Updated UMP info --- .github/workflows/google_mobile_ads.yaml | 2 ++ packages/google_mobile_ads/CHANGELOG.md | 11 +++++++++++ packages/google_mobile_ads/android/build.gradle | 10 +++++----- .../plugins/googlemobileads/AdMessageCodec.java | 1 + .../example/android/app/build.gradle | 4 ++-- .../FLTGoogleMobileAdsPluginMethodCallsTest.m | 9 +++++++++ .../FLTUserMessagingPlatformManagerTest.m | 8 ++++---- packages/google_mobile_ads/example/pubspec.yaml | 4 +++- .../ios/google_mobile_ads.podspec | 4 ++-- .../lib/src/ad_instance_manager.dart | 9 ++++----- packages/google_mobile_ads/pubspec.yaml | 16 ++++++++-------- .../google_mobile_ads/test/fluid_ad_test.dart | 1 - 12 files changed, 51 insertions(+), 28 deletions(-) diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index 8b530f94c..85ea28d9f 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -59,6 +59,8 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/packages/google_mobile_ads/CHANGELOG.md b/packages/google_mobile_ads/CHANGELOG.md index 33d804a21..699008229 100644 --- a/packages/google_mobile_ads/CHANGELOG.md +++ b/packages/google_mobile_ads/CHANGELOG.md @@ -1,3 +1,14 @@ +## 6.0.0 +* Updates minimum Flutter SDK to 3.27.0 +* Updates Dart SDK low bound to 3.6.0. +* Fixes AdMessageCodec deprecated API issue: https://github.com/googleads/googleads-mobile-flutter/issues/1242 +* Adds a new API (`isMounted`) to support recycling ad banners +* Updates GMA [Android](https://developers.google.com/admob/android/rel-notes) dependency to 24.1.0 +* Updates GMA [iOS](https://developers.google.com/admob/ios/rel-notes) dependency to 12.2.0 +* Uses latest UMP SDK: + * [Android](https://developers.google.com/admob/android/privacy/release-notes) UMP SDK version 3.2.0. + * [iOS](https://developers.google.com/admob/ios/privacy/download#release_notes) UMP SDK version 3.0.0. + ## 5.3.1 * Fixes dart SDK low bound building issues: https://github.com/googleads/googleads-mobile-flutter/issues/1234 diff --git a/packages/google_mobile_ads/android/build.gradle b/packages/google_mobile_ads/android/build.gradle index 3febc166a..948e368f3 100644 --- a/packages/google_mobile_ads/android/build.gradle +++ b/packages/google_mobile_ads/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads' -version '1.0-SNAPSHOT' +version '6.0.0' buildscript { repositories { @@ -22,21 +22,21 @@ rootProject.allprojects { apply plugin: 'com.android.library' android { - compileSdkVersion 34 + compileSdk 35 if (project.android.hasProperty('namespace')) { namespace 'io.flutter.plugins.googlemobileads' } defaultConfig { - minSdkVersion 21 + minSdk 23 } lintOptions { disable 'InvalidPackage' } dependencies { - api 'com.google.android.gms:play-services-ads:23.6.0' - implementation 'com.google.android.ump:user-messaging-platform:3.1.0' + api 'com.google.android.gms:play-services-ads:24.1.0' + implementation 'com.google.android.ump:user-messaging-platform:3.2.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.lifecycle:lifecycle-process:2.6.2' implementation 'com.google.errorprone:error_prone_annotations:2.16' diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java index 895effc45..65f370cf4 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/AdMessageCodec.java @@ -34,6 +34,7 @@ import io.flutter.plugins.googlemobileads.nativetemplates.FlutterNativeTemplateType; import java.lang.reflect.InvocationTargetException; import java.io.ByteArrayOutputStream; +import java.lang.reflect.InvocationTargetException; import java.nio.ByteBuffer; import java.util.List; import java.util.Map; diff --git a/packages/google_mobile_ads/example/android/app/build.gradle b/packages/google_mobile_ads/example/android/app/build.gradle index 352b58e15..c6fdf5d91 100644 --- a/packages/google_mobile_ads/example/android/app/build.gradle +++ b/packages/google_mobile_ads/example/android/app/build.gradle @@ -23,7 +23,7 @@ if (flutterVersionName == null) { } android { - compileSdkVersion 34 + compileSdk 35 namespace 'io.flutter.plugins.googlemobileadsexample' @@ -33,7 +33,7 @@ android { defaultConfig { applicationId "io.flutter.plugins.googlemobileadsexample" - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion 34 versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsPluginMethodCallsTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsPluginMethodCallsTest.m index a4164b0ce..3f429c90b 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsPluginMethodCallsTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTGoogleMobileAdsPluginMethodCallsTest.m @@ -263,6 +263,11 @@ - (void)testSetAppMuted { XCTAssertTrue(resultInvoked); XCTAssertNil(returnedResult); + NSTimeInterval timeout = 5.0; + NSDate *startTime = [NSDate date]; + while (!GADMobileAds.sharedInstance.applicationMuted && [[NSDate date] timeIntervalSinceDate:startTime] < timeout) { + [NSThread sleepForTimeInterval:0.1]; + } XCTAssertTrue(GADMobileAds.sharedInstance.applicationMuted); methodCall = @@ -279,6 +284,10 @@ - (void)testSetAppMuted { XCTAssertTrue(resultInvoked); XCTAssertNil(returnedResult); + startTime = [NSDate date]; + while (GADMobileAds.sharedInstance.applicationMuted && [[NSDate date] timeIntervalSinceDate:startTime] < timeout) { + [NSThread sleepForTimeInterval:0.1]; + } XCTAssertFalse(GADMobileAds.sharedInstance.applicationMuted); } diff --git a/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformManagerTest.m b/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformManagerTest.m index d05146a23..946460bac 100644 --- a/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformManagerTest.m +++ b/packages/google_mobile_ads/example/ios/RunnerTests/FLTUserMessagingPlatformManagerTest.m @@ -216,7 +216,7 @@ - (void)testLoadAndShowConsentFormIfRequired_success { loadAndPresentIfRequiredFromViewController:[OCMArg any] completionHandler:[OCMArg any]]) .andDo(^(NSInvocation *invocation) { - void (^completionHandler)(NSError *loadError); + __unsafe_unretained void (^completionHandler)(NSError *loadError); [invocation getArgument:&completionHandler atIndex:3]; completionHandler(nil); }); @@ -243,7 +243,7 @@ - (void)testLoadAndShowConsentFormIfRequired_error { loadAndPresentIfRequiredFromViewController:[OCMArg any] completionHandler:[OCMArg any]]) .andDo(^(NSInvocation *invocation) { - void (^completionHandler)(NSError *loadError); + __unsafe_unretained void (^completionHandler)(NSError *loadError); [invocation getArgument:&completionHandler atIndex:3]; completionHandler(error); }); @@ -321,7 +321,7 @@ - (void)testShowPrivacyOptionsForm_success { presentPrivacyOptionsFormFromViewController:[OCMArg any] completionHandler:[OCMArg any]]) .andDo(^(NSInvocation *invocation) { - void (^completionHandler)(NSError *loadError); + __unsafe_unretained void (^completionHandler)(NSError *loadError); [invocation getArgument:&completionHandler atIndex:3]; completionHandler(nil); }); @@ -347,7 +347,7 @@ - (void)testShowPrivacyOptionsForm_error { presentPrivacyOptionsFormFromViewController:[OCMArg any] completionHandler:[OCMArg any]]) .andDo(^(NSInvocation *invocation) { - void (^completionHandler)(NSError *loadError); + __unsafe_unretained void (^completionHandler)(NSError *loadError); [invocation getArgument:&completionHandler atIndex:3]; completionHandler(error); }); diff --git a/packages/google_mobile_ads/example/pubspec.yaml b/packages/google_mobile_ads/example/pubspec.yaml index a599d4527..0c3fcf18e 100644 --- a/packages/google_mobile_ads/example/pubspec.yaml +++ b/packages/google_mobile_ads/example/pubspec.yaml @@ -13,7 +13,9 @@ # limitations under the License. name: google_mobile_ads_example +version: 1.0.0 description: Demonstrates how to use the google mobile ads plugin. +publish_to: none dependencies: flutter: @@ -32,4 +34,4 @@ flutter: uses-material-design: true environment: - sdk: ">=2.12.0 <3.0.0" + sdk: ">=3.6.0 <4.0.0" diff --git a/packages/google_mobile_ads/ios/google_mobile_ads.podspec b/packages/google_mobile_ads/ios/google_mobile_ads.podspec index 892c77384..cb6ecc020 100644 --- a/packages/google_mobile_ads/ios/google_mobile_ads.podspec +++ b/packages/google_mobile_ads/ios/google_mobile_ads.podspec @@ -3,7 +3,7 @@ # Pod::Spec.new do |s| s.name = 'google_mobile_ads' - s.version = '5.3.1' + s.version = '6.0.0' s.summary = 'Google Mobile Ads plugin for Flutter.' s.description = <<-DESC Google Mobile Ads plugin for Flutter. @@ -15,7 +15,7 @@ Google Mobile Ads plugin for Flutter. s.source_files = 'Classes/**/*.{h,m}' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'Google-Mobile-Ads-SDK','~> 11.13.0' + s.dependency 'Google-Mobile-Ads-SDK','~> 12.2.0' s.dependency 'webview_flutter_wkwebview' s.ios.deployment_target = '12.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS' => 'armv7 arm64 x86_64' } diff --git a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart index f908b2c2e..b5061bbea 100644 --- a/packages/google_mobile_ads/lib/src/ad_instance_manager.dart +++ b/packages/google_mobile_ads/lib/src/ad_instance_manager.dart @@ -991,11 +991,10 @@ class AdMessageCodec extends StandardMessageCodec { writeValue(buffer, value.size); } else if (value is Color) { buffer.putUint8(_valueColor); - // Color values to be updated to non-deprecated attributes in next major release - writeValue(buffer, value.alpha); - writeValue(buffer, value.red); - writeValue(buffer, value.green); - writeValue(buffer, value.blue); + writeValue(buffer, (value.a * 255).toInt()); + writeValue(buffer, (value.r * 255).toInt()); + writeValue(buffer, (value.g * 255).toInt()); + writeValue(buffer, (value.b * 255).toInt()); } else if (value is NativeTemplateFontStyle) { buffer.putUint8(_valueNativeTemplateFontStyle); writeValue(buffer, value.index); diff --git a/packages/google_mobile_ads/pubspec.yaml b/packages/google_mobile_ads/pubspec.yaml index 30de4a81c..f801939ff 100644 --- a/packages/google_mobile_ads/pubspec.yaml +++ b/packages/google_mobile_ads/pubspec.yaml @@ -13,7 +13,7 @@ # limitations under the License. name: google_mobile_ads -version: 5.3.1 +version: 6.0.0 description: Flutter plugin for Google Mobile Ads, supporting banner, interstitial (full-screen), rewarded and native ads repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/google_mobile_ads @@ -31,22 +31,22 @@ dependencies: meta: ^1.10.0 flutter: sdk: flutter - webview_flutter_android: ^4.3.1 - webview_flutter_wkwebview: ^3.17.0 + webview_flutter_android: ^4.3.4 + webview_flutter_wkwebview: ^3.18.4 webview_flutter: ^4.10.0 dev_dependencies: - pedantic: ^1.11.0 # e2e: ^0.7.0 flutter_driver: sdk: flutter - mockito: ^5.4.4 - build_runner: ^2.4.13 + mockito: ^5.4.5 + build_runner: ^2.4.15 + flutter_lints: ^5.0.0 flutter_test: sdk: flutter webview_flutter_platform_interface: ^2.10.0 environment: - sdk: ">=2.17.0 <4.0.0" - flutter: ">=3.7.0" + sdk: ">=3.6.0 <4.0.0" + flutter: ">=3.27.0" diff --git a/packages/google_mobile_ads/test/fluid_ad_test.dart b/packages/google_mobile_ads/test/fluid_ad_test.dart index 22727b162..765d77675 100644 --- a/packages/google_mobile_ads/test/fluid_ad_test.dart +++ b/packages/google_mobile_ads/test/fluid_ad_test.dart @@ -19,7 +19,6 @@ import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:google_mobile_ads/google_mobile_ads.dart'; import 'package:google_mobile_ads/src/ad_instance_manager.dart'; -import 'package:pedantic/pedantic.dart'; import 'test_util.dart'; // ignore_for_file: deprecated_member_use_from_same_package From 64236f63335a8e30f05b6350e7994e619b5b75f8 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 4 Apr 2025 14:26:12 -0700 Subject: [PATCH 111/318] Changed iOS podspecs for IMobile and MyTarget to 2.3.4.1 and 5.24.1.0 respectively. PiperOrigin-RevId: 744070172 --- .../gma_mediation_imobile/ios/gma_mediation_imobile.podspec | 2 +- .../gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec index e8d498626..476d6119f 100644 --- a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec +++ b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIMobile', '>= 2.3.4.2' + s.dependency 'GoogleMobileAdsMediationIMobile', '>= 2.3.4.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index 2525ef6d0..b0424d7b3 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.25.1.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.24.1.0' s.platform = :ios, '12.0' s.static_framework = true From 3f028b55b6bda30f3e0ea7b491360ac0330f1ee9 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 4 Apr 2025 15:53:18 -0700 Subject: [PATCH 112/318] Updating i-mobile Flutter mediation plugin version to 1.0.0 in the mediation developer docs. PiperOrigin-RevId: 744094889 --- packages/mediation/gma_mediation_imobile/CHANGELOG.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_imobile/CHANGELOG.md b/packages/mediation/gma_mediation_imobile/CHANGELOG.md index cc4488ee2..7f9ba7104 100644 --- a/packages/mediation/gma_mediation_imobile/CHANGELOG.md +++ b/packages/mediation/gma_mediation_imobile/CHANGELOG.md @@ -1,9 +1,7 @@ -## imobile Flutter Mediation Adapter Changelog +## i-mobile Flutter Mediation Adapter Changelog #### 1.0.0 - -TODO: Add version numbers * Initial release. -* Verified compatibility with imobile Android adapter version a.b.c.d -* Verified compatibility with imobile iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +* Supports [i-mobile Android adapter version 2.3.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/imobile/CHANGELOG.md#version-2320). +* Supports [i-mobile iOS adapter version 2.3.4.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/I-Mobile/CHANGELOG.md#version-2341). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. From c1b55ef24dd17f068e191a19aa048a838af8abc7 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 4 Apr 2025 16:15:28 -0700 Subject: [PATCH 113/318] Updating myTarget Flutter mediation plugin version to 1.0.0 in the mediation developer docs. PiperOrigin-RevId: 744100907 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 3e564f289..97c8979f6 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,9 +1,7 @@ -## mytarget Flutter Mediation Adapter Changelog +## myTarget Flutter Mediation Adapter Changelog #### 1.0.0 - -TODO: Add version numbers * Initial release. -* Verified compatibility with mytarget Android adapter version a.b.c.d -* Verified compatibility with mytarget iOS adapter version a.b.c.d -* Built and tested with the Google Mobile Ads Flutter Plugin version X.Y.Z. +* Supports [myTarget Android adapter version 5.27.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52710). +* Supports [myTarget iOS adapter version 5.24.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52410). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. From ae14a7d6272561dc90ab4eb72440e14f9bd82d3b Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 4 Apr 2025 16:37:51 -0700 Subject: [PATCH 114/318] Renamed MytargetMediationExtras to UpperCamelCase format. PiperOrigin-RevId: 744106578 --- .../gma_mediation_mytarget/lib/mytarget_mediation_extras.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart b/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart index 9ce772059..3f0c7a44b 100644 --- a/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart +++ b/packages/mediation/gma_mediation_mytarget/lib/mytarget_mediation_extras.dart @@ -15,9 +15,9 @@ import 'package:google_mobile_ads/google_mobile_ads.dart'; /// Extra information sent to the mytarget adapter through an [AdRequest] or an [AdManagerAdRequest]. -class mytargetMediationExtras implements MediationExtras { +class MytargetMediationExtras implements MediationExtras { /// Default constructor with required extras value. - const mytargetMediationExtras({required this.isIOSDebugMode}); + const MytargetMediationExtras({required this.isIOSDebugMode}); /// Specifies whether to enable logging for iOS. final bool isIOSDebugMode; From c16dd4b7622cc530eca2947c24ffe449a0ce4ffb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 09:07:23 -0700 Subject: [PATCH 115/318] Updating Meta Flutter mediation plugin to support the latest adapters (6.19.0.1, 6.17.0.0) PiperOrigin-RevId: 746053805 --- .../mediation/gma_mediation_meta/android/build.gradle | 4 ++-- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 4 ++-- packages/mediation/gma_mediation_meta/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index b53bdc0c9..5a0718c57 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version = "1.1.0" +version = "1.2.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.18.0.0" + stringVersion = "6.19.0.1" } android { diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 62388b49c..223b2e0d7 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.16.0.0' + s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.17.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index adbf5d6db..3ffe14009 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From b56774bae16f35d5984b44bbaf61b147ae4cbbf1 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 10 Apr 2025 13:35:17 -0700 Subject: [PATCH 116/318] Updated dependency format on podspec of imobile adapter PiperOrigin-RevId: 746154595 --- .../gma_mediation_imobile/ios/gma_mediation_imobile.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec index 476d6119f..c42242d9b 100644 --- a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec +++ b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIMobile', '>= 2.3.4.1' + s.dependency 'GoogleMobileAdsMediationIMobile', '~> 2.3.4.1' s.platform = :ios, '12.0' s.static_framework = true From 9bfa6b24365b9e1f9c6a63cbe1eb5e44c57941da Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:24 -0700 Subject: [PATCH 117/318] Updating Maio Flutter mediation plugin to support the latest adapters (2.0.3.1, 2.1.6.1) PiperOrigin-RevId: 746228792 --- packages/mediation/gma_mediation_maio/android/build.gradle | 4 ++-- .../gma_mediation_maio/ios/gma_mediation_maio.podspec | 4 ++-- packages/mediation/gma_mediation_maio/pubspec.yaml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 4cf02c065..141a2ca24 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.0.3.0" + stringVersion = "2.0.3.1" } android { diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index ba77f2409..26919057c 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_maio' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of maio.' s.description = <<-DESC Mediation Adapter for maio to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.0' + s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_maio/pubspec.yaml b/packages/mediation/gma_mediation_maio/pubspec.yaml index 4b5fdd8ed..c0250c61a 100644 --- a/packages/mediation/gma_mediation_maio/pubspec.yaml +++ b/packages/mediation/gma_mediation_maio/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_maio description: 'Mediation Adapter that enables sending ad requests to the maio ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.7.0 - flutter: '>=3.3.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From 14f381036041e5158bf73defadf606e7b66275da Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:24 -0700 Subject: [PATCH 118/318] Updating Pangle Flutter mediation plugin to support the latest adapters (6.5.0.8.0, 6.5.0.9.0) PiperOrigin-RevId: 746228793 --- .../mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index b7280759c..f3c7df121 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "2.1.0" +version = "2.2.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.5.0.4.0" + stringVersion = "6.5.0.8.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 9cf4d3d5c..ad7622c30 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '2.1.0' + s.version = '2.2.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.4.1.2.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.5.0.9.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index be2dc635c..81f8bf723 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 2.1.0 +version: 2.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From 213925c2937fb8ffbb71fe14e3e3f27a04f1f969 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:25 -0700 Subject: [PATCH 119/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.8.0.0, 8.8.0.0.0) PiperOrigin-RevId: 746228809 --- .../gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index a60d3013b..63b893a1e 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.2.0" +version = "1.3.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.7.0.0" + stringVersion = "8.8.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 2a36ec65e..5d4d3960b 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.2.0' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.6.1.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.8.0.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index a7452f8c3..1ad07721a 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 1.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From a25720b1c60105870d3fb0ef7c06ffe34e89da98 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:26 -0700 Subject: [PATCH 120/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.61.0, 7.7.7.0) PiperOrigin-RevId: 746228811 --- .../gma_mediation_mintegral/android/build.gradle | 4 ++-- .../ios/gma_mediation_mintegral.podspec | 4 ++-- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index e7ff0b512..84ee1501f 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.0" +version = "1.2.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "16.9.41.0" + stringVersion = "16.9.61.0" } android { diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index b0d41f683..7087e565c 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.0' + s.version = '1.2.1' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.5.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.7.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index 0ca6f4122..b7f9b8738 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 1.2.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: - sdk: '>=3.3.3 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From 3304a0b3db3339e167c1306eecd99818420e5ddb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:36 -0700 Subject: [PATCH 121/318] Updating InMobi Flutter mediation plugin to support the latest adapters (10.8.2.0, 10.8.2.0) PiperOrigin-RevId: 746228865 --- .../mediation/gma_mediation_inmobi/android/build.gradle | 4 ++-- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 0a7a60e33..8ab836d26 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version = "1.1.0" +version = "1.1.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "10.8.0.0" + stringVersion = "10.8.2.0" } android { diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 1d6a3e3f6..77e365d84 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.1.0' + s.version = '1.1.1' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.0.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index cd1934532..7c1353ae9 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.1.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: - sdk: '>=3.3.3 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From a8cb1fae8a2600dbe72811e75e14a0d56f85bdf7 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:38 -0700 Subject: [PATCH 122/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.8.3.1, 9.8.1.0) PiperOrigin-RevId: 746228875 --- .../gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index ce44d416c..7d424f173 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.0.1" +version = "1.0.2" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.8.3.0" + stringVersion = "9.8.3.1" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index 2377058bf..2db50cea5 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.0.1' + s.version = '1.0.2' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.8.0.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.8.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index f00090ea1..521f960a0 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.0.1 +version: 1.0.2 environment: - sdk: ^3.5.4 - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_lints: ^4.0.0 From 2eb71ccaf92cc28def8aa27571f9442392161814 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:41 -0700 Subject: [PATCH 123/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.8.0.1, 3.8.0.0) PiperOrigin-RevId: 746228889 --- .../mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 0bc37e62c..79446231b 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.1.0" +version = "1.2.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.7.0.0" + stringVersion = "3.8.0.1" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index f0d190580..8710fc28f 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.6.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.8.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 8d747e9ae..d41abd6ed 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.1.0 +version: 1.2.0 environment: sdk: ^3.6.2 - flutter: '>=3.3.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From c6e9d0c7e3fef4493535a78fe9d9c501ad3b6d6e Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:42 -0700 Subject: [PATCH 124/318] Updating DTExchange Flutter mediation plugin to support the latest adapters (8.3.6.1, 8.3.6.0) PiperOrigin-RevId: 746228892 --- .../gma_mediation_dtexchange/android/build.gradle | 4 ++-- .../ios/gma_mediation_dtexchange.podspec | 4 ++-- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 2a8bcfda3..a2c85d4fe 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version = "1.1.1" +version = "1.1.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.3.6.0" + stringVersion = "8.3.6.1" } android { diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index a72a8a87a..522c4cc64 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.1.1' + s.version = '1.1.2' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.5.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.6.0' s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index 60f2ef4b9..fca714ed7 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.1.1 +version: 1.1.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From b13430adc6a435baa7ebf17d01dac38d3a829e41 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:43 -0700 Subject: [PATCH 125/318] Updating Line Flutter mediation plugin to support the latest adapters (2.9.20250317.1, 2.9.20241106.3) PiperOrigin-RevId: 746228893 --- .../mediation/gma_mediation_line/android/build.gradle | 4 ++-- .../gma_mediation_line/ios/gma_mediation_line.podspec | 4 ++-- packages/mediation/gma_mediation_line/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index c85113956..6f4ce4b34 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0.1" +version = "1.0.2" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.9.20250110.1" + stringVersion = "2.9.20250317.1" } android { diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec index 39cd90024..19620775f 100644 --- a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_line' - s.version = '1.0.1' + s.version = '1.0.2' s.summary = 'Google Mobile Ads Mediation of Line.' s.description = <<-DESC Mediation Adapter for Line to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20241106.1' + s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20241106.3' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index 13d97650a..bb5f35eba 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_line description: 'Mediation Adapter that enables sending ad requests to the Line ad network using the google_mobile_ads plugin.' -version: 1.0.1 +version: 1.0.2 environment: - sdk: ^3.5.4 - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From 762b7a9e1f56b8a1d28dfcac0c9fcb05db08f823 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:47 -0700 Subject: [PATCH 126/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.14.1.0, 4.14.1.1) PiperOrigin-RevId: 746228915 --- .../mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 1ff0b695b..9404ef87e 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.3.0" +version = "1.4.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.13.1.0" + stringVersion = "4.14.1.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index fdc78f3a7..0e1f3978c 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.3.0' + s.version = '1.4.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.13.1.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.14.1.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 9b80530b2..67676ae88 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.3.0 +version: 1.4.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.2.0 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From 77f7c1861e8ac66a2e40610ac8349d1c07c159b9 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:50 -0700 Subject: [PATCH 127/318] Updating MyTarget Flutter mediation plugin to support the latest adapters (5.27.1.1, 5.28.0.0) PiperOrigin-RevId: 746228931 --- .../mediation/gma_mediation_mytarget/android/build.gradle | 4 ++-- .../ios/gma_mediation_mytarget.podspec | 4 ++-- packages/mediation/gma_mediation_mytarget/pubspec.yaml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index 2e09a3dc5..a11a70385 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" -version = "1.0.0" +version = "1.1.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "5.27.1.0" + stringVersion = "5.27.1.1" } android { diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index b0424d7b3..ca0f0f334 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_mytarget' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of mytarget.' s.description = <<-DESC Mediation Adapter for mytarget to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.24.1.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.28.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml index 60511b510..7b786c663 100644 --- a/packages/mediation/gma_mediation_mytarget/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_mytarget description: 'Mediation Adapter that enables sending ad requests to the mytarget ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.1.0 environment: sdk: ^3.7.0 - flutter: '>=3.3.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From ff1d7543a5131bdcd7f4190f3a657854b4c8a366 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:54 -0700 Subject: [PATCH 128/318] Updating Liftoff Flutter mediation plugin to support the latest adapters (7.4.3.1, 7.4.5.0) PiperOrigin-RevId: 746228954 --- .../gma_mediation_liftoffmonetize/android/build.gradle | 4 ++-- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- .../mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index da26d92c9..223447bc9 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version = "1.1.0" +version = "1.1.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.4.3.0" + stringVersion = "7.4.3.1" } android { diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 855a726ab..30663976a 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.1.0' + s.version = '1.1.1' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.4.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.5.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index 568cc344f..c8f92f6ef 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.1.0 +version: 1.1.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: From cffc0374d4de3e780ddb04bde2ae0bac6333fc6c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:04:56 -0700 Subject: [PATCH 129/318] Updating iMobile Flutter mediation plugin to support the latest adapters (2.3.2.1, 2.3.4.2) PiperOrigin-RevId: 746228963 --- .../mediation/gma_mediation_imobile/android/build.gradle | 4 ++-- .../gma_mediation_imobile/ios/gma_mediation_imobile.podspec | 4 ++-- packages/mediation/gma_mediation_imobile/pubspec.yaml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_imobile/android/build.gradle b/packages/mediation/gma_mediation_imobile/android/build.gradle index 96e1c4827..6383dbc79 100644 --- a/packages/mediation/gma_mediation_imobile/android/build.gradle +++ b/packages/mediation/gma_mediation_imobile/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.3.2.0" + stringVersion = "2.3.2.1" } android { diff --git a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec index c42242d9b..91fb6b737 100644 --- a/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec +++ b/packages/mediation/gma_mediation_imobile/ios/gma_mediation_imobile.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_imobile' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of imobile.' s.description = <<-DESC Mediation Adapter for imobile to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIMobile', '~> 2.3.4.1' + s.dependency 'GoogleMobileAdsMediationIMobile', '~> 2.3.4.2' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_imobile/pubspec.yaml b/packages/mediation/gma_mediation_imobile/pubspec.yaml index 7d7fae01e..e5b6077e6 100644 --- a/packages/mediation/gma_mediation_imobile/pubspec.yaml +++ b/packages/mediation/gma_mediation_imobile/pubspec.yaml @@ -1,14 +1,14 @@ name: gma_mediation_imobile description: 'Mediation Adapter that enables sending ad requests to the imobile ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.7.0 - flutter: '>=3.3.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.0.2 dev_dependencies: flutter_test: From 9b57f5feaf26427d608e458e7eedd9f83231fea5 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Apr 2025 17:11:07 -0700 Subject: [PATCH 130/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.2.0.0, 13.2.0.0) PiperOrigin-RevId: 746230718 --- .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 4bbb85734..21ec83b53 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.1.0" +version = "2.2.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.1.0.0" + stringVersion = "13.2.0.0" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index 73794b4f3..76c167a5d 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.1.0' + s.version = '2.2.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.1.0.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.2.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 6ce3a1d58..9aab26f3f 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,16 +1,16 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.1.0 +version: 2.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: - sdk: '>=3.2.5 <4.0.0' - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 plugin_platform_interface: ^2.1.8 dev_dependencies: From 98cd9eee50c7665be9864fbbe0d1da0dcbd47ccc Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Fri, 11 Apr 2025 18:14:49 -0400 Subject: [PATCH 131/318] [Sample] Update samples to use google_mobile_ads version 6.0.0 (#1299) * Updating samples to 6.0.0 * Updated app open example * Updated interstitial example * Updated mediation example * Updated native platform * Updated native tempalte example * Updated rewarded example * Updated rewarded interstitial example * Setting explicit Xcode version * Using v12 APis * versioning * Removed extra method --------- Co-authored-by: Justin Malandruccolo --- .github/workflows/build.yaml | 4 +++- samples/admob/app_open_example/android/app/build.gradle | 2 +- samples/admob/app_open_example/android/settings.gradle | 4 ++-- samples/admob/app_open_example/pubspec.yaml | 2 +- samples/admob/banner_example/android/app/build.gradle | 2 +- samples/admob/banner_example/lib/main.dart | 6 ++++-- samples/admob/banner_example/pubspec.yaml | 2 +- .../admob/interstitial_example/android/app/build.gradle | 2 +- .../admob/interstitial_example/android/settings.gradle | 2 +- samples/admob/interstitial_example/pubspec.yaml | 2 +- samples/admob/mediation_example/android/app/build.gradle | 2 +- samples/admob/mediation_example/android/settings.gradle | 2 +- samples/admob/mediation_example/ios/Podfile | 2 +- samples/admob/mediation_example/ios/Runner/AppDelegate.m | 9 ++++----- samples/admob/mediation_example/pubspec.yaml | 2 +- .../native_platform_example/android/app/build.gradle | 2 +- .../native_platform_example/android/settings.gradle | 2 +- .../native_platform_example/ios/Runner/AppDelegate.swift | 4 ++-- samples/admob/native_platform_example/pubspec.yaml | 2 +- .../native_template_example/android/app/build.gradle | 2 +- .../native_template_example/android/settings.gradle | 2 +- samples/admob/native_template_example/pubspec.yaml | 2 +- samples/admob/rewarded_example/android/app/build.gradle | 2 +- samples/admob/rewarded_example/android/settings.gradle | 2 +- samples/admob/rewarded_example/pubspec.yaml | 2 +- .../android/app/build.gradle | 2 +- .../android/settings.gradle | 2 +- samples/admob/rewarded_interstitial_example/pubspec.yaml | 2 +- 28 files changed, 38 insertions(+), 35 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 637a8f5eb..c78597153 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -62,7 +62,9 @@ jobs: steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: - fetch-depth: 0 + fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/samples/admob/app_open_example/android/app/build.gradle b/samples/admob/app_open_example/android/app/build.gradle index 64a6a3bd4..0cd412804 100644 --- a/samples/admob/app_open_example/android/app/build.gradle +++ b/samples/admob/app_open_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.app_open_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/samples/admob/app_open_example/android/settings.gradle b/samples/admob/app_open_example/android/settings.gradle index 8452419a6..f4e0879bf 100644 --- a/samples/admob/app_open_example/android/settings.gradle +++ b/samples/admob/app_open_example/android/settings.gradle @@ -18,8 +18,8 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "8.2.1" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "com.android.application" version "8.6.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/app_open_example/pubspec.yaml b/samples/admob/app_open_example/pubspec.yaml index 694462bc1..826f8251d 100644 --- a/samples/admob/app_open_example/pubspec.yaml +++ b/samples/admob/app_open_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 dev_dependencies: flutter_test: diff --git a/samples/admob/banner_example/android/app/build.gradle b/samples/admob/banner_example/android/app/build.gradle index 7f04198ad..e62eed0f9 100644 --- a/samples/admob/banner_example/android/app/build.gradle +++ b/samples/admob/banner_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.banner_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index 46ac8e45e..89a45ab92 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -67,8 +67,10 @@ class BannerExampleState extends State { body: OrientationBuilder( builder: (context, orientation) { if (_currentOrientation != orientation) { - _isLoaded = false; - _loadAd(); + if (_currentOrientation != null) { + _isLoaded = false; + _loadAd(); + } _currentOrientation = orientation; } return Stack( diff --git a/samples/admob/banner_example/pubspec.yaml b/samples/admob/banner_example/pubspec.yaml index da160dbe5..969e1ecf3 100644 --- a/samples/admob/banner_example/pubspec.yaml +++ b/samples/admob/banner_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 dev_dependencies: flutter_test: diff --git a/samples/admob/interstitial_example/android/app/build.gradle b/samples/admob/interstitial_example/android/app/build.gradle index 2c46f036b..296a06d99 100644 --- a/samples/admob/interstitial_example/android/app/build.gradle +++ b/samples/admob/interstitial_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.interstitial_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/samples/admob/interstitial_example/android/settings.gradle b/samples/admob/interstitial_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/interstitial_example/android/settings.gradle +++ b/samples/admob/interstitial_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/interstitial_example/pubspec.yaml b/samples/admob/interstitial_example/pubspec.yaml index c8473c598..f8f11bff6 100644 --- a/samples/admob/interstitial_example/pubspec.yaml +++ b/samples/admob/interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 dev_dependencies: flutter_test: diff --git a/samples/admob/mediation_example/android/app/build.gradle b/samples/admob/mediation_example/android/app/build.gradle index 43675867e..ca75ac68a 100644 --- a/samples/admob/mediation_example/android/app/build.gradle +++ b/samples/admob/mediation_example/android/app/build.gradle @@ -43,7 +43,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.example.mediationexample" - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/samples/admob/mediation_example/android/settings.gradle b/samples/admob/mediation_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/mediation_example/android/settings.gradle +++ b/samples/admob/mediation_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/mediation_example/ios/Podfile b/samples/admob/mediation_example/ios/Podfile index 2ff9e1af1..3065706be 100644 --- a/samples/admob/mediation_example/ios/Podfile +++ b/samples/admob/mediation_example/ios/Podfile @@ -37,4 +37,4 @@ post_install do |installer| end end -pod 'GoogleMobileAdsMediationAppLovin', '< 13.0.0.0' +pod 'GoogleMobileAdsMediationAppLovin' diff --git a/samples/admob/mediation_example/ios/Runner/AppDelegate.m b/samples/admob/mediation_example/ios/Runner/AppDelegate.m index adffffb20..6a764ee0b 100644 --- a/samples/admob/mediation_example/ios/Runner/AppDelegate.m +++ b/samples/admob/mediation_example/ios/Runner/AppDelegate.m @@ -43,13 +43,12 @@ - (BOOL)application:(UIApplication *)application binaryMessenger:controller.binaryMessenger]; [methodChannel setMethodCallHandler:^(FlutterMethodCall *call, FlutterResult result) { - if ([call.method isEqualToString:@"setIsAgeRestrictedUser"]) { - [ALPrivacySettings - setIsAgeRestrictedUser:call.arguments[@"isAgeRestricted"]]; - result(nil); - } else if ([call.method isEqualToString:@"setHasUserConsent"]) { + if ([call.method isEqualToString:@"setHasUserConsent"]) { [ALPrivacySettings setHasUserConsent:call.arguments[@"hasUserConsent"]]; result(nil); + } else if ([call.method isEqualToString:@"setDoNotSell"]) { + [ALPrivacySettings setDoNotSell:call.arguments[@"isDoNotSell"]]; + result(nil); } else { result(FlutterMethodNotImplemented); } diff --git a/samples/admob/mediation_example/pubspec.yaml b/samples/admob/mediation_example/pubspec.yaml index 310ac5fb5..b31514111 100644 --- a/samples/admob/mediation_example/pubspec.yaml +++ b/samples/admob/mediation_example/pubspec.yaml @@ -23,7 +23,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 # The following adds the Cupertino Icons font to your application. diff --git a/samples/admob/native_platform_example/android/app/build.gradle b/samples/admob/native_platform_example/android/app/build.gradle index 6321c802d..32822e4ec 100644 --- a/samples/admob/native_platform_example/android/app/build.gradle +++ b/samples/admob/native_platform_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.native_platform_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 multiDexEnabled true targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() diff --git a/samples/admob/native_platform_example/android/settings.gradle b/samples/admob/native_platform_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/native_platform_example/android/settings.gradle +++ b/samples/admob/native_platform_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/native_platform_example/ios/Runner/AppDelegate.swift b/samples/admob/native_platform_example/ios/Runner/AppDelegate.swift index 81ad9744c..d72317d57 100644 --- a/samples/admob/native_platform_example/ios/Runner/AppDelegate.swift +++ b/samples/admob/native_platform_example/ios/Runner/AppDelegate.swift @@ -2,13 +2,13 @@ import UIKit import Flutter @objc class NativeAdFactoryExample: NSObject, FLTNativeAdFactory { - func createNativeAd(_ nativeAd: GADNativeAd, customOptions: [AnyHashable : Any]? = nil) -> GADNativeAdView? { + func createNativeAd(_ nativeAd: NativeAd, customOptions: [AnyHashable : Any]? = nil) -> NativeAdView? { // Create and place ad in view hierarchy. let nativeAdView = Bundle.main.loadNibNamed( "NativeAdView", owner: nil, - options: nil)?.first as! GADNativeAdView + options: nil)?.first as! NativeAdView // Associate the native ad view with the native ad object. This is // required to make the ad clickable. diff --git a/samples/admob/native_platform_example/pubspec.yaml b/samples/admob/native_platform_example/pubspec.yaml index 63598e5ff..c22a41d7b 100644 --- a/samples/admob/native_platform_example/pubspec.yaml +++ b/samples/admob/native_platform_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/native_template_example/android/app/build.gradle b/samples/admob/native_template_example/android/app/build.gradle index bb58c927c..dea893a00 100644 --- a/samples/admob/native_template_example/android/app/build.gradle +++ b/samples/admob/native_template_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.native_template_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 multiDexEnabled true targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() diff --git a/samples/admob/native_template_example/android/settings.gradle b/samples/admob/native_template_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/native_template_example/android/settings.gradle +++ b/samples/admob/native_template_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/native_template_example/pubspec.yaml b/samples/admob/native_template_example/pubspec.yaml index 5d3f84a3d..659884bd5 100644 --- a/samples/admob/native_template_example/pubspec.yaml +++ b/samples/admob/native_template_example/pubspec.yaml @@ -30,7 +30,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. diff --git a/samples/admob/rewarded_example/android/app/build.gradle b/samples/admob/rewarded_example/android/app/build.gradle index 45ddec980..f9b5a4f56 100644 --- a/samples/admob/rewarded_example/android/app/build.gradle +++ b/samples/admob/rewarded_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.rewarded_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 multiDexEnabled true targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() diff --git a/samples/admob/rewarded_example/android/settings.gradle b/samples/admob/rewarded_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/rewarded_example/android/settings.gradle +++ b/samples/admob/rewarded_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/rewarded_example/pubspec.yaml b/samples/admob/rewarded_example/pubspec.yaml index 3b382117c..dcf785aa7 100644 --- a/samples/admob/rewarded_example/pubspec.yaml +++ b/samples/admob/rewarded_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 dev_dependencies: flutter_test: diff --git a/samples/admob/rewarded_interstitial_example/android/app/build.gradle b/samples/admob/rewarded_interstitial_example/android/app/build.gradle index 793b1d4c8..1a369ff8a 100644 --- a/samples/admob/rewarded_interstitial_example/android/app/build.gradle +++ b/samples/admob/rewarded_interstitial_example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "com.example.rewarded_interstitial_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 multiDexEnabled true targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() diff --git a/samples/admob/rewarded_interstitial_example/android/settings.gradle b/samples/admob/rewarded_interstitial_example/android/settings.gradle index c7b131ad9..f4e0879bf 100644 --- a/samples/admob/rewarded_interstitial_example/android/settings.gradle +++ b/samples/admob/rewarded_interstitial_example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false - id "org.jetbrains.kotlin.android" version "1.9.0" apply false + id "org.jetbrains.kotlin.android" version "2.1.0" apply false } include ":app" \ No newline at end of file diff --git a/samples/admob/rewarded_interstitial_example/pubspec.yaml b/samples/admob/rewarded_interstitial_example/pubspec.yaml index 7f278558d..38048e124 100644 --- a/samples/admob/rewarded_interstitial_example/pubspec.yaml +++ b/samples/admob/rewarded_interstitial_example/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.3.1 + google_mobile_ads: ^6.0.0 dev_dependencies: flutter_test: From d01943ffa3a2bd10d847edbc3f75a8211cbeb6a6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 16 Apr 2025 19:50:21 -0700 Subject: [PATCH 132/318] Updating IronSource Flutter Adapter version to 1.3.0 PiperOrigin-RevId: 748506963 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index a11691b11..f714fe1d4 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,10 @@ ## ironSource Flutter Mediation Adapter Changelog +#### 1.3.0 +- Supports [ironSource Android adapter version 8.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8800). +- Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + #### 1.2.0 - Supports [ironSource Android adapter version 8.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8700). - Supports [ironSource iOS adapter version 8.6.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-86100). From 508429ac180512548a22176babdf84036b7e9165 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 16 Apr 2025 20:12:30 -0700 Subject: [PATCH 133/318] Updating Mintegral Flutter Adapter to version 1.2.1 PiperOrigin-RevId: 748510788 --- .../mediation/gma_mediation_mintegral/CHANGELOG.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 4f1b47029..e25bf3654 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,17 +1,22 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### 1.2.0 +#### Version 1.2.1 +- Supports [Mintegral Android adapter version 16.9.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169610). +- Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.2.0 - Supports [Mintegral Android adapter version 16.9.41.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169411). - Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.1.0 +#### Version 1.1.0 - iOS plugin is now a static framework. - Supports [Mintegral Android adapter version 16.8.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-168610). - Supports [Mintegral iOS adapter version 7.7.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7750). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Mintegral Android adapter version 16.7.21.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-167210). From 9dbf504d0872cf9ab6861bccd57062e523ffe37c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Sun, 20 Apr 2025 23:04:20 -0700 Subject: [PATCH 134/318] Update Applovin Flutter Adapter to version 2.2.0. PiperOrigin-RevId: 749692619 --- .../gma_mediation_applovin/CHANGELOG.md | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index fd47898fc..a7b70780d 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,27 +1,32 @@ ## AppLovin Flutter Mediation Adapter Changelog -#### 2.1.0 +#### Version 2.2.0 +- Supports [AppLovin Android adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13200). +- Supports [AppLovin iOS adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13200). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 2.1.0 - Supports [AppLovin Android adapter version 13.1.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13100). - Supports [AppLovin iOS adapter version 13.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13100). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 2.0.0 +#### Version 2.0.0 - Supports [AppLovin Android adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13010). - Supports [AppLovin iOS adapter version 13.0.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13010). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.2.0 -* Supports [AppLovin Android adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12610). -* Supports [AppLovin iOS adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12610). +#### Version 1.2.0 +- Supports [AppLovin Android adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12610). +- Supports [AppLovin iOS adapter version 12.6.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12610). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. -#### 1.1.0 -* API for the GmaMediationApplovin is no longer static. -* Supports [AppLovin Android adapter version 12.4.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12430). -* Supports [AppLovin iOS adapter version 12.4.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12420). +#### Version 1.1.0 +- API for the GmaMediationApplovin is no longer static. +- Supports [AppLovin Android adapter version 12.4.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12430). +- Supports [AppLovin iOS adapter version 12.4.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12420). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. -#### 1.0.0 +#### Version 1.0.0 * Initial release. - Supports [AppLovin Android adapter version 12.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-12300). - Supports [AppLovin iOS adapter version 12.2.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-12210). From a95358349d9e89b51a411a74c31972adedaa2682 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Sun, 20 Apr 2025 23:06:33 -0700 Subject: [PATCH 135/318] Updating Moloco Flutter Adapter to version 1.2.0 PiperOrigin-RevId: 749693011 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 08506e84d..9c2da6340 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,11 +1,16 @@ ## Moloco Flutter Mediation Adapter Changelog -#### 1.1.0 +#### Version 1.2.0 +- Supports [Moloco Android adapter version 3.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3801). +- Supports [Moloco iOS adapter version 3.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3800). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.1.0 - Supports [Moloco Android adapter version 3.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3700). - Supports [Moloco iOS adapter version 3.6.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3600). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Moloco Android adapter version 3.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3610). - Supports [Moloco iOS adapter version 3.6.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3600). From 298f2b4a9d306fba3202d366fdf757108d5588d1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Sun, 20 Apr 2025 23:07:23 -0700 Subject: [PATCH 136/318] Update Line Flutter Adapter to version 1.0.2. PiperOrigin-RevId: 749693147 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index f97589e9a..7e9492a3b 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,11 +1,16 @@ ## Line Flutter Mediation Adapter Changelog -#### 1.0.1 +#### Version 1.0.2 +- Supports [Line Android adapter version 2.9.20250317.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202503171). +- Supports [Line iOS adapter version 2.9.20241106.3](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411063). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1 + +#### Version 1.0.1 - Supports [Line Android adapter version 2.9.20250110.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501101). - Supports [Line iOS adapter version 2.9.20241106.2](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411062). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Line Android adapter version 2.9.20250110.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501100). - Supports [Line iOS adapter version 2.9.20241106.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411061). From 8a3b3d27aed091a2d464fae43935308ad34501e5 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 22 Apr 2025 12:19:24 -0700 Subject: [PATCH 137/318] Update iOS minimum platform for myTarget Adapter to 12.4. Updated GADAdNetworkExtras to new name on swift AdNetworkExtras PiperOrigin-RevId: 750284920 --- .../ios/Classes/AppLovinFlutterMediationExtras.swift | 10 +++++----- .../ios/Classes/InMobiFlutterMediationExtras.swift | 12 ++++++------ .../ios/Classes/LineFlutterMediationExtras.swift | 4 ++-- .../ios/Classes/MytargetFlutterMediationExtras.swift | 4 ++-- .../ios/gma_mediation_mytarget.podspec | 2 +- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinFlutterMediationExtras.swift b/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinFlutterMediationExtras.swift index 8ba4be5f3..4a071f205 100644 --- a/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinFlutterMediationExtras.swift +++ b/packages/mediation/gma_mediation_applovin/ios/Classes/AppLovinFlutterMediationExtras.swift @@ -12,23 +12,23 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Foundation import AppLovinAdapter +import Foundation @objc protocol FLTMediationExtras { var extras: NSMutableDictionary { get } - func getMediationExtras() -> GADAdNetworkExtras + func getMediationExtras() -> AdNetworkExtras } @objc(AppLovinFlutterMediationExtras) -class AppLovinFlutterMediationExtras : NSObject, FLTMediationExtras { +class AppLovinFlutterMediationExtras: NSObject, FLTMediationExtras { var extras: NSMutableDictionary = [:] - func getMediationExtras() -> GADAdNetworkExtras { + func getMediationExtras() -> AdNetworkExtras { let appLovinExtras = GADMAdapterAppLovinExtras() if let muteAudio = extras["isMuted"] as? Bool { appLovinExtras.muteAudio = muteAudio } return appLovinExtras } -} \ No newline at end of file +} diff --git a/packages/mediation/gma_mediation_inmobi/ios/Classes/InMobiFlutterMediationExtras.swift b/packages/mediation/gma_mediation_inmobi/ios/Classes/InMobiFlutterMediationExtras.swift index fd78705fc..bb860f9c6 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/Classes/InMobiFlutterMediationExtras.swift +++ b/packages/mediation/gma_mediation_inmobi/ios/Classes/InMobiFlutterMediationExtras.swift @@ -17,14 +17,14 @@ import InMobiAdapter @objc protocol FLTMediationExtras { var extras: NSMutableDictionary { get } - func getMediationExtras() -> GADAdNetworkExtras + func getMediationExtras() -> AdNetworkExtras } @objc(InMobiFlutterMediationExtras) -class InMobiFlutterMediationExtras : NSObject, FLTMediationExtras { +class InMobiFlutterMediationExtras: NSObject, FLTMediationExtras { var extras: NSMutableDictionary = [:] - func getMediationExtras() -> GADAdNetworkExtras { + func getMediationExtras() -> AdNetworkExtras { let inMobiExtras = GADInMobiExtras() if let ageGroup = extras["ageGroup"] as? Int { switch ageGroup { @@ -45,7 +45,7 @@ class InMobiFlutterMediationExtras : NSObject, FLTMediationExtras { case 7: inMobiExtras.ageGroup = IMSDKAgeGroup.above65 default: - break; + break } } if let educationType = extras["educationType"] as? Int { @@ -57,7 +57,7 @@ class InMobiFlutterMediationExtras : NSObject, FLTMediationExtras { case 2: inMobiExtras.educationType = IMSDKEducation.postGraduateOrAbove default: - break; + break } } if let logLevel = extras["logLevel"] as? Int { @@ -69,7 +69,7 @@ class InMobiFlutterMediationExtras : NSObject, FLTMediationExtras { case 2: inMobiExtras.logLevel = IMSDKLogLevel.error default: - break; + break } } diff --git a/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift b/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift index 32d39b399..195c536e2 100644 --- a/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift +++ b/packages/mediation/gma_mediation_line/ios/Classes/LineFlutterMediationExtras.swift @@ -17,14 +17,14 @@ import LineAdapter @objc protocol FLTMediationExtras { var extras: NSMutableDictionary { get } - func getMediationExtras() -> GADAdNetworkExtras + func getMediationExtras() -> AdNetworkExtras } @objc(GADFLineFlutterMediationExtras) class LineFlutterMediationExtras: NSObject, FLTMediationExtras { var extras: NSMutableDictionary = [:] - func getMediationExtras() -> GADAdNetworkExtras { + func getMediationExtras() -> AdNetworkExtras { let lineExtras = GADMediationAdapterLineExtras() if let enableAdSound = extras["enableAdSound"] as? Bool { lineExtras.adAudio = diff --git a/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift b/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift index 2b5ff4a7b..46459c4b4 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift +++ b/packages/mediation/gma_mediation_mytarget/ios/Classes/MytargetFlutterMediationExtras.swift @@ -17,14 +17,14 @@ import MyTargetAdapter @objc protocol FLTMediationExtras { var extras: NSMutableDictionary { get } - func getMediationExtras() -> GADAdNetworkExtras + func getMediationExtras() -> AdNetworkExtras } @objc(MytargetFlutterMediationExtras) class MytargetFlutterMediationExtras: NSObject, FLTMediationExtras { var extras: NSMutableDictionary = [:] - func getMediationExtras() -> GADAdNetworkExtras { + func getMediationExtras() -> AdNetworkExtras { let mytargetExtras = GADMAdapterMyTargetExtras() if let isIOSDebugMode = extras["isIOSDebugMode"] as? Bool { mytargetExtras.isDebugMode = isIOSDebugMode diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index ca0f0f334..1be46db20 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -12,7 +12,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.28.0.0' - s.platform = :ios, '12.0' + s.platform = :ios, '12.4' s.static_framework = true s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } From 97c2b2e9b2728f0528f007ea7d405687480776fd Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 22 Apr 2025 12:55:44 -0700 Subject: [PATCH 138/318] Updating Liftoff Monetize Flutter mediation plugin's version to 1.1.1 in the mediation developer docs. PiperOrigin-RevId: 750296064 --- .../CHANGELOG.md | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index 6d071e014..8d25f6808 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,13 +1,18 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog -#### 1.1.0 -- iOS plugin is now a static framework. -- Verified compatibility with Liftoff Monetize Android adapter version 7.4.3.0 -- Verified compatibility with Liftoff Monetize iOS adapter version 7.4.4.0 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +#### Version 1.1.1 +* Supports [Liftoff Monetize Android adapter version 7.4.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7431). +* Supports [Liftoff Monetize iOS adapter version 7.4.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7450). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. -#### 1.0.0 -- Initial release. -- Verified compatibility with Liftoff Monetize Android adapter version 7.3.1.0 -- Verified compatibility with LiftoffMonetize iOS adapter version 7.3.2.0 -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. \ No newline at end of file +#### Version 1.1.0 +* iOS plugin is now a static framework. +* Supports [Liftoff Monetize Android adapter version 7.4.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7430). +* Supports [Liftoff Monetize iOS adapter version 7.4.4.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7440). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.0.0 +* Initial release. +* Supports [Liftoff Monetize Android adapter version 7.3.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7310). +* Supports [Liftoff Monetize iOS adapter version 7.3.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7320). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 400a382560cbc2bda0fecb62d86dc4bbfdf209bb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 09:26:06 -0700 Subject: [PATCH 139/318] Updating myTarget Flutter Adapter to version 1.1.0 PiperOrigin-RevId: 750619173 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 97c8979f6..600fcc894 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,6 +1,11 @@ ## myTarget Flutter Mediation Adapter Changelog -#### 1.0.0 +#### Version 1.1.0 +* Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). +* Supports [myTarget iOS adapter version 5.28.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52800). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.0.0 * Initial release. * Supports [myTarget Android adapter version 5.27.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52710). * Supports [myTarget iOS adapter version 5.24.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52410). From 7b96fef6928db92ed7aa2fa8d5e8b759624707d2 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 09:28:20 -0700 Subject: [PATCH 140/318] Updating Chartboost Flutter Plugin to version 1.0.2 PiperOrigin-RevId: 750619932 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 3e82e8bd6..b0d54cb64 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,11 +1,16 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### 1.0.1 +#### Version 1.0.2 +- Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). +- Supports [Charboost iOS adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9810). +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.0.1 - Supports [Chartboost Android adapter version 9.8.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9830). - Supports [Charboost iOS adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9810). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Chartboost Android adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9810). - Supports [Charboost iOS adapter version 9.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9800). From 370df145ead9e4d4889aacc93726107b3bc47cca Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 09:31:20 -0700 Subject: [PATCH 141/318] Update Meta Flutter Plugin to version 1.2.0 PiperOrigin-RevId: 750620883 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 7486d9304..b3f056415 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,18 +1,23 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog -#### 1.1.0 +#### Version 1.2.0 +* Supports [Meta Audience Network Android adapter version 6.19.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61901). +* Supports [Meta Audience Network iOS adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61700). +* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. + +#### Version 1.1.0 * iOS plugin is now a static framework. * Supports [Meta Audience Network Android adapter version 6.18.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61800). * Supports [Meta Audience Network iOS adapter version 6.16.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61600). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.1 +#### Version 1.0.1 * Added dart class to allow correct compatibility analysis with host platforms - Supports [Meta Audience Network Android adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61700). - Supports [Meta Audience Network iOS adapter version 6.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61500). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. -#### 1.0.0 +#### Version 1.0.0 * Initial release. - Supports [Meta Audience Network Android adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61700). - Supports [Meta Audience Network iOS adapter version 6.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61500). From 94ef01fa9fdfce49f2d56c63ae349adc818cf256 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 23 Apr 2025 10:22:16 -0700 Subject: [PATCH 142/318] Updating CHANGELOG to correct google_mobile_ads version. PiperOrigin-RevId: 750639020 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_line/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_meta/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 +- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index a7b70780d..c44fa90fe 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 2.2.0 - Supports [AppLovin Android adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13200). - Supports [AppLovin iOS adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13200). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 2.1.0 - Supports [AppLovin Android adapter version 13.1.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13100). diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index b0d54cb64..165dd6eeb 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.0.2 - Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). - Supports [Charboost iOS adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9810). -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.1 - Supports [Chartboost Android adapter version 9.8.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9830). diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index f714fe1d4..a077b133b 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -3,7 +3,7 @@ #### 1.3.0 - Supports [ironSource Android adapter version 8.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8800). - Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### 1.2.0 - Supports [ironSource Android adapter version 8.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8700). diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 7e9492a3b..0e46eedf0 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.0.2 - Supports [Line Android adapter version 2.9.20250317.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202503171). - Supports [Line iOS adapter version 2.9.20241106.3](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411063). -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1 +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.0.1 - Supports [Line Android adapter version 2.9.20250110.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202501101). diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index b3f056415..85494232c 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.2.0 * Supports [Meta Audience Network Android adapter version 6.19.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61901). * Supports [Meta Audience Network iOS adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61700). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.0 * iOS plugin is now a static framework. diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index e25bf3654..586bbc2f6 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.2.1 - Supports [Mintegral Android adapter version 16.9.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169610). - Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.0 - Supports [Mintegral Android adapter version 16.9.41.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169411). diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 9c2da6340..c3a5e0b44 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.2.0 - Supports [Moloco Android adapter version 3.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3801). - Supports [Moloco iOS adapter version 3.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3800). -- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.0 - Supports [Moloco Android adapter version 3.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3700). diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 600fcc894..5fcd4e2b4 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -3,7 +3,7 @@ #### Version 1.1.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). * Supports [myTarget iOS adapter version 5.28.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52800). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.0 * Initial release. From 53bc9b2c04ecd1ef562944141d0c4abbe3763d6f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 13:08:32 -0700 Subject: [PATCH 143/318] Updating inMobi Flutter mediation plugin's version to 1.1.1 in the mediation developer docs. PiperOrigin-RevId: 750697118 --- .../mediation/gma_mediation_inmobi/CHANGELOG.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index e3468b679..c339c15af 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,13 +1,18 @@ ## InMobi Flutter Mediation Adapter Changelog -#### 1.1.0 +#### Version 1.1.1 +* Supports [inMobi Android adapter version 10.8.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10820). +* Supports [inMobi iOS adapter version 10.8.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10820). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 1.1.0 * iOS plugin is now a static framework. -* Verified compatibility with InMobi Android adapter version 10.8.0.0. -* Verified compatibility with InMobi iOS adapter version 10.8.0.0. +* Supports [inMobi Android adapter version 10.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10800). +* Supports [inMobi iOS adapter version 10.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10800). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 * Initial release. -* Verified compatibility with InMobi Android adapter version 10.6.7.1. -* Verified compatibility with InMobi iOS adapter version 10.7.2.0. +* Supports [inMobi Android adapter version 10.6.7.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10671). +* Supports [inMobi iOS adapter version 10.7.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10720). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 2955e8e8d2b1b48bbcb80587ab3338dbd17ca1a6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 13:11:50 -0700 Subject: [PATCH 144/318] Updating i-mobile Flutter mediation plugin version to 1.0.1 in the mediation developer docs. PiperOrigin-RevId: 750698140 --- packages/mediation/gma_mediation_imobile/CHANGELOG.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_imobile/CHANGELOG.md b/packages/mediation/gma_mediation_imobile/CHANGELOG.md index 7f9ba7104..e2a1a544c 100644 --- a/packages/mediation/gma_mediation_imobile/CHANGELOG.md +++ b/packages/mediation/gma_mediation_imobile/CHANGELOG.md @@ -1,6 +1,11 @@ ## i-mobile Flutter Mediation Adapter Changelog -#### 1.0.0 +#### Version 1.0.1 +* Supports [i-mobile Android adapter version 2.3.2.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/imobile/CHANGELOG.md#version-2321). +* Supports [i-mobile iOS adapter version 2.3.4.2](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/I-Mobile/CHANGELOG.md#version-2342). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 1.0.0 * Initial release. * Supports [i-mobile Android adapter version 2.3.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/imobile/CHANGELOG.md#version-2320). * Supports [i-mobile iOS adapter version 2.3.4.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/I-Mobile/CHANGELOG.md#version-2341). From 601703d166f11ad2c9f1c3db2ac21e133070bd48 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 13:12:59 -0700 Subject: [PATCH 145/318] Updating Pangle Flutter Adapter version to 2.2.0 in the mediation developer docs. PiperOrigin-RevId: 750698486 --- .../mediation/gma_mediation_pangle/CHANGELOG.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index bec80c4de..4724a7408 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,21 +1,26 @@ ## Pangle Flutter Mediation Adapter Changelog -#### 2.1.0 +#### Version 2.2.0 +- Supports [Pangle Android adapter version 6.5.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-65080). +- Supports [Pangle iOS adapter version 6.5.0.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-65090). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 2.1.0 - Supports [Pangle Android adapter version 6.5.0.4.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-65041). - Supports [Pangle iOS adapter version 6.5.0.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-65080). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 2.0.0 +#### Version 2.0.0 - Supports [Pangle Android adapter version 6.4.0.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-64060). - Supports [Pangle iOS adapter version 6.4.1.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-64110). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.0. -#### 1.1.0 +#### Version 1.1.0 - Supports [Pangle Android adapter version 5.9.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-59040). - Supports [Pangle iOS adapter version 5.9.0.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-59070). - Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Pangle Android adapter version 5.8.0.9.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-58090). - Supports [Pangle iOS adapter version 5.8.0.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-58080). From 3a9d7787fe0b3bb9463ae8432b31001db53aa19d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 23 Apr 2025 16:03:25 -0700 Subject: [PATCH 146/318] Updating maio Flutter mediation plugin's version to 1.0.1 in the mediation developer docs. PiperOrigin-RevId: 750755314 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index 2b37d86d1..46b044cd2 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,6 +1,11 @@ ## maio Flutter Mediation Adapter Changelog -#### 1.0.0 +#### Version 1.0.1 +- Supports [maio Android adapter version 2.0.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2031). +- Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 1.0.0 - Initial release. - Supports [maio Android adapter version 2.0.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2030). - Supports [maio iOS adapter version 2.1.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2160). From 4c9eddfac22fed77fb7751dfa671a5f5e6fec5fd Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Apr 2025 14:26:02 -0700 Subject: [PATCH 147/318] Updating DTExchange Flutter mediation plugin to support the latest adapters (8.3.7.0, 8.3.6.0) PiperOrigin-RevId: 752448054 --- .../mediation/gma_mediation_dtexchange/android/build.gradle | 4 ++-- .../ios/gma_mediation_dtexchange.podspec | 2 +- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index a2c85d4fe..a163336fd 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version = "1.1.2" +version = "1.1.3" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.3.6.1" + stringVersion = "8.3.7.0" } android { diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 522c4cc64..3545929d2 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.1.2' + s.version = '1.1.3' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index fca714ed7..c8aca5354 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.1.2 +version: 1.1.3 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: From fa60c5dc34b5a1ebc3f110fa9add428ca540a21a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Apr 2025 14:26:13 -0700 Subject: [PATCH 148/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.14.2.0, 4.14.2.0) PiperOrigin-RevId: 752448127 --- packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 9404ef87e..64ca8f383 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.4.0" +version = "1.4.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.14.1.0" + stringVersion = "4.14.2.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 0e1f3978c..5e278ac4b 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.4.0' + s.version = '1.4.1' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.14.1.1' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.14.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 67676ae88..20f94c011 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.4.0 +version: 1.4.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From c93cb1447b9e1412e13cd647e073304ec798f88b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Apr 2025 14:31:13 -0700 Subject: [PATCH 149/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.2.0.1, 13.2.0.0) PiperOrigin-RevId: 752449886 --- .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 2 +- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 21ec83b53..c585b12ef 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.2.0" +version = "2.2.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.2.0.0" + stringVersion = "13.2.0.1" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index 76c167a5d..81254e7b3 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.2.0' + s.version = '2.2.1' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 9aab26f3f..c7a8a8aef 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.2.0 +version: 2.2.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From 8dae08a6cf9563886d6d545afabc8ee87a48d3e1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Apr 2025 14:34:29 -0700 Subject: [PATCH 150/318] Updating MyTarget Flutter mediation plugin to support the latest adapters (5.27.1.1, 5.29.1.0) PiperOrigin-RevId: 752450923 --- .../mediation/gma_mediation_mytarget/android/build.gradle | 2 +- .../gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec | 4 ++-- packages/mediation/gma_mediation_mytarget/pubspec.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index a11a70385..3ae10df77 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" -version = "1.1.0" +version = "1.2.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index 1be46db20..0998214b9 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_mytarget' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of mytarget.' s.description = <<-DESC Mediation Adapter for mytarget to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.28.0.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.29.1.0' s.platform = :ios, '12.4' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml index 7b786c663..3afc15704 100644 --- a/packages/mediation/gma_mediation_mytarget/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_mytarget description: 'Mediation Adapter that enables sending ad requests to the mytarget ad network using the google_mobile_ads plugin.' -version: 1.1.0 +version: 1.2.0 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From 6d0ea02c2e86ba8f5c63a0fc489fb396cd11b440 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 1 May 2025 17:03:51 -0700 Subject: [PATCH 151/318] Updated the minimum sdk to 23, updated the GMS version and the dart version for each adapter example. PiperOrigin-RevId: 753782412 --- .../mediation/gma_mediation_applovin/android/build.gradle | 2 +- .../gma_mediation_applovin/example/android/app/build.gradle | 2 +- .../mediation/gma_mediation_applovin/example/pubspec.yaml | 4 ++-- .../mediation/gma_mediation_chartboost/android/build.gradle | 2 +- .../gma_mediation_chartboost/example/android/app/build.gradle | 2 +- .../mediation/gma_mediation_chartboost/example/pubspec.yaml | 3 ++- .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- .../gma_mediation_dtexchange/example/android/app/build.gradle | 2 +- .../mediation/gma_mediation_dtexchange/example/pubspec.yaml | 3 ++- packages/mediation/gma_mediation_imobile/android/build.gradle | 2 +- .../example/android/app/build.gradle.kts | 2 +- packages/mediation/gma_mediation_imobile/example/pubspec.yaml | 1 + packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../gma_mediation_inmobi/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_inmobi/example/pubspec.yaml | 3 ++- .../mediation/gma_mediation_ironsource/android/build.gradle | 2 +- .../gma_mediation_ironsource/example/android/app/build.gradle | 2 +- .../mediation/gma_mediation_ironsource/example/pubspec.yaml | 3 ++- .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- .../example/android/app/build.gradle | 2 +- .../gma_mediation_liftoffmonetize/example/pubspec.yaml | 4 ++-- packages/mediation/gma_mediation_line/android/build.gradle | 2 +- .../gma_mediation_line/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_line/example/pubspec.yaml | 3 ++- packages/mediation/gma_mediation_maio/android/build.gradle | 2 +- .../gma_mediation_maio/example/android/app/build.gradle.kts | 2 +- packages/mediation/gma_mediation_maio/example/pubspec.yaml | 1 + packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- .../gma_mediation_meta/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_meta/example/pubspec.yaml | 4 ++-- .../mediation/gma_mediation_mintegral/android/build.gradle | 2 +- .../gma_mediation_mintegral/example/android/app/build.gradle | 2 +- .../mediation/gma_mediation_mintegral/example/pubspec.yaml | 3 ++- packages/mediation/gma_mediation_moloco/android/build.gradle | 2 +- .../gma_mediation_moloco/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_moloco/example/pubspec.yaml | 1 + .../mediation/gma_mediation_mytarget/android/build.gradle | 2 +- .../example/android/app/build.gradle.kts | 2 +- .../mediation/gma_mediation_mytarget/example/pubspec.yaml | 1 + packages/mediation/gma_mediation_pangle/android/build.gradle | 2 +- .../gma_mediation_pangle/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_pangle/example/pubspec.yaml | 3 ++- packages/mediation/gma_mediation_unity/android/build.gradle | 2 +- .../gma_mediation_unity/example/android/app/build.gradle | 2 +- packages/mediation/gma_mediation_unity/example/pubspec.yaml | 3 ++- 45 files changed, 56 insertions(+), 44 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index c585b12ef..8e49d55c0 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_applovin/example/android/app/build.gradle b/packages/mediation/gma_mediation_applovin/example/android/app/build.gradle index afd0c63f4..58616ed81 100644 --- a/packages/mediation/gma_mediation_applovin/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_applovin/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_applovin/example/pubspec.yaml b/packages/mediation/gma_mediation_applovin/example/pubspec.yaml index a85d0499c..950a55c17 100644 --- a/packages/mediation/gma_mediation_applovin/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_applovin plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.2.5 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,7 +17,7 @@ dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.0.0 + google_mobile_ads: ^6.0.0 gma_mediation_applovin: # When depending on this package from a real application you should use: # gma_mediation_applovin: ^x.y.z diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 7d424f173..d82fe7870 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -53,7 +53,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle b/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle index e6b47c9ac..2ccf073e7 100644 --- a/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/example/android/app/build.gradle @@ -23,7 +23,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml index b176eecb5..882e8ee57 100644 --- a/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_chartboost plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: ^3.5.4 + sdk: ^3.6.0 # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_chartboost: # When depending on this package from a real application you should use: # gma_mediation_chartboost: ^x.y.z diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index a163336fd..4f4cbfc77 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_dtexchange/example/android/app/build.gradle b/packages/mediation/gma_mediation_dtexchange/example/android/app/build.gradle index 13ab147d6..e7bd134e4 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_dtexchange/example/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/example/pubspec.yaml index 40b64da46..5348d91bd 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_dtexchange plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.3.3 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_dtexchange: # When depending on this package from a real application you should use: # gma_mediation_dtexchange: ^x.y.z diff --git a/packages/mediation/gma_mediation_imobile/android/build.gradle b/packages/mediation/gma_mediation_imobile/android/build.gradle index 6383dbc79..809a2a781 100644 --- a/packages/mediation/gma_mediation_imobile/android/build.gradle +++ b/packages/mediation/gma_mediation_imobile/android/build.gradle @@ -48,7 +48,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts index 8195e83e8..25c851504 100644 --- a/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts +++ b/packages/mediation/gma_mediation_imobile/example/android/app/build.gradle.kts @@ -23,7 +23,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_imobile_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_imobile/example/pubspec.yaml b/packages/mediation/gma_mediation_imobile/example/pubspec.yaml index 4e8a54bbb..38ebf52fa 100644 --- a/packages/mediation/gma_mediation_imobile/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_imobile/example/pubspec.yaml @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_imobile: # When depending on this package from a real application you should use: # gma_mediation_imobile: ^x.y.z diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 8ab836d26..14742cec2 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_inmobi/example/android/app/build.gradle b/packages/mediation/gma_mediation_inmobi/example/android/app/build.gradle index e7d505edc..b716ee693 100644 --- a/packages/mediation/gma_mediation_inmobi/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_inmobi/example/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/example/pubspec.yaml index 0630357ee..1c779abf5 100644 --- a/packages/mediation/gma_mediation_inmobi/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_inmobi plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.3.3 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_inmobi: # When depending on this package from a real application you should use: # gma_mediation_inmobi: ^x.y.z diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 63b893a1e..50046f547 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -53,7 +53,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_ironsource/example/android/app/build.gradle b/packages/mediation/gma_mediation_ironsource/example/android/app/build.gradle index 3085c707e..f2f2911fe 100644 --- a/packages/mediation/gma_mediation_ironsource/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_ironsource/example/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/example/pubspec.yaml index ccfa24bce..37fd6ab76 100644 --- a/packages/mediation/gma_mediation_ironsource/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_ironsource plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.3.1 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_ironsource: # When depending on this package from a real application you should use: # gma_mediation_ironsource: ^x.y.z diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 223447bc9..2e1fd69ca 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_liftoffmonetize/example/android/app/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/example/android/app/build.gradle index 860988977..236cc3b3c 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_liftoffmonetize/example/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/example/pubspec.yaml index 7a365efaf..b4cef4018 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_liftoffmonetize plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.2.5 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,7 +17,7 @@ dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.0.0 + google_mobile_ads: ^6.0.0 gma_mediation_liftoffmonetize: # When depending on this package from a real application you should use: # gma_mediation_liftoffmonetize: ^x.y.z diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index 6f4ce4b34..ad342a3f0 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_line/example/android/app/build.gradle b/packages/mediation/gma_mediation_line/example/android/app/build.gradle index 8d12793be..5aacb8a60 100644 --- a/packages/mediation/gma_mediation_line/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_line/example/android/app/build.gradle @@ -24,7 +24,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_line/example/pubspec.yaml b/packages/mediation/gma_mediation_line/example/pubspec.yaml index e7150e7aa..75e5d659d 100644 --- a/packages/mediation/gma_mediation_line/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_line plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: ^3.5.4 + sdk: ^3.6.0 # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_line: # When depending on this package from a real application you should use: # gma_mediation_line: ^x.y.z diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 141a2ca24..718b6d51c 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -48,7 +48,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts index 996d3138d..6c545eb71 100644 --- a/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts +++ b/packages/mediation/gma_mediation_maio/example/android/app/build.gradle.kts @@ -23,7 +23,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_maio/example/pubspec.yaml b/packages/mediation/gma_mediation_maio/example/pubspec.yaml index 38a5278b3..ca87f21a2 100644 --- a/packages/mediation/gma_mediation_maio/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_maio/example/pubspec.yaml @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_maio: # When depending on this package from a real application you should use: # gma_mediation_maio: ^x.y.z diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 5a0718c57..fec1ac2fe 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_meta/example/android/app/build.gradle b/packages/mediation/gma_mediation_meta/example/android/app/build.gradle index 76bdc62cb..d8251030c 100644 --- a/packages/mediation/gma_mediation_meta/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_meta/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_meta/example/pubspec.yaml b/packages/mediation/gma_mediation_meta/example/pubspec.yaml index 089210cfe..e1b4e495a 100644 --- a/packages/mediation/gma_mediation_meta/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_meta plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.2.5 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,7 +17,7 @@ dependencies: flutter: sdk: flutter - google_mobile_ads: ^5.0.0 + google_mobile_ads: ^6.0.0 gma_mediation_meta: # When depending on this package from a real application you should use: # gma_mediation_meta: ^x.y.z diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index 84ee1501f..0f9fd4f8c 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_mintegral/example/android/app/build.gradle b/packages/mediation/gma_mediation_mintegral/example/android/app/build.gradle index a31107e11..8553f1326 100644 --- a/packages/mediation/gma_mediation_mintegral/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_mintegral/example/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/example/pubspec.yaml index a7973d0d6..2a8191c4f 100644 --- a/packages/mediation/gma_mediation_mintegral/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_mintegral plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.3.3 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_mintegral: # When depending on this package from a real application you should use: # gma_mediation_mintegral: ^x.y.z diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 79446231b..4e3dc17e8 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -48,7 +48,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle b/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle index fb0b8ab23..4042aaef9 100644 --- a/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_moloco/example/android/app/build.gradle @@ -24,7 +24,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_moloco/example/pubspec.yaml b/packages/mediation/gma_mediation_moloco/example/pubspec.yaml index 810d43dde..c7b4f2b93 100644 --- a/packages/mediation/gma_mediation_moloco/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/example/pubspec.yaml @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_moloco: # When depending on this package from a real application you should use: # gma_mediation_moloco: ^x.y.z diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index 3ae10df77..992f92409 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -48,7 +48,7 @@ android { } defaultConfig { - minSdk = 21 + minSdk = 23 } dependencies { diff --git a/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts index 4b36dd009..0ac321175 100644 --- a/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts +++ b/packages/mediation/gma_mediation_mytarget/example/android/app/build.gradle.kts @@ -23,7 +23,7 @@ android { applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget_example" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. - minSdk = flutter.minSdkVersion + minSdk = 23 targetSdk = flutter.targetSdkVersion versionCode = flutter.versionCode versionName = flutter.versionName diff --git a/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml index ee512cc72..ee37b0329 100644 --- a/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/example/pubspec.yaml @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_mytarget: # When depending on this package from a real application you should use: # gma_mediation_mytarget: ^x.y.z diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index f3c7df121..06e472726 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -53,7 +53,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 } dependencies { diff --git a/packages/mediation/gma_mediation_pangle/example/android/app/build.gradle b/packages/mediation/gma_mediation_pangle/example/android/app/build.gradle index fa2bb9b38..3a7497caa 100644 --- a/packages/mediation/gma_mediation_pangle/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_pangle/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion 21 + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_pangle/example/pubspec.yaml b/packages/mediation/gma_mediation_pangle/example/pubspec.yaml index 4667991f7..aa47ab8f8 100644 --- a/packages/mediation/gma_mediation_pangle/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/example/pubspec.yaml @@ -5,7 +5,7 @@ description: "Demonstrates how to use the gma_mediation_pangle plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.2.5 <4.0.0' + sdk: '>=3.6.0 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -17,6 +17,7 @@ dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_pangle: # When depending on this package from a real application you should use: # gma_mediation_pangle: ^x.y.z diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 64ca8f383..db61dacc2 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -50,7 +50,7 @@ android { } defaultConfig { - minSdkVersion 21 + minSdkVersion 23 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/packages/mediation/gma_mediation_unity/example/android/app/build.gradle b/packages/mediation/gma_mediation_unity/example/android/app/build.gradle index d1e82dd7d..994f31fd9 100644 --- a/packages/mediation/gma_mediation_unity/example/android/app/build.gradle +++ b/packages/mediation/gma_mediation_unity/example/android/app/build.gradle @@ -45,7 +45,7 @@ android { applicationId "io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity_example" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion + minSdkVersion 23 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/packages/mediation/gma_mediation_unity/example/pubspec.yaml b/packages/mediation/gma_mediation_unity/example/pubspec.yaml index aa56cfbfc..a8028c220 100644 --- a/packages/mediation/gma_mediation_unity/example/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/example/pubspec.yaml @@ -5,12 +5,13 @@ description: "Demonstrates how to use the gma_mediation_unity plugin." publish_to: 'none' # Remove this line if you wish to publish to pub.dev environment: - sdk: '>=3.2.5 <4.0.0' + sdk: '>=3.6.0 <4.0.0' dependencies: flutter: sdk: flutter + google_mobile_ads: ^6.0.0 gma_mediation_unity: path: ../ From 771e6ff14b6d7967d99af506bee07bfd08f69b32 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 2 May 2025 15:32:42 -0700 Subject: [PATCH 152/318] Updating Unity Ads Flutter mediation plugin's version to 1.4.0 in the mediation developer docs. PiperOrigin-RevId: 754155783 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 3158675c8..06d5f4e4f 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,21 +1,26 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### 1.3.0 +#### Version 1.4.0 +- Supports [Unity Android adapter version 4.14.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41410). +- Supports [Unity iOS adapter version 4.14.1.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41411). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 1.3.0 - Supports [Unity Android adapter version 4.13.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41310). - Supports [Unity iOS adapter version 4.13.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41310). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.2.0 +#### Version 1.2.0 - Supports [Unity Android adapter version 4.13.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41300). - Supports [Unity iOS adapter version 4.12.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41250). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.1.0 +#### Version 1.1.0 - Supports [Unity Android adapter version 4.12.3.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41230). - Supports [Unity iOS adapter version 4.12.3.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41231). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.2.0. -#### 1.0.0 +#### Version 1.0.0 - Initial release. - Supports [Unity Android adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41000). - Supports [Unity iOS adapter version 4.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41000). From cc987b438b4a357b9d5dbad4219ede6a11313f9c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 2 May 2025 15:33:26 -0700 Subject: [PATCH 153/318] Updating DT Exchange Flutter mediation plugin's version to 1.1.2 in the mediation developer docs. PiperOrigin-RevId: 754156106 --- .../mediation/gma_mediation_dtexchange/CHANGELOG.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index e5431e843..9fc134f94 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,17 +1,22 @@ ## DT Exchange Flutter Mediation Adapter Changelog -#### 1.1.1 +#### Version 1.1.2 +* Supports [DT Exchange Android adapter version 8.3.6.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8361). +* Supports [DT Exchange iOS adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8360). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + +#### Version 1.1.1 * Supports [DT Exchange Android adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8360). * Supports [DT Exchange iOS adapter version 8.3.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8350). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.1.0 +#### Version 1.1.0 * iOS plugin is now a static framework. * Supports [DT Exchange Android adapter version 8.3.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8350). * Supports [DT Exchange iOS adapter version 8.3.4.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8340). * Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 +#### Version 1.0.0 * Initial release. * Supports [DT Exchange Android adapter version 8.2.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8270). * Supports [DT Exchange iOS adapter version 8.2.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8280). From 8d16a6713a442cf1d381391f5843fc496bd64572 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 5 May 2025 10:21:04 -0700 Subject: [PATCH 154/318] Updating ironSource adapter iOS minimum platform to 13.0 in the podspec file. PiperOrigin-RevId: 754985348 --- .../ios/gma_mediation_ironsource.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 5d4d3960b..c913bca91 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -17,7 +17,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.8.0.0.0' - s.platform = :ios, '12.0' + s.platform = :ios, '13.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. From 9659138f95ae27824915b98f00822549c1694811 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 6 May 2025 09:07:21 -0700 Subject: [PATCH 155/318] Updating Liftoff Flutter mediation plugin to support the latest adapters (7.5.0.0, 7.5.0.0) PiperOrigin-RevId: 755395602 --- .../gma_mediation_liftoffmonetize/android/build.gradle | 4 ++-- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 2e1fd69ca..f2e04337d 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version = "1.1.1" +version = "1.2.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.4.3.1" + stringVersion = "7.5.0.0" } android { diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 30663976a..9c01ec19b 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.1.1' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.4.5.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.0.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index c8f92f6ef..fc311bf1d 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.1.1 +version: 1.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: From 87c7222eb2b9c07e00bf4452c5df121e0d66f8d6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 6 May 2025 09:07:25 -0700 Subject: [PATCH 156/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.9.0.0, 3.9.0.0) PiperOrigin-RevId: 755395626 --- packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 4e3dc17e8..a0b8f2540 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.2.0" +version = "1.3.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.8.0.1" + stringVersion = "3.9.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index 8710fc28f..cf56c6200 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.2.0' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.8.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.9.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index d41abd6ed..751f636af 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.2.0 +version: 1.3.0 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From ad79ed504ab118338b3b13a11877075c2eb304f8 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 6 May 2025 13:26:51 -0700 Subject: [PATCH 157/318] Updated Podfile iOS target to 13.0. PiperOrigin-RevId: 755499454 --- .../mediation/gma_mediation_ironsource/example/ios/Podfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/example/ios/Podfile b/packages/mediation/gma_mediation_ironsource/example/ios/Podfile index 38b28ff0d..b2d735017 100644 --- a/packages/mediation/gma_mediation_ironsource/example/ios/Podfile +++ b/packages/mediation/gma_mediation_ironsource/example/ios/Podfile @@ -1,5 +1,4 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, '12.0' +platform :ios, '13.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' From 46ca5b62b5810c7da7f46f18182a71ce20ebe828 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 7 May 2025 14:24:47 -0700 Subject: [PATCH 158/318] Update Minimum OS Version for iOS example app of ironSource adapter PiperOrigin-RevId: 756006440 --- .../example/ios/Flutter/AppFrameworkInfo.plist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_ironsource/example/ios/Flutter/AppFrameworkInfo.plist index 7c5696400..1dc6cf765 100644 --- a/packages/mediation/gma_mediation_ironsource/example/ios/Flutter/AppFrameworkInfo.plist +++ b/packages/mediation/gma_mediation_ironsource/example/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 12.0 + 13.0 From 8f8fe0d74bc12956cab6b437e5f5d59cdceda8ad Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 7 May 2025 16:16:21 -0700 Subject: [PATCH 159/318] Updating the iOS minimum deployment target to 13.0. on Project file of ironSource adapter PiperOrigin-RevId: 756047084 --- .../example/ios/Runner.xcodeproj/project.pbxproj | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj index ec226693b..11e0fb54b 100644 --- a/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj @@ -362,7 +362,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -488,7 +488,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -539,7 +539,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; From 14439739c1a6cfbbdd69e132e0cb6f09afce5428 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Thu, 8 May 2025 11:25:24 -0700 Subject: [PATCH 160/318] Added Xcode to adapters' github workflows (#1311) --- .github/workflows/gma_mediation_applovin.yaml | 2 + .../workflows/gma_mediation_dtexchange.yaml | 2 + .../workflows/gma_mediation_ironsource.yaml | 59 ++++++++++--------- .../gma_mediation_liftoffmonetize.yaml | 2 + .github/workflows/gma_mediation_unity.yaml | 5 ++ 5 files changed, 41 insertions(+), 29 deletions(-) diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index e4b4a7734..274bfc790 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -59,6 +59,8 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index 21527b1ad..b24c360ac 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -59,6 +59,8 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/.github/workflows/gma_mediation_ironsource.yaml b/.github/workflows/gma_mediation_ironsource.yaml index 8fa4ed0a2..5807d8cb8 100644 --- a/.github/workflows/gma_mediation_ironsource.yaml +++ b/.github/workflows/gma_mediation_ironsource.yaml @@ -48,35 +48,36 @@ jobs: run: | cd packages/mediation/gma_mediation_ironsource/example/android ./gradlew :gma_mediation_ironsource:testDebugUnitTest - # Disabling for now since it seems xcode 16 is required - # iOS: - # runs-on: macos-latest - # timeout-minutes: 40 - # steps: - # - uses: swift-actions/setup-swift@v2 - # with: - # swift-version: "6.0.0" - # - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - # with: - # fetch-depth: 0 - # - name: "Install Flutter" - # run: ./.github/workflows/scripts/install-flutter.sh stable - # - name: "Install Tools" - # run: | - # ./.github/workflows/scripts/install-tools.sh - # - name: "Unit Tests" - # run: | - # cd packages/mediation/gma_mediation_ironsource/example/ios - # flutter clean - # flutter pub get - # flutter precache --ios - # pod install - # xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test - # - uses: actions/upload-artifact@v4 - # if: failure() - # with: - # name: iOSTestResults - # path: packages/mediation/gma_mediation_ironsource/example/ios/TestResults.xcresult + iOS: + runs-on: macos-latest + timeout-minutes: 40 + steps: + - uses: swift-actions/setup-swift@v2 + with: + swift-version: "6.0.0" + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' + - name: "Install Flutter" + run: ./.github/workflows/scripts/install-flutter.sh stable + - name: "Install Tools" + run: | + ./.github/workflows/scripts/install-tools.sh + - name: "Unit Tests" + run: | + cd packages/mediation/gma_mediation_ironsource/example/ios + flutter clean + flutter pub get + flutter precache --ios + pod install + xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test + - uses: actions/upload-artifact@v4 + if: failure() + with: + name: iOSTestResults + path: packages/mediation/gma_mediation_ironsource/example/ios/TestResults.xcresult flutter: runs-on: ubuntu-latest if: github.event_name == 'pull_request' diff --git a/.github/workflows/gma_mediation_liftoffmonetize.yaml b/.github/workflows/gma_mediation_liftoffmonetize.yaml index baeb77cc9..6a20ad0b1 100644 --- a/.github/workflows/gma_mediation_liftoffmonetize.yaml +++ b/.github/workflows/gma_mediation_liftoffmonetize.yaml @@ -59,6 +59,8 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/.github/workflows/gma_mediation_unity.yaml b/.github/workflows/gma_mediation_unity.yaml index 2dfaa1e00..e0fc3fffd 100644 --- a/.github/workflows/gma_mediation_unity.yaml +++ b/.github/workflows/gma_mediation_unity.yaml @@ -53,9 +53,14 @@ jobs: runs-on: macos-latest timeout-minutes: 40 steps: + - uses: swift-actions/setup-swift@v2 + with: + swift-version: "6.0.0" - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 + - name: Select Xcode version + run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" From f0525b5eef38742917c0cb51a693d7ae8cd0cd1a Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 13 May 2025 10:44:11 -0700 Subject: [PATCH 161/318] Updated Versions Constants --- .../main/java/io/flutter/plugins/googlemobileads/Constants.java | 2 +- packages/google_mobile_ads/ios/Classes/FLTConstants.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java index a5291559e..cd12d7170 100644 --- a/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java +++ b/packages/google_mobile_ads/android/src/main/java/io/flutter/plugins/googlemobileads/Constants.java @@ -17,7 +17,7 @@ /** Constants used in the plugin. */ public class Constants { /** Version request agent. Should be bumped alongside plugin versions. */ - public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-5.3.1"; + public static final String REQUEST_AGENT_PREFIX_VERSIONED = "Flutter-GMA-6.0.0"; /** Prefix for news template */ public static final String REQUEST_AGENT_NEWS_TEMPLATE_PREFIX = "News"; diff --git a/packages/google_mobile_ads/ios/Classes/FLTConstants.h b/packages/google_mobile_ads/ios/Classes/FLTConstants.h index 190303de6..c72a0c98d 100644 --- a/packages/google_mobile_ads/ios/Classes/FLTConstants.h +++ b/packages/google_mobile_ads/ios/Classes/FLTConstants.h @@ -13,4 +13,4 @@ // limitations under the License. /** Versioned request agent string. */ -#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-5.3.1" +#define FLT_REQUEST_AGENT_VERSIONED @"Flutter-GMA-6.0.0" From ccb243acf4a693fa47c8ee6795058b1bb2e80d53 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 29 May 2025 15:17:07 -0700 Subject: [PATCH 162/318] Update dart format of samples --- .../lib/app_open_ad_manager.dart | 7 ++- samples/admob/app_open_example/lib/main.dart | 18 +++---- samples/admob/banner_example/lib/main.dart | 25 ++++------ .../admob/interstitial_example/lib/main.dart | 50 +++++++++---------- samples/admob/mediation_example/lib/main.dart | 25 +++++----- .../native_platform_example/lib/main.dart | 25 ++++------ .../native_template_example/lib/main.dart | 25 ++++------ samples/admob/rewarded_example/lib/main.dart | 41 +++++++-------- .../lib/main.dart | 38 +++++++------- 9 files changed, 115 insertions(+), 139 deletions(-) diff --git a/samples/admob/app_open_example/lib/app_open_ad_manager.dart b/samples/admob/app_open_example/lib/app_open_ad_manager.dart index 26c393266..810f1aab2 100644 --- a/samples/admob/app_open_example/lib/app_open_ad_manager.dart +++ b/samples/admob/app_open_example/lib/app_open_ad_manager.dart @@ -29,10 +29,9 @@ class AppOpenAdManager { AppOpenAd? _appOpenAd; bool _isShowingAd = false; - String adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/9257395921' - : 'ca-app-pub-3940256099942544/5575463023'; + String adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/9257395921' + : 'ca-app-pub-3940256099942544/5575463023'; /// Load an [AppOpenAd]. void loadAd() async { diff --git a/samples/admob/app_open_example/lib/main.dart b/samples/admob/app_open_example/lib/main.dart index 9ea873618..6a463b7ae 100644 --- a/samples/admob/app_open_example/lib/main.dart +++ b/samples/admob/app_open_example/lib/main.dart @@ -108,16 +108,14 @@ class _HomePageState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { switch (item.value) { case 0: diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index 89a45ab92..87b5b161d 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -27,10 +27,9 @@ class BannerExampleState extends State { bool _isLoaded = false; Orientation? _currentOrientation; - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/9214589741' - : 'ca-app-pub-3940256099942544/2435281174'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/9214589741' + : 'ca-app-pub-3940256099942544/2435281174'; @override void initState() { @@ -103,16 +102,14 @@ class BannerExampleState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { switch (item.value) { case 0: diff --git a/samples/admob/interstitial_example/lib/main.dart b/samples/admob/interstitial_example/lib/main.dart index 1a166dbf3..a3deb81ea 100644 --- a/samples/admob/interstitial_example/lib/main.dart +++ b/samples/admob/interstitial_example/lib/main.dart @@ -31,10 +31,9 @@ class InterstitialExampleState extends State { late var _counter = _gameLength; Timer? _timer; - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/1033173712' - : 'ca-app-pub-3940256099942544/4411468910'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/1033173712' + : 'ca-app-pub-3940256099942544/4411468910'; @override void initState() { @@ -141,16 +140,14 @@ class InterstitialExampleState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { _pauseGame(); switch (item.value) { @@ -219,20 +216,19 @@ class InterstitialExampleState extends State { void _showAlert(BuildContext context) { showDialog( context: context, - builder: - (context) => AlertDialog( - title: const Text('Game Over'), - content: Text('You lasted $_gameLength seconds'), - actions: [ - TextButton( - onPressed: () { - Navigator.pop(context); - _interstitialAd?.show(); - }, - child: const Text('OK'), - ), - ], + builder: (context) => AlertDialog( + title: const Text('Game Over'), + content: Text('You lasted $_gameLength seconds'), + actions: [ + TextButton( + onPressed: () { + Navigator.pop(context); + _interstitialAd?.show(); + }, + child: const Text('OK'), ), + ], + ), ); } diff --git a/samples/admob/mediation_example/lib/main.dart b/samples/admob/mediation_example/lib/main.dart index 017799e26..af12b9850 100644 --- a/samples/admob/mediation_example/lib/main.dart +++ b/samples/admob/mediation_example/lib/main.dart @@ -88,8 +88,8 @@ class _MyHomePageState extends State { _bannerIsLoaded = true; }); }, - onAdFailedToLoad: - (ad, error) => debugPrint('$ad failed to load: ${error.message}'), + onAdFailedToLoad: (ad, error) => + debugPrint('$ad failed to load: ${error.message}'), ), request: AdRequest(nonPersonalizedAds: true), )..load(); @@ -100,13 +100,12 @@ class _MyHomePageState extends State { return [ PopupMenuButton( - itemBuilder: - (BuildContext context) => >[ - PopupMenuItem( - value: adInspectorMenuItem, - child: Text(adInspectorMenuItem.label), - ), - ], + itemBuilder: (BuildContext context) => >[ + PopupMenuItem( + value: adInspectorMenuItem, + child: Text(adInspectorMenuItem.label), + ), + ], onSelected: (item) { MobileAds.instance.openAdInspector((error) { // Error will be non-null if ad inspector closed due to an error. @@ -131,10 +130,10 @@ class _MyHomePageState extends State { ), _bannerIsLoaded && _bannerAd != null ? Container( - height: _bannerAd!.size.height.toDouble(), - width: _bannerAd!.size.width.toDouble(), - child: AdWidget(ad: _bannerAd!), - ) + height: _bannerAd!.size.height.toDouble(), + width: _bannerAd!.size.width.toDouble(), + child: AdWidget(ad: _bannerAd!), + ) : Text('ad is not loaded'), ], ), diff --git a/samples/admob/native_platform_example/lib/main.dart b/samples/admob/native_platform_example/lib/main.dart index 0c1d0fc9f..f7577aa6e 100644 --- a/samples/admob/native_platform_example/lib/main.dart +++ b/samples/admob/native_platform_example/lib/main.dart @@ -27,10 +27,9 @@ class NativeExampleState extends State { NativeAd? _nativeAd; bool _nativeAdIsLoaded = false; - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/2247696110' - : 'ca-app-pub-3940256099942544/3986624511'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/2247696110' + : 'ca-app-pub-3940256099942544/3986624511'; @override void initState() { @@ -105,16 +104,14 @@ class NativeExampleState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { switch (item.value) { case 0: diff --git a/samples/admob/native_template_example/lib/main.dart b/samples/admob/native_template_example/lib/main.dart index 186ce2f7a..a30accd3b 100644 --- a/samples/admob/native_template_example/lib/main.dart +++ b/samples/admob/native_template_example/lib/main.dart @@ -29,10 +29,9 @@ class NativeExampleState extends State { // final double _adAspectRatioSmall = (91 / 355); final double _adAspectRatioMedium = (370 / 355); - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/2247696110' - : 'ca-app-pub-3940256099942544/3986624511'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/2247696110' + : 'ca-app-pub-3940256099942544/3986624511'; @override void initState() { @@ -113,16 +112,14 @@ class NativeExampleState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { switch (item.value) { case 0: diff --git a/samples/admob/rewarded_example/lib/main.dart b/samples/admob/rewarded_example/lib/main.dart index 367698924..747f916c7 100644 --- a/samples/admob/rewarded_example/lib/main.dart +++ b/samples/admob/rewarded_example/lib/main.dart @@ -31,10 +31,9 @@ class RewardedExampleState extends State { var _coins = 0; RewardedAd? _rewardedAd; - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/5224354917' - : 'ca-app-pub-3940256099942544/1712485313'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5224354917' + : 'ca-app-pub-3940256099942544/1712485313'; @override void initState() { @@ -145,14 +144,14 @@ class RewardedExampleState extends State { setState(() => _showWatchVideoButton = false); _rewardedAd?.show( - onUserEarnedReward: ( - AdWithoutView ad, - RewardItem rewardItem, - ) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); - setState(() => _coins += rewardItem.amount.toInt()); - }, + onUserEarnedReward: + (AdWithoutView ad, RewardItem rewardItem) { + // ignore: avoid_print + print('Reward amount: ${rewardItem.amount}'); + setState( + () => _coins += rewardItem.amount.toInt(), + ); + }, ); }, child: const Text('Watch video for additional 10 coins'), @@ -183,16 +182,14 @@ class RewardedExampleState extends State { return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { _pauseGame(); switch (item.value) { diff --git a/samples/admob/rewarded_interstitial_example/lib/main.dart b/samples/admob/rewarded_interstitial_example/lib/main.dart index cf9328950..d0f89bf2d 100644 --- a/samples/admob/rewarded_interstitial_example/lib/main.dart +++ b/samples/admob/rewarded_interstitial_example/lib/main.dart @@ -33,10 +33,9 @@ class RewardedInterstitialExampleState var _isPrivacyOptionsRequired = false; RewardedInterstitialAd? _rewardedInterstitialAd; - final String _adUnitId = - Platform.isAndroid - ? 'ca-app-pub-3940256099942544/5354046379' - : 'ca-app-pub-3940256099942544/6978759866'; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5354046379' + : 'ca-app-pub-3940256099942544/6978759866'; @override void initState() { @@ -69,13 +68,12 @@ class RewardedInterstitialExampleState if (_countdownTimer.isComplete) { showDialog( context: context, - builder: - (context) => AdDialog( - showAd: () { - _gameOver = true; - _showAdCallback(); - }, - ), + builder: (context) => AdDialog( + showAd: () { + _gameOver = true; + _showAdCallback(); + }, + ), ); _coins += 1; } @@ -181,16 +179,14 @@ class RewardedInterstitialExampleState return [ PopupMenuButton( - itemBuilder: - (context) => - array - .map( - (item) => PopupMenuItem( - value: item, - child: Text(item.label), - ), - ) - .toList(), + itemBuilder: (context) => array + .map( + (item) => PopupMenuItem( + value: item, + child: Text(item.label), + ), + ) + .toList(), onSelected: (item) { _pauseGame(); switch (item.value) { From 9ec68e84a2d3a0fc7b14c0a4885d15e709575d7a Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Mon, 30 Jun 2025 10:18:18 -0600 Subject: [PATCH 163/318] Update main.dart (#1331) Added region tags for initializing the SDK --- samples/admob/banner_example/lib/main.dart | 2 ++ 1 file changed, 2 insertions(+) diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index 87b5b161d..ba34184d8 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -198,8 +198,10 @@ class BannerExampleState extends State { if (await _consentManager.canRequestAds()) { _isMobileAdsInitializeCalled = true; + // [START initialize_sdk] // Initialize the Mobile Ads SDK. MobileAds.instance.initialize(); + // [END initialize_sdk] // Load an ad. _loadAd(); From 15b76b57590b079e80eeff204b4763f5b740e677 Mon Sep 17 00:00:00 2001 From: hellohuanlin <41930132+hellohuanlin@users.noreply.github.com> Date: Wed, 16 Jul 2025 11:27:17 -0700 Subject: [PATCH 164/318] Add multi inline adaptive banner example with recycling (#1316) * Add multi inline adaptive banner example with recycling * fix a crash * address comments * format * address comments * remove we * format * add on failure and retry logic * add impression callback --- .../google_mobile_ads/example/lib/main.dart | 15 ++ ..._adaptive_inline_with_recycle_example.dart | 144 ++++++++++++++++++ 2 files changed, 159 insertions(+) create mode 100644 packages/google_mobile_ads/example/lib/multi_adaptive_inline_with_recycle_example.dart diff --git a/packages/google_mobile_ads/example/lib/main.dart b/packages/google_mobile_ads/example/lib/main.dart index 556c8f6b1..bdb7130cf 100644 --- a/packages/google_mobile_ads/example/lib/main.dart +++ b/packages/google_mobile_ads/example/lib/main.dart @@ -23,6 +23,7 @@ import 'dart:developer'; import 'anchored_adaptive_example.dart'; import 'fluid_example.dart'; import 'inline_adaptive_example.dart'; +import 'multi_adaptive_inline_with_recycle_example.dart'; import 'native_template_example.dart'; import 'reusable_inline_example.dart'; import 'webview_example.dart'; @@ -55,6 +56,8 @@ class _MyAppState extends State { static const rewardedInterstitialButtonText = 'RewardedInterstitialAd'; static const fluidButtonText = 'Fluid'; static const inlineAdaptiveButtonText = 'Inline adaptive'; + static const mulipleInlineAdaptiveWithRecycleButtonText = + 'Multiple inline adaptive with recycle'; static const anchoredAdaptiveButtonText = 'Anchored adaptive'; static const nativeTemplateButtonText = 'Native template'; static const webviewExampleButtonText = 'Register WebView'; @@ -271,6 +274,14 @@ class _MyAppState extends State { builder: (context) => InlineAdaptiveExample()), ); break; + case mulipleInlineAdaptiveWithRecycleButtonText: + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => + MultiInlineAdaptiveWithRecycleExample()), + ); + break; case anchoredAdaptiveButtonText: Navigator.push( context, @@ -324,6 +335,10 @@ class _MyAppState extends State { value: inlineAdaptiveButtonText, child: Text(inlineAdaptiveButtonText), ), + PopupMenuItem( + value: mulipleInlineAdaptiveWithRecycleButtonText, + child: Text(mulipleInlineAdaptiveWithRecycleButtonText), + ), PopupMenuItem( value: anchoredAdaptiveButtonText, child: Text(anchoredAdaptiveButtonText), diff --git a/packages/google_mobile_ads/example/lib/multi_adaptive_inline_with_recycle_example.dart b/packages/google_mobile_ads/example/lib/multi_adaptive_inline_with_recycle_example.dart new file mode 100644 index 000000000..40c942a12 --- /dev/null +++ b/packages/google_mobile_ads/example/lib/multi_adaptive_inline_with_recycle_example.dart @@ -0,0 +1,144 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:collection/collection.dart'; +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// This example demonstrates inline adaptive ads in a list view, where banners +/// are recycle to improve performance. +class MultiInlineAdaptiveWithRecycleExample extends StatefulWidget { + @override + _MultiInlineAdaptiveWithRecycleExampleState createState() => + _MultiInlineAdaptiveWithRecycleExampleState(); +} + +class _MultiInlineAdaptiveWithRecycleExampleState + extends State { + // A list of all the banners created. + final List _banners = []; + // Keep track of sizes of the banners (since they can be different sizes). + final Map _bannerSizes = {}; + // A set of all failed banners to retry. + final Set _failedBanners = {}; + + // The maximum number of banners to create. + static const int _cacheSize = 10; + // Show a banner every 3 rows (i.e. row index 0, 3, 6, 9 etc will be banner rows. + static const int _adInterval = 3; + // Keep track of the positions of banners. + final Map _bannerPositions = {}; + + BannerAd _createBannerAd() { + final String bannerId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/6300978111' + : 'ca-app-pub-3940256099942544/2934735716'; + AdSize adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(360); + final BannerAd bannerAd = BannerAd( + adUnitId: bannerId, + request: const AdRequest(), + size: adSize, + listener: BannerAdListener( + onAdLoaded: (Ad ad) async { + BannerAd bannerAd = (ad as BannerAd); + if (_failedBanners.contains(bannerAd)) { + _failedBanners.remove(bannerAd); + } + final AdSize? adSize = await bannerAd.getPlatformAdSize(); + // When the banner size is updated, rebuild by calling setState. + if (adSize != null && adSize != _bannerSizes[bannerAd]) { + setState(() { + _bannerSizes[bannerAd] = adSize; + }); + } + }, + onAdFailedToLoad: (Ad ad, LoadAdError error) { + _failedBanners.add(ad as BannerAd); + }, + onAdImpression: (Ad ad) { + print('Banner ad impression occurred.'); + }, + ), + ); + bannerAd.load(); + return bannerAd; + } + + BannerAd _getRecycledBannerAd(int bannerPosition) { + // If already created a banner for current position, just reuse it. + BannerAd? currentBannerAd = _bannerPositions.entries + .firstWhereOrNull((entry) => entry.value == bannerPosition) + ?.key; + if (currentBannerAd != null) { + return currentBannerAd; + } + + if (_banners.length < _cacheSize) { + // If the cache is not full, create a new banner + BannerAd bannerAd = _createBannerAd(); + _banners.add(bannerAd); + _bannerPositions[bannerAd] = bannerPosition; + return bannerAd; + } + // If cache is full, recycle the banner (if possible). + BannerAd bannerAd = _banners[bannerPosition % _cacheSize]; + if (_failedBanners.contains(bannerAd)) { + // if it's failed previously, reload it. + bannerAd.load(); + _failedBanners.remove(bannerAd); + } + if (bannerAd.isMounted) { + // Create a new banner if it's not possible to recycle the banner + // e.g. show 15 banners on screen, but _cacheSize is only 10. + // This should be a corner case indicating _cacheSize should be increased. + bannerAd = _createBannerAd(); + } + _bannerPositions[bannerAd] = bannerPosition; + return bannerAd; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text('Adaptive Size, Recycle')), + body: ListView.builder( + // Arbitrary example of 100 items in the list. + itemCount: 100, + itemBuilder: (BuildContext context, int index) { + if (index % _adInterval == 0) { + int bannerPosition = index ~/ _adInterval; + BannerAd bannerAd = _getRecycledBannerAd(bannerPosition); + final AdSize? adSize = _bannerSizes[bannerAd]; + if (adSize == null) { + // Null adSize means the banner's content is not fetched yet. + return SizedBox.shrink(); + } + // Now this banner is loaded with ad content and corresponding ad size. + return SizedBox( + width: adSize.width.toDouble(), + height: adSize.height.toDouble(), + child: AdWidget(ad: bannerAd)); + } + + // Show your regular non-ad content. + return Container( + decoration: BoxDecoration( + border: Border.all( + color: Colors.blue, + width: 1.0, + style: BorderStyle.solid, + ), + ), + child: SizedBox( + height: 100, child: ColoredBox(color: Colors.yellow)), + ); + }), + ); + } + + @override + void dispose() { + for (final banner in _banners) { + banner.dispose(); + } + super.dispose(); + } +} From be6b41178e43d9bce0504aeb1be7477583a4073a Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Fri, 18 Jul 2025 15:05:18 -0400 Subject: [PATCH 165/318] [includecode] Add region tags to banner example (#1336) * Add multi inline adaptive banner example with recycling * fix a crash * address comments * format * address comments * remove we * format * missing format * Added region tags to banner example * Added all events and moved comments into the method * Added logging --------- Co-authored-by: Huan Lin --- samples/admob/banner_example/lib/main.dart | 53 ++++++++++++++++------ 1 file changed, 40 insertions(+), 13 deletions(-) diff --git a/samples/admob/banner_example/lib/main.dart b/samples/admob/banner_example/lib/main.dart index ba34184d8..d9443f4c1 100644 --- a/samples/admob/banner_example/lib/main.dart +++ b/samples/admob/banner_example/lib/main.dart @@ -24,7 +24,6 @@ class BannerExampleState extends State { var _isMobileAdsInitializeCalled = false; var _isPrivacyOptionsRequired = false; BannerAd? _bannerAd; - bool _isLoaded = false; Orientation? _currentOrientation; final String _adUnitId = Platform.isAndroid @@ -67,14 +66,17 @@ class BannerExampleState extends State { builder: (context, orientation) { if (_currentOrientation != orientation) { if (_currentOrientation != null) { - _isLoaded = false; + // Dispose the old ad, set it to null, and load a new one. + _bannerAd?.dispose(); + _bannerAd = null; _loadAd(); } _currentOrientation = orientation; } return Stack( children: [ - if (_bannerAd != null && _isLoaded) + // [START display_ad] + if (_bannerAd != null) Align( alignment: Alignment.bottomCenter, child: SafeArea( @@ -85,6 +87,7 @@ class BannerExampleState extends State { ), ), ), + // [END display_ad] ], ); }, @@ -131,7 +134,9 @@ class BannerExampleState extends State { /// Loads and shows a banner ad. /// /// Dimensions of the ad are determined by the width of the screen. + // [START load_ad] void _loadAd() async { + // [START_EXCLUDE silent] // Only load an ad if the Mobile Ads SDK has gathered consent aligned with // the app's configured messages. var canRequestAds = await _consentManager.canRequestAds(); @@ -142,11 +147,13 @@ class BannerExampleState extends State { if (!mounted) { return; } - + // [END_EXCLUDE] + // [START get_ad_size] // Get an AnchoredAdaptiveBannerAdSize before loading the ad. final size = await AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize( MediaQuery.sizeOf(context).width.truncate(), ); + // [END get_ad_size] if (size == null) { // Unable to get width of anchored banner. @@ -158,26 +165,46 @@ class BannerExampleState extends State { request: const AdRequest(), size: size, listener: BannerAdListener( - // Called when an ad is successfully received. onAdLoaded: (ad) { + // Called when an ad is successfully received. + debugPrint("Ad was loaded."); setState(() { _bannerAd = ad as BannerAd; - _isLoaded = true; }); }, - // Called when an ad request failed. onAdFailedToLoad: (ad, err) { + // Called when an ad request failed. + debugPrint("Ad failed to load with error: $err"); ad.dispose(); }, - // Called when an ad opens an overlay that covers the screen. - onAdOpened: (Ad ad) {}, - // Called when an ad removes an overlay that covers the screen. - onAdClosed: (Ad ad) {}, - // Called when an impression occurs on the ad. - onAdImpression: (Ad ad) {}, + // [START_EXCLUDE silent] + // [START ad_events] + onAdOpened: (Ad ad) { + // Called when an ad opens an overlay that covers the screen. + debugPrint("Ad was opened."); + }, + onAdClosed: (Ad ad) { + // Called when an ad removes an overlay that covers the screen. + debugPrint("Ad was closed."); + }, + onAdImpression: (Ad ad) { + // Called when an impression occurs on the ad. + debugPrint("Ad recorded an impression."); + }, + onAdClicked: (Ad ad) { + // Called when an a click event occurs on the ad. + debugPrint("Ad was clicked."); + }, + onAdWillDismissScreen: (Ad ad) { + // iOS only. Called before dismissing a full screen view. + debugPrint("Ad will be dismissed."); + }, + // [END ad_events] + // [END_EXCLUDE] ), ).load(); } + // [END load_ad] /// Redraw the app bar actions if a privacy options entry point is required. void _getIsPrivacyOptionsRequired() async { From 7a2eccd52b742b03c6dd76d019d2950daabe8724 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 9 May 2025 19:47:36 -0700 Subject: [PATCH 166/318] Updating myTarget Flutter Adapter to version 1.2.0 PiperOrigin-RevId: 756996566 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 5fcd4e2b4..4a4e1e9e4 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,5 +1,10 @@ ## myTarget Flutter Mediation Adapter Changelog +#### Version 1.2.0 +* Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). +* Supports [myTarget iOS adapter version 5.29.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52910). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 1.1.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). * Supports [myTarget iOS adapter version 5.28.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52800). From 09b0f8b25f441ecee0e849cff46408f876a3337f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 9 May 2025 19:48:31 -0700 Subject: [PATCH 167/318] Updating Liftoff Monetize Flutter Adapter to version 1.2.0 PiperOrigin-RevId: 756996754 --- .../mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index 8d25f6808..7d57c54fc 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,10 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Version 1.2.0 +* Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). +* Supports [Liftoff Monetize iOS adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7500). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 1.1.1 * Supports [Liftoff Monetize Android adapter version 7.4.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7431). * Supports [Liftoff Monetize iOS adapter version 7.4.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7450). From af23fd542ac8ec33641d501cacbe96cda6729fd0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 9 May 2025 19:49:31 -0700 Subject: [PATCH 168/318] Update Moloco Flutter Adapter to version 1.3.0 PiperOrigin-RevId: 756996984 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index c3a5e0b44..30c9b0248 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,10 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.3.0 +- Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). +- Supports [Moloco iOS adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3900). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 1.2.0 - Supports [Moloco Android adapter version 3.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3801). - Supports [Moloco iOS adapter version 3.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3800). From 8737d8555f12db221f9c8550603e0f766cb93b82 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 19 May 2025 16:39:28 -0700 Subject: [PATCH 169/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.9.0.0, 3.9.1.0) PiperOrigin-RevId: 760817229 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 2 +- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 30c9b0248..acf78a23e 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.3.1 (In progress) + #### Version 1.3.0 - Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). - Supports [Moloco iOS adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3900). diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index a0b8f2540..f37878a4c 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.3.0" +version = "1.3.1" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index cf56c6200..df7e6ae62 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.3.0' + s.version = '1.3.1' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.9.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.9.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 751f636af..8bb8292f0 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.3.0 +version: 1.3.1 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From 8f665adce5074ad8a4e1d28ed3f7176ebe049308 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 19 May 2025 16:39:45 -0700 Subject: [PATCH 170/318] Updating Meta Flutter mediation plugin to support the latest adapters (6.20.0.0, 6.17.1.0) PiperOrigin-RevId: 760817320 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_meta/android/build.gradle | 4 ++-- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 2 +- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 85494232c..8fb17069d 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,7 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### Version 1.3.0 (In progress) + #### Version 1.2.0 * Supports [Meta Audience Network Android adapter version 6.19.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61901). * Supports [Meta Audience Network iOS adapter version 6.17.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61700). diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index fec1ac2fe..e2805710e 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version = "1.2.0" +version = "1.3.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.19.0.1" + stringVersion = "6.20.0.0" } android { diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 223b2e0d7..0c3595758 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.2.0' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index 3ffe14009..8996af3a3 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 1.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: From 2aaa09af778bd54acaffe65e1c1129726985ec44 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 19 May 2025 16:40:05 -0700 Subject: [PATCH 171/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.1.0.8.0, 7.1.1.1.0) PiperOrigin-RevId: 760817417 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 4724a7408..5f2b476cc 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.0.0 (In progress) + #### Version 2.2.0 - Supports [Pangle Android adapter version 6.5.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-65080). - Supports [Pangle iOS adapter version 6.5.0.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-65090). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 06e472726..a2cd5a3f3 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "2.2.0" +version = "3.0.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.5.0.8.0" + stringVersion = "7.1.0.8.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index ad7622c30..331e033d4 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '2.2.0' + s.version = '3.0.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 6.5.0.9.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.1.1.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 81f8bf723..1731a6bc5 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 2.2.0 +version: 3.0.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 24acdab9e50c1d1fe3bf3aa70f51f2b4300ad62d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 19 May 2025 16:40:14 -0700 Subject: [PATCH 172/318] Updating InMobi Flutter mediation plugin to support the latest adapters (10.8.3.1, 10.8.3.0) PiperOrigin-RevId: 760817465 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_inmobi/android/build.gradle | 4 ++-- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index c339c15af..b1928f650 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,7 @@ ## InMobi Flutter Mediation Adapter Changelog +#### Version 1.1.2 (In progress) + #### Version 1.1.1 * Supports [inMobi Android adapter version 10.8.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10820). * Supports [inMobi iOS adapter version 10.8.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10820). diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 14742cec2..1d21331da 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version = "1.1.1" +version = "1.1.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "10.8.2.0" + stringVersion = "10.8.3.1" } android { diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 77e365d84..58ba91b9a 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.1.1' + s.version = '1.1.2' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.2.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.3.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index 7c1353ae9..f089c8fb9 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.1.1 +version: 1.1.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: From dfd2eb9a173e26877c8b6b1ea6a2848c9638a7af Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 19 May 2025 16:40:16 -0700 Subject: [PATCH 173/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.71.0, 7.7.7.0) PiperOrigin-RevId: 760817477 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mintegral/android/build.gradle | 4 ++-- .../ios/gma_mediation_mintegral.podspec | 2 +- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 586bbc2f6..a56b7ce0e 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,7 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Version 1.2.2 (In progress) + #### Version 1.2.1 - Supports [Mintegral Android adapter version 16.9.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169610). - Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index 0f9fd4f8c..5fa3cf15e 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.1" +version = "1.2.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "16.9.61.0" + stringVersion = "16.9.71.0" } android { diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 7087e565c..7cdfddb74 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.1' + s.version = '1.2.2' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index b7f9b8738..89ed397be 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.1 +version: 1.2.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From c89d182e1486d4f40fbe6ea0d56ba913fe7c618b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 22 May 2025 13:41:01 -0700 Subject: [PATCH 174/318] Updating Unity Ads Flutter mediation plugin's version to 1.4.1 in the mediation developer docs. PiperOrigin-RevId: 762107449 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 06d5f4e4f..82f21e2ca 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,10 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.4.1 +- Supports [Unity Android adapter version 4.14.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41420). +- Supports [Unity iOS adapter version 4.14.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41420). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 1.4.0 - Supports [Unity Android adapter version 4.14.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41410). - Supports [Unity iOS adapter version 4.14.1.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41411). From 59538440d72f1c69e3b27c52a3b89f229cc1ec14 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 22 May 2025 13:42:27 -0700 Subject: [PATCH 175/318] Updating DT Exchange Flutter mediation plugin's version to 1.1.3 in the mediation developer docs. PiperOrigin-RevId: 762108093 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 9fc134f94..8c53d6036 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,10 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### Version 1.1.3 +* Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). +* Supports [DT Exchange iOS adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8360). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 1.1.2 * Supports [DT Exchange Android adapter version 8.3.6.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8361). * Supports [DT Exchange iOS adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8360). From 18cc43a6e29773939ca6a3a2fa79e63b14af2219 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 22 May 2025 13:50:14 -0700 Subject: [PATCH 176/318] Updating AppLovin Flutter mediation plugin's version to 2.2.1 in the mediation developer docs. PiperOrigin-RevId: 762111367 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index c44fa90fe..755579cce 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,10 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Version 2.2.1 +- Supports [AppLovin Android adapter version 13.2.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13201). +- Supports [AppLovin iOS adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13200). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. + #### Version 2.2.0 - Supports [AppLovin Android adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13200). - Supports [AppLovin iOS adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13200). From 15f12bd433ac1c474904fe5d2ccae2e2485a303d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 29 May 2025 08:18:24 -0700 Subject: [PATCH 177/318] Updating Mintegral Flutter Adapter version to 1.2.2 PiperOrigin-RevId: 764736726 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index a56b7ce0e..ac4c483a0 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.2 (In progress) +#### Version 1.2.2 +- Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). +- Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.1 - Supports [Mintegral Android adapter version 16.9.61.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169610). From 4f9ac022644f85e336c50641ee926d5200706d57 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 29 May 2025 08:19:52 -0700 Subject: [PATCH 178/318] Updating InMobi Flutter Adapter version to 1.1.2. PiperOrigin-RevId: 764737357 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index b1928f650..0cfd26347 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,6 +1,9 @@ ## InMobi Flutter Mediation Adapter Changelog -#### Version 1.1.2 (In progress) +#### Version 1.1.2 +* Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). +* Supports [inMobi iOS adapter version 10.8.3.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10830). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.1 * Supports [inMobi Android adapter version 10.8.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10820). From dc84d86e53f29c5dc7af1fdeadfce686eac56275 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 29 May 2025 18:11:26 -0700 Subject: [PATCH 179/318] Update Pangle Flutter Adapter to version 3.0.0 PiperOrigin-RevId: 764961940 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 5f2b476cc..7dcf20e08 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.0.0 (In progress) +#### Version 3.0.0 +- Supports [Pangle Android adapter version 7.1.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-71080). +- Supports [Pangle iOS adapter version 7.1.1.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-71110). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 2.2.0 - Supports [Pangle Android adapter version 6.5.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-65080). From 429c927b53c4bd0bccf78747842f5b693037d036 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 2 Jun 2025 14:58:57 -0700 Subject: [PATCH 180/318] Updating Line Flutter mediation plugin to support the latest adapters (2.9.20250519.0, 2.9.20250512.0) PiperOrigin-RevId: 766355374 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_line/android/build.gradle | 4 ++-- .../gma_mediation_line/ios/gma_mediation_line.podspec | 4 ++-- packages/mediation/gma_mediation_line/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 0e46eedf0..1a29404c2 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,5 +1,7 @@ ## Line Flutter Mediation Adapter Changelog +#### Version 1.0.3 (In progress) + #### Version 1.0.2 - Supports [Line Android adapter version 2.9.20250317.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202503171). - Supports [Line iOS adapter version 2.9.20241106.3](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202411063). diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index ad342a3f0..e5b78b4e2 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0.2" +version = "1.0.3" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.9.20250317.1" + stringVersion = "2.9.20250519.0" } android { diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec index 19620775f..c4037fc21 100644 --- a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_line' - s.version = '1.0.2' + s.version = '1.0.3' s.summary = 'Google Mobile Ads Mediation of Line.' s.description = <<-DESC Mediation Adapter for Line to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20241106.3' + s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20250512.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index bb5f35eba..9347a7f47 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_line description: 'Mediation Adapter that enables sending ad requests to the Line ad network using the google_mobile_ads plugin.' -version: 1.0.2 +version: 1.0.3 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From 7a4a55050ae5b1f8a27933a491815bb90436e0c6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 2 Jun 2025 15:00:18 -0700 Subject: [PATCH 181/318] Updating Liftoff Flutter mediation plugin to support the latest adapters (7.5.0.0, 7.5.1.0) PiperOrigin-RevId: 766355957 --- packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 2 ++ .../gma_mediation_liftoffmonetize/android/build.gradle | 2 +- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index 7d57c54fc..b6e3c7d74 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,7 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Version 1.2.1 (In progress) + #### Version 1.2.0 * Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). * Supports [Liftoff Monetize iOS adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7500). diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index f2e04337d..b590bf469 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version = "1.2.0" +version = "1.2.1" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 9c01ec19b..49df62dc7 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.2.0' + s.version = '1.2.1' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.0.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.1.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index fc311bf1d..f9dcfeab2 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.2.0 +version: 1.2.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: From 36873d217736e9d348718b2848c41e331286109c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 2 Jun 2025 15:01:12 -0700 Subject: [PATCH 182/318] Updating Maio Flutter mediation plugin to support the latest adapters (2.0.4.0, 2.1.6.1) PiperOrigin-RevId: 766356329 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_maio/android/build.gradle | 4 ++-- .../gma_mediation_maio/ios/gma_mediation_maio.podspec | 2 +- packages/mediation/gma_mediation_maio/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index 46b044cd2..c0af5f982 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,5 +1,7 @@ ## maio Flutter Mediation Adapter Changelog +#### Version 1.0.2 (In progress) + #### Version 1.0.1 - Supports [maio Android adapter version 2.0.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2031). - Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 718b6d51c..9562c5abe 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" -version = "1.0.1" +version = "1.0.2" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.0.3.1" + stringVersion = "2.0.4.0" } android { diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index 26919057c..a20755a98 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_maio' - s.version = '1.0.1' + s.version = '1.0.2' s.summary = 'Google Mobile Ads Mediation of maio.' s.description = <<-DESC Mediation Adapter for maio to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_maio/pubspec.yaml b/packages/mediation/gma_mediation_maio/pubspec.yaml index c0250c61a..506b6e1cb 100644 --- a/packages/mediation/gma_mediation_maio/pubspec.yaml +++ b/packages/mediation/gma_mediation_maio/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_maio description: 'Mediation Adapter that enables sending ad requests to the maio ad network using the google_mobile_ads plugin.' -version: 1.0.1 +version: 1.0.2 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From 56ef1647c239c574632482d055d3c9b3cea5af29 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 2 Jun 2025 15:02:43 -0700 Subject: [PATCH 183/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.8.0.1, 8.8.0.0.0) PiperOrigin-RevId: 766357058 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 2 +- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index a077b133b..c83fbaf85 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.3.1 (In progress) + #### 1.3.0 - Supports [ironSource Android adapter version 8.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8800). - Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 50046f547..0ffe1b8e4 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.3.0" +version = "1.3.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.8.0.0" + stringVersion = "8.8.0.1" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index c913bca91..afac5b418 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.3.0' + s.version = '1.3.1' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 1ad07721a..8651db4f8 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.3.0 +version: 1.3.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From 8360e843e2572129c46a5ad910674e98ae713608 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 3 Jun 2025 09:33:22 -0700 Subject: [PATCH 184/318] Updating InMobi Flutter mediation plugin to support the latest adapters (10.8.3.1, 10.8.3.1) PiperOrigin-RevId: 766700338 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_inmobi/android/build.gradle | 2 +- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 0cfd26347..35dd3bac6 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,7 @@ ## InMobi Flutter Mediation Adapter Changelog +#### Version 1.1.3 (In progress) + #### Version 1.1.2 * Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). * Supports [inMobi iOS adapter version 10.8.3.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10830). diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 1d21331da..44fde9357 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version = "1.1.2" +version = "1.1.3" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 58ba91b9a..36736d4d4 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.1.2' + s.version = '1.1.3' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.3.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.3.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index f089c8fb9..16612f82d 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.1.2 +version: 1.1.3 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: From 920bbb97f05f869e91a9bcccb3067b1964883926 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 3 Jun 2025 09:34:07 -0700 Subject: [PATCH 185/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.71.0, 7.7.8.0) PiperOrigin-RevId: 766700595 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mintegral/android/build.gradle | 2 +- .../ios/gma_mediation_mintegral.podspec | 4 ++-- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index ac4c483a0..ec0340027 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,7 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Version 1.2.3 (In progress) + #### Version 1.2.2 - Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). - Supports [Mintegral iOS adapter version 7.7.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7770). diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index 5fa3cf15e..bfdeb52dd 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.2" +version = "1.2.3" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 7cdfddb74..130a32eac 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.2' + s.version = '1.2.3' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.7.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.8.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index 89ed397be..fcbbd7301 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.2 +version: 1.2.3 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From 3b4449c3a073573fa3f7df2d0eb7e2f6ef69ac07 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 4 Jun 2025 19:15:29 -0700 Subject: [PATCH 186/318] Update maio Flutter Adapter version to 1.0.2 PiperOrigin-RevId: 767380587 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index c0af5f982..8abf3fa31 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,6 +1,9 @@ ## maio Flutter Mediation Adapter Changelog -#### Version 1.0.2 (In progress) +#### Version 1.0.2 +- Supports [maio Android adapter version 2.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2040). +- Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.1 - Supports [maio Android adapter version 2.0.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2031). From 1e44ea879f1e0ab8e606201e40171684901355fb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 4 Jun 2025 19:17:04 -0700 Subject: [PATCH 187/318] Updating Liftoff Monetize Flutter Adapter version to 1.2.1 PiperOrigin-RevId: 767381082 --- .../mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index b6e3c7d74..527d79bfc 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,6 +1,9 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog -#### Version 1.2.1 (In progress) +#### Version 1.2.1 +* Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). +* Supports [Liftoff Monetize iOS adapter version 7.5.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7510). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.0 * Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). From 2b2e03021ac956baf3dee2d625a6168273ad9e83 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 4 Jun 2025 19:20:49 -0700 Subject: [PATCH 188/318] Update Line Flutter Adapter version to 1.0.3 PiperOrigin-RevId: 767382116 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 1a29404c2..c60548fb2 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,6 +1,9 @@ ## Line Flutter Mediation Adapter Changelog -#### Version 1.0.3 (In progress) +#### Version 1.0.3 +- Supports [Line Android adapter version 2.9.20250519.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202505190). +- Supports [Line iOS adapter version 2.9.20250512.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202505120). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.0.2 - Supports [Line Android adapter version 2.9.20250317.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202503171). From fdf46d897eb2d4d1be76446bc5502cf24b4bec7f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 5 Jun 2025 15:35:46 -0700 Subject: [PATCH 189/318] Updating Moloco Flutter plugin's version to 1.3.1 in the mediation developer docs. PiperOrigin-RevId: 767791843 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index acf78a23e..70d019141 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,6 +1,9 @@ ## Moloco Flutter Mediation Adapter Changelog -#### Version 1.3.1 (In progress) +#### Version 1.3.1 +- Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). +- Supports [Moloco iOS adapter version 3.9.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3910). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.3.0 - Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). From 6d99bce4135341e4ac3a81694ba14cc59d291f14 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 5 Jun 2025 15:36:36 -0700 Subject: [PATCH 190/318] Updating Meta Audience Network Flutter mediation plugin's version to 1.3.0 in the mediation developer docs. PiperOrigin-RevId: 767792187 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 8fb17069d..a7948914e 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,6 +1,9 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog -#### Version 1.3.0 (In progress) +#### Version 1.3.0 +* Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). +* Supports [Meta Audience Network iOS adapter version 6.17.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61710). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.0 * Supports [Meta Audience Network Android adapter version 6.19.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-61901). From e92df757e14564485e52fcfab7f16b8a0268d57e Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 5 Jun 2025 15:37:17 -0700 Subject: [PATCH 191/318] Updating ironSource Flutter mediation plugin's version to 1.3.1 in the mediation developer docs. PiperOrigin-RevId: 767792503 --- .../gma_mediation_ironsource/CHANGELOG.md | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index c83fbaf85..25b716e5e 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,25 +1,28 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Version 1.3.1 (In progress) +#### Version 1.3.1 +- Supports [ironSource Android adapter version 8.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8801). +- Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. -#### 1.3.0 +#### Version 1.3.0 - Supports [ironSource Android adapter version 8.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8800). - Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). -* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. -#### 1.2.0 +#### Version 1.2.0 - Supports [ironSource Android adapter version 8.7.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8700). - Supports [ironSource iOS adapter version 8.6.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-86100). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.1.0 -* iOS plugin is now a static framework. +#### Version 1.1.0 +- iOS plugin is now a static framework. - Supports [ironSource Android adapter version 8.6.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8610). - Supports [ironSource iOS adapter version 8.6.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-86000). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.3.1. -#### 1.0.0 -* Initial release. +#### Version 1.0.0 +- Initial release. - Supports [ironSource Android adapter version 8.0.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8000). - Supports [ironSource iOS adapter version 8.0.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-80000). -* Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. +- Built and tested with the Google Mobile Ads Flutter Plugin version 5.1.0. From 87fce50cacdcbcfc0afe1bc2eafa94d27ca9b7d2 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 10 Jun 2025 20:01:49 -0700 Subject: [PATCH 192/318] Update InMobi Flutter Adapter version to 1.1.3 PiperOrigin-RevId: 769918946 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 35dd3bac6..42af71477 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,6 +1,9 @@ ## InMobi Flutter Mediation Adapter Changelog -#### Version 1.1.3 (In progress) +#### Version 1.1.3 +* Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). +* Supports [inMobi iOS adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10831). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.2 * Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). From 32802c9da4c532316e40cad353fe515eb973307f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 10 Jun 2025 20:02:52 -0700 Subject: [PATCH 193/318] Updating Mintegral Flutter adapter to version 1.2.3 PiperOrigin-RevId: 769919524 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index ec0340027..13ec57479 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.3 (In progress) +#### Version 1.2.3 +- Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). +- Supports [Mintegral iOS adapter version 7.7.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7780). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.2 - Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). From c4e0b8113dac7a53531067a1e7d8fc526c1ea424 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:10:55 -0700 Subject: [PATCH 194/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.15.0.0, 4.15.0.0) PiperOrigin-RevId: 772165925 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 82f21e2ca..92d598d28 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,7 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.5.0 (In progress) + #### Version 1.4.1 - Supports [Unity Android adapter version 4.14.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41420). - Supports [Unity iOS adapter version 4.14.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41420). diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index db61dacc2..65da8cedc 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.4.1" +version = "1.5.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.14.2.0" + stringVersion = "4.15.0.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 5e278ac4b..80e1c9e02 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.4.1' + s.version = '1.5.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.14.2.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.15.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 20f94c011..84a72d738 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.4.1 +version: 1.5.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From 9e20046c0d8df1df26371f1ecf9ba3bf31cec6dd Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:11:32 -0700 Subject: [PATCH 195/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.2.0.4.0, 7.2.0.4.0) PiperOrigin-RevId: 772166092 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 7dcf20e08..f8bb695f0 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.1.0 (In progress) + #### Version 3.0.0 - Supports [Pangle Android adapter version 7.1.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-71080). - Supports [Pangle iOS adapter version 7.1.1.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-71110). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index a2cd5a3f3..662533451 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.0.0" +version = "3.1.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.1.0.8.0" + stringVersion = "7.2.0.4.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 331e033d4..e10efeddb 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.0.0' + s.version = '3.1.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.1.1.1.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.2.0.4.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 1731a6bc5..dbbe2f2c1 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.0.0 +version: 3.1.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 9c4543994a5c1a873059dc566a680635aad34e90 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:21:19 -0700 Subject: [PATCH 196/318] Updating DTExchange Flutter mediation plugin to support the latest adapters (8.3.7.0, 8.3.7.0) PiperOrigin-RevId: 772169914 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_dtexchange/android/build.gradle | 2 +- .../ios/gma_mediation_dtexchange.podspec | 4 ++-- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 8c53d6036..6a4a69160 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,7 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### Version 1.1.4 (In progress) + #### Version 1.1.3 * Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). * Supports [DT Exchange iOS adapter version 8.3.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8360). diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index 4f4cbfc77..d3efa3613 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version = "1.1.3" +version = "1.1.4" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 3545929d2..8f73b0842 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.1.3' + s.version = '1.1.4' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.6.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.7.0' s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index c8aca5354..fffdbacd6 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.1.3 +version: 1.1.4 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: From 0503a1a0f5aacc0a506afae7770b20984758b7a9 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:25:45 -0700 Subject: [PATCH 197/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.8.3.1, 9.9.0.0) PiperOrigin-RevId: 772171794 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_chartboost/android/build.gradle | 2 +- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 165dd6eeb..b0a682218 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,5 +1,7 @@ ## Chartboost Flutter Mediation Adapter Changelog +#### Version 1.1.0 (In progress) + #### Version 1.0.2 - Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). - Supports [Charboost iOS adapter version 9.8.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9810). diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index d82fe7870..8449934e4 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.0.2" +version = "1.1.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index 2db50cea5..c0825c921 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.0.2' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.8.1.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 521f960a0..489d14d21 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.0.2 +version: 1.1.0 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From 19d7b52b71ee8c0301d45f15f61f1a3367118b1d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:25:52 -0700 Subject: [PATCH 198/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.10.0.0, 3.10.0.0) PiperOrigin-RevId: 772171857 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 70d019141..389ad70c3 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.4.0 (In progress) + #### Version 1.3.1 - Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). - Supports [Moloco iOS adapter version 3.9.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-3910). diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index f37878a4c..7641decff 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.3.1" +version = "1.4.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.9.0.0" + stringVersion = "3.10.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index df7e6ae62..29a17d730 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.3.1' + s.version = '1.4.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.9.1.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.10.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 8bb8292f0..60d43dc03 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.3.1 +version: 1.4.0 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From 7b9bae128e1553c7c0285e573045b1ba2fe4527b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:26:13 -0700 Subject: [PATCH 199/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.9.0.0, 8.9.1.0.0) PiperOrigin-RevId: 772171992 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 25b716e5e..e775b1daa 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.4.0 (In progress) + #### Version 1.3.1 - Supports [ironSource Android adapter version 8.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8801). - Supports [ironSource iOS adapter version 8.8.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-88000). diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 0ffe1b8e4..f22880218 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.3.1" +version = "1.4.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.8.0.1" + stringVersion = "8.9.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index afac5b418..222c39e5e 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.3.1' + s.version = '1.4.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.8.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.9.1.0.0' s.platform = :ios, '13.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 8651db4f8..746327c97 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.3.1 +version: 1.4.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From f2c24330885b31f177f268f2dc147639d9e35116 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 16 Jun 2025 14:26:29 -0700 Subject: [PATCH 200/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.3.0.0, 13.3.0.0) PiperOrigin-RevId: 772172136 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 755579cce..316418b88 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,7 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Version 2.3.0 (In progress) + #### Version 2.2.1 - Supports [AppLovin Android adapter version 13.2.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13201). - Supports [AppLovin iOS adapter version 13.2.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13200). diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 8e49d55c0..110d13913 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.2.1" +version = "2.3.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.2.0.1" + stringVersion = "13.3.0.0" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index 81254e7b3..adfbe714f 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.2.1' + s.version = '2.3.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.2.0.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.3.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index c7a8a8aef..bbfaa85a4 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.2.1 +version: 2.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From 1efb77042fbc09abf42ec5f4ca569b2187ee6d17 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 1 Jul 2025 11:02:02 -0700 Subject: [PATCH 201/318] Updating MyTarget Flutter mediation plugin to support the latest adapters (5.27.1.1, 5.31.1.0) PiperOrigin-RevId: 778112721 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mytarget/android/build.gradle | 2 +- .../gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec | 4 ++-- packages/mediation/gma_mediation_mytarget/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 4a4e1e9e4..30b284e67 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,5 +1,7 @@ ## myTarget Flutter Mediation Adapter Changelog +#### Version 1.3.0 (In progress) + #### Version 1.2.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). * Supports [myTarget iOS adapter version 5.29.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-52910). diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index 992f92409..22e0899c0 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" -version = "1.2.0" +version = "1.3.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index 0998214b9..c0f831c5c 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_mytarget' - s.version = '1.2.0' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of mytarget.' s.description = <<-DESC Mediation Adapter for mytarget to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.29.1.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.31.1.0' s.platform = :ios, '12.4' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml index 3afc15704..0a2a6888d 100644 --- a/packages/mediation/gma_mediation_mytarget/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_mytarget description: 'Mediation Adapter that enables sending ad requests to the mytarget ad network using the google_mobile_ads plugin.' -version: 1.2.0 +version: 1.3.0 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From 23552f8dce1a8616d580cc95db7f91e2e6472e45 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 1 Jul 2025 11:02:55 -0700 Subject: [PATCH 202/318] Updating Meta Flutter mediation plugin to support the latest adapters (6.20.0.0, 6.20.0.0) PiperOrigin-RevId: 778113217 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 4 ++-- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index a7948914e..efab13a45 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,7 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### Version 1.4.0 (In progress) + #### Version 1.3.0 * Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). * Supports [Meta Audience Network iOS adapter version 6.17.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-61710). diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index e2805710e..b22244c25 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version = "1.3.0" +version = "1.4.0" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 0c3595758..9fd3f6747 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.3.0' + s.version = '1.4.0' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.17.1.0' + s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.20.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index 8996af3a3..f53b10f4b 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.3.0 +version: 1.4.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: From 5aa75e424feb77b1847f644301aabec1bcdb53e1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 1 Jul 2025 11:04:47 -0700 Subject: [PATCH 203/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.2.0.6.0, 7.2.0.5.0) PiperOrigin-RevId: 778114164 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index f8bb695f0..734591528 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.1.1 (In progress) + #### Version 3.1.0 (In progress) #### Version 3.0.0 diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 662533451..af820c576 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.1.0" +version = "3.1.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.2.0.4.0" + stringVersion = "7.2.0.6.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index e10efeddb..ba91ac55a 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.1.0' + s.version = '3.1.1' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.2.0.4.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.2.0.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index dbbe2f2c1..823ff1aa8 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.1.0 +version: 3.1.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 29b2ff413dc0a380a73cec7ffef1657b9cb96420 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 1 Jul 2025 11:05:32 -0700 Subject: [PATCH 204/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.9.1.0, 8.9.1.0.0) PiperOrigin-RevId: 778114495 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 2 +- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index e775b1daa..fd5597261 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.4.1 (In progress) + #### Version 1.4.0 (In progress) #### Version 1.3.1 diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index f22880218..e9d21ec26 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.4.0" +version = "1.4.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.9.0.0" + stringVersion = "8.9.1.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 222c39e5e..e105a72c6 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.4.0' + s.version = '1.4.1' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 746327c97..bcc62509a 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.4.0 +version: 1.4.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From 1289c1dd1a42e65b782ca7690c46463fb45ae6f2 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 1 Jul 2025 11:05:59 -0700 Subject: [PATCH 205/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.3.1.0, 13.3.1.0) PiperOrigin-RevId: 778114698 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 316418b88..00a6f4b2d 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,7 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Version 2.3.1 (In progress) + #### Version 2.3.0 (In progress) #### Version 2.2.1 diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 110d13913..91c160863 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.3.0" +version = "2.3.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.3.0.0" + stringVersion = "13.3.1.0" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index adfbe714f..3cbdd636e 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.3.0' + s.version = '2.3.1' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.3.0.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.3.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index bbfaa85a4..438207555 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.3.0 +version: 2.3.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From 4049e579e41c1b603db4aabac2ff745df86d42ad Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 7 Jul 2025 12:05:28 -0700 Subject: [PATCH 206/318] Created PubMatic Flutter Mediation Adapter plugin PiperOrigin-RevId: 780206190 --- .../gma_mediation_pubmatic/CHANGELOG.md | 7 + .../mediation/gma_mediation_pubmatic/LICENSE | 202 ++++++ .../gma_mediation_pubmatic/README.md | 31 + .../analysis_options.yaml | 19 + .../android/build.gradle | 72 ++ .../gma_mediation_pubmatic_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationPubmaticPlugin.kt | 24 + .../gma_mediation_pubmatic/example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle.kts | 41 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle.kts | 19 + ...gma_mediation_pubmatic_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle.kts | 25 + .../gma_mediation_pubmatic_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 101 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../example/lib/main.dart | 29 + .../example/pubspec.lock | 323 +++++++++ .../example/pubspec.yaml | 85 +++ .../gma_mediation_pubmatic.iml | 17 + .../Classes/GmaMediationPubmaticPlugin.swift | 23 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_pubmatic.podspec | 21 + .../lib/gma_mediation_pubmatic.dart | 16 + .../gma_mediation_pubmatic/pubspec.lock | 261 ++++++++ .../gma_mediation_pubmatic/pubspec.yaml | 26 + 80 files changed, 2827 insertions(+) create mode 100644 packages/mediation/gma_mediation_pubmatic/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_pubmatic/LICENSE create mode 100644 packages/mediation/gma_mediation_pubmatic/README.md create mode 100644 packages/mediation/gma_mediation_pubmatic/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_pubmatic/android/build.gradle create mode 100644 packages/mediation/gma_mediation_pubmatic/android/gma_mediation_pubmatic_android.iml create mode 100644 packages/mediation/gma_mediation_pubmatic/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_pubmatic/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic/GmaMediationPubmaticPlugin.kt create mode 100644 packages/mediation/gma_mediation_pubmatic/example/README.md create mode 100644 packages/mediation/gma_mediation_pubmatic/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/gma_mediation_pubmatic_example_android.iml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_pubmatic/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_pubmatic/example/android/settings.gradle.kts create mode 100644 packages/mediation/gma_mediation_pubmatic/example/gma_mediation_pubmatic_example.iml create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_pubmatic/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_pubmatic/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_pubmatic/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_pubmatic/gma_mediation_pubmatic.iml create mode 100644 packages/mediation/gma_mediation_pubmatic/ios/Classes/GmaMediationPubmaticPlugin.swift create mode 100644 packages/mediation/gma_mediation_pubmatic/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec create mode 100644 packages/mediation/gma_mediation_pubmatic/lib/gma_mediation_pubmatic.dart create mode 100644 packages/mediation/gma_mediation_pubmatic/pubspec.lock create mode 100644 packages/mediation/gma_mediation_pubmatic/pubspec.yaml diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md new file mode 100644 index 000000000..b05874c73 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -0,0 +1,7 @@ +## Pubmatic Flutter Mediation Adapter Changelog + +#### 1.0.0 +* Initial release. +* Verified compatibility with Pubmatic Android adapter version 4.7.0.1 +* Verified compatibility with Pubmatic iOS adapter version 4.7.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. diff --git a/packages/mediation/gma_mediation_pubmatic/LICENSE b/packages/mediation/gma_mediation_pubmatic/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_pubmatic/README.md b/packages/mediation/gma_mediation_pubmatic/README.md new file mode 100644 index 000000000..21edcc754 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/README.md @@ -0,0 +1,31 @@ +# Google Mobile Ads Mediation of Pubmatic for Flutter + +[![gma_mediation_pubmatic](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation Pubmatic Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +Pubmatic Ad Network through the Google Mobile Ads SDK. + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [Pubmatic](https://developers.google.com/admob/flutter/mediation/pubmatic). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_pubmatic/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_pubmatic/analysis_options.yaml b/packages/mediation/gma_mediation_pubmatic/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle new file mode 100644 index 000000000..85015cd5f --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -0,0 +1,72 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" +version = "1.0.0" + +buildscript { + ext.kotlin_version = "2.1.0" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.7.3") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +ext { + stringVersion = "4.7.0.1" +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 23 + } + + dependencies { + implementation "com.google.ads.mediation:pubmatic:$stringVersion" + implementation 'com.google.android.gms:play-services-ads:24.4.0' + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.5.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_pubmatic/android/gma_mediation_pubmatic_android.iml b/packages/mediation/gma_mediation_pubmatic/android/gma_mediation_pubmatic_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/android/gma_mediation_pubmatic_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/android/settings.gradle b/packages/mediation/gma_mediation_pubmatic/android/settings.gradle new file mode 100644 index 000000000..d6adc78a2 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_pubmatic' diff --git a/packages/mediation/gma_mediation_pubmatic/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_pubmatic/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..b13dfda8c --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_pubmatic/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic/GmaMediationPubmaticPlugin.kt b/packages/mediation/gma_mediation_pubmatic/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic/GmaMediationPubmaticPlugin.kt new file mode 100644 index 000000000..c37248661 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic/GmaMediationPubmaticPlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the Pubmatic Adapter. */ +class GmaMediationPubmaticPlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/README.md b/packages/mediation/gma_mediation_pubmatic/example/README.md new file mode 100644 index 000000000..b31fafb1f --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_pubmatic_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/pubmatic). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_pubmatic/example/analysis_options.yaml b/packages/mediation/gma_mediation_pubmatic/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_pubmatic/example/android/app/build.gradle.kts new file mode 100644 index 000000000..594eefff3 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/build.gradle.kts @@ -0,0 +1,41 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } + + defaultConfig { + // TODO: Specify your own unique Application ID + // (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { source = "../.." } diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..8b8309e4d --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic_example/MainActivity.kt b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic_example/MainActivity.kt new file mode 100644 index 000000000..62fb2d86c --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_pubmatic_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/build.gradle.kts b/packages/mediation/gma_mediation_pubmatic/example/android/build.gradle.kts new file mode 100644 index 000000000..97eed2dd6 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/build.gradle.kts @@ -0,0 +1,19 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() + +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { project.evaluationDependsOn(":app") } + +tasks.register("clean") { delete(rootProject.layout.buildDirectory) } diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/gma_mediation_pubmatic_example_android.iml b/packages/mediation/gma_mediation_pubmatic/example/android/gma_mediation_pubmatic_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/gma_mediation_pubmatic_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/gradle.properties b/packages/mediation/gma_mediation_pubmatic/example/android/gradle.properties new file mode 100644 index 000000000..f018a6181 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_pubmatic/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..ac3b47926 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/gradlew b/packages/mediation/gma_mediation_pubmatic/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/gradlew.bat b/packages/mediation/gma_mediation_pubmatic/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_pubmatic/example/android/settings.gradle.kts b/packages/mediation/gma_mediation_pubmatic/example/android/settings.gradle.kts new file mode 100644 index 000000000..1a6884017 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.3" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app") diff --git a/packages/mediation/gma_mediation_pubmatic/example/gma_mediation_pubmatic_example.iml b/packages/mediation/gma_mediation_pubmatic/example/gma_mediation_pubmatic_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/gma_mediation_pubmatic_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..b561cd38a --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationPubmaticExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..e3773d42e --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Info.plist new file mode 100644 index 000000000..3e5b8e73b --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Pubmatic + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_pubmatic_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_pubmatic/example/lib/main.dart b/packages/mediation/gma_mediation_pubmatic/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_pubmatic/example/pubspec.lock b/packages/mediation/gma_mediation_pubmatic/example/pubspec.lock new file mode 100644 index 000000000..a295e4230 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_pubmatic: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: a4f59019f2c32769fb6c60ed8aa321e9c21a36297e2c4f23452b3e779a3e7a26 + url: "https://pub.dev" + source: hosted + version: "6.0.0" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" + url: "https://pub.dev" + source: hosted + version: "5.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + url: "https://pub.dev" + source: hosted + version: "15.0.0" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "2f3a14ca026957870cfd9c635b83507e0e51d8091568e90129fbf805aba7cade" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba + url: "https://pub.dev" + source: hosted + version: "4.13.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: f6e6afef6e234801da77170f7a1847ded8450778caf2fe13979d140484be3678 + url: "https://pub.dev" + source: hosted + version: "4.7.0" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: f0dc2dc3a2b1e3a6abdd6801b9355ebfeb3b8f6cde6b9dc7c9235909c4a1f147 + url: "https://pub.dev" + source: hosted + version: "2.13.1" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: a3d461fe3467014e05f3ac4962e5fdde2a4bf44c561cb53e9ae5c586600fdbc3 + url: "https://pub.dev" + source: hosted + version: "3.22.0" +sdks: + dart: ">=3.8.1 <4.0.0" + flutter: ">=3.27.0" diff --git a/packages/mediation/gma_mediation_pubmatic/example/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/example/pubspec.yaml new file mode 100644 index 000000000..082d9636d --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_pubmatic_example +description: "Demonstrates how to use the gma_mediation_pubmatic plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.8.1 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_pubmatic: + # When depending on this package from a real application you should use: + # gma_mediation_pubmatic: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_pubmatic/gma_mediation_pubmatic.iml b/packages/mediation/gma_mediation_pubmatic/gma_mediation_pubmatic.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/gma_mediation_pubmatic.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_pubmatic/ios/Classes/GmaMediationPubmaticPlugin.swift b/packages/mediation/gma_mediation_pubmatic/ios/Classes/GmaMediationPubmaticPlugin.swift new file mode 100644 index 000000000..14f3bf933 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/ios/Classes/GmaMediationPubmaticPlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the Pubmatic Adapter. +public class GmaMediationPubmaticPlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_pubmatic/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_pubmatic/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec new file mode 100644 index 000000000..62fe2cd66 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_pubmatic' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of Pubmatic.' + s.description = <<-DESC + Mediation Adapter for Pubmatic to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/pubmatic' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationPubMatic', '~> 4.7.0.0' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_pubmatic/lib/gma_mediation_pubmatic.dart b/packages/mediation/gma_mediation_pubmatic/lib/gma_mediation_pubmatic.dart new file mode 100644 index 000000000..d4c835600 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/lib/gma_mediation_pubmatic.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationPubmatic {} diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.lock b/packages/mediation/gma_mediation_pubmatic/pubspec.lock new file mode 100644 index 000000000..39ea3dfa2 --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.lock @@ -0,0 +1,261 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: a4f59019f2c32769fb6c60ed8aa321e9c21a36297e2c4f23452b3e779a3e7a26 + url: "https://pub.dev" + source: hosted + version: "6.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "3cd03646de313481336500ba02eb34d07c590535525f154aae7fda7362aa07a9" + url: "https://pub.dev" + source: hosted + version: "2.8.0" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + url: "https://pub.dev" + source: hosted + version: "15.0.0" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba + url: "https://pub.dev" + source: hosted + version: "4.13.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: f6e6afef6e234801da77170f7a1847ded8450778caf2fe13979d140484be3678 + url: "https://pub.dev" + source: hosted + version: "4.7.0" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: f0dc2dc3a2b1e3a6abdd6801b9355ebfeb3b8f6cde6b9dc7c9235909c4a1f147 + url: "https://pub.dev" + source: hosted + version: "2.13.1" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: a3d461fe3467014e05f3ac4962e5fdde2a4bf44c561cb53e9ae5c586600fdbc3 + url: "https://pub.dev" + source: hosted + version: "3.22.0" +sdks: + dart: ">=3.8.1 <4.0.0" + flutter: ">=3.27.0" diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml new file mode 100644 index 000000000..24d6e7a4d --- /dev/null +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -0,0 +1,26 @@ +name: gma_mediation_pubmatic +description: 'Mediation Adapter that enables sending ad requests to the Pubmatic + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.8.1 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^6.0.0 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.8.0 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic + pluginClass: GmaMediationPubmaticPlugin + ios: + pluginClass: GmaMediationPubmaticPlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pubmatic From f86f4d7d223dca9b226c147d9657cb29c094906d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 8 Jul 2025 13:01:42 -0700 Subject: [PATCH 207/318] Updating DT Exchange Flutter mediation plugin's version to 1.1.4 in the mediation developer docs. PiperOrigin-RevId: 780681148 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 6a4a69160..c0a4a445d 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,6 +1,9 @@ ## DT Exchange Flutter Mediation Adapter Changelog -#### Version 1.1.4 (In progress) +#### Version 1.1.4 +* Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). +* Supports [DT Exchange iOS adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8370). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.3 * Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). From 200954508168ee19d6c8fd3ce3ab616f73cc612b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 8 Jul 2025 13:11:42 -0700 Subject: [PATCH 208/318] Updating Moloco Flutter mediation plugin version to 1.4.0 in the mediation developer docs. PiperOrigin-RevId: 780685513 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 389ad70c3..3faf9dd7a 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,6 +1,9 @@ ## Moloco Flutter Mediation Adapter Changelog -#### Version 1.4.0 (In progress) +#### Version 1.4.0 +- Supports [Moloco Android adapter version 3.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31000). +- Supports [Moloco iOS adapter version 3.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31000). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.3.1 - Supports [Moloco Android adapter version 3.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-3900). From 0ce4ced3963ee23cf1b5cff2bb7c5991d490b49c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 9 Jul 2025 10:54:04 -0700 Subject: [PATCH 209/318] Updating Chartboost Flutter Adapter version to 1.1.0 PiperOrigin-RevId: 781123428 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index b0a682218..770a97267 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,6 +1,9 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### Version 1.1.0 (In progress) +#### Version 1.1.0 +- Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). +- Supports [Charboost iOS adapter version 9.9.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9900). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.2 - Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). From 6c0289319bc9fda36de2edfb8aeb5362af67226d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 9 Jul 2025 10:55:57 -0700 Subject: [PATCH 210/318] Updating Unity Ads Flutter Adapter version to 1.5.0 PiperOrigin-RevId: 781124206 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 92d598d28..5a03c88ed 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,6 +1,9 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Version 1.5.0 (In progress) +#### Version 1.5.0 +- Supports [Unity Android adapter version 4.15.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41500). +- Supports [Unity iOS adapter version 4.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41500). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.4.1 - Supports [Unity Android adapter version 4.14.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41420). From 071359527b70e02388c2c5e032c5ec58b76a274b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 10 Jul 2025 08:51:07 -0700 Subject: [PATCH 211/318] Updating IronSource Flutter adapter version to 1.4.0 PiperOrigin-RevId: 781552951 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index fd5597261..73054feb1 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -2,7 +2,10 @@ #### Version 1.4.1 (In progress) -#### Version 1.4.0 (In progress) +#### Version 1.4.0 +- Supports [ironSource Android adapter version 8.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8900). +- Supports [ironSource iOS adapter version 8.9.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-89100). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.3.1 - Supports [ironSource Android adapter version 8.8.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8801). From 070980faab63c3e9daf6a7bab549b091e25b3317 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 10 Jul 2025 11:01:15 -0700 Subject: [PATCH 212/318] Updating PubMatic Flutter mediation plugin to support the latest adapters (4.7.1.0, 4.7.0.0) PiperOrigin-RevId: 781602086 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 4 ++-- .../mediation/gma_mediation_pubmatic/android/build.gradle | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index b05874c73..44488c76f 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,7 +1,7 @@ ## Pubmatic Flutter Mediation Adapter Changelog -#### 1.0.0 +#### Version 1.0.0 (In progress) * Initial release. -* Verified compatibility with Pubmatic Android adapter version 4.7.0.1 +* Verified compatibility with Pubmatic Android adapter version 4.7.1.0 * Verified compatibility with Pubmatic iOS adapter version 4.7.0.0 * Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index 85015cd5f..c0f30f4df 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "4.7.0.1" + stringVersion = "4.7.1.0" } android { From af7cd2bd8a2bb602c8cc2ab148914f24ae0b8143 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 07:57:17 -0700 Subject: [PATCH 213/318] Updating Meta Flutter Adapter version to 1.4.0 PiperOrigin-RevId: 782904809 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index efab13a45..e71e2bb1a 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,6 +1,9 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog -#### Version 1.4.0 (In progress) +#### Version 1.4.0 +* Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). +* Supports [Meta Audience Network iOS adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-62000). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.3.0 * Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). From 62ffa155a1d7af2f438d1f45c9c8ff6fa58416af Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 08:00:35 -0700 Subject: [PATCH 214/318] Update IronSource Flutter Adapter version to 1.4.1. PiperOrigin-RevId: 782905889 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 73054feb1..0fc610786 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,6 +1,9 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Version 1.4.1 (In progress) +#### Version 1.4.1 +- Supports [ironSource Android adapter version 8.9.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8910). +- Supports [ironSource iOS adapter version 8.9.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-89100). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.4.0 - Supports [ironSource Android adapter version 8.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8900). From fa88b9fa9122236b9ed6164047fe589387c78c24 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 14:01:06 -0700 Subject: [PATCH 215/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.11.0.0, 3.11.0.0) PiperOrigin-RevId: 783032963 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 3faf9dd7a..bca80225d 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.5.0 (In progress) + #### Version 1.4.0 - Supports [Moloco Android adapter version 3.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31000). - Supports [Moloco iOS adapter version 3.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31000). diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 7641decff..7e37b58df 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.4.0" +version = "1.5.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.10.0.0" + stringVersion = "3.11.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index 29a17d730..2a90b2320 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.4.0' + s.version = '1.5.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.10.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.11.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 60d43dc03..9eb3608ae 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.4.0 +version: 1.5.0 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From cc37099f7e8f2e3d0003b1e16ccaf50ce0adc7ae Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 14:39:01 -0700 Subject: [PATCH 216/318] Updating Maio Flutter mediation plugin to support the latest adapters (2.0.5.0, 2.1.6.1) PiperOrigin-RevId: 783047617 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_maio/android/build.gradle | 4 ++-- .../gma_mediation_maio/ios/gma_mediation_maio.podspec | 2 +- packages/mediation/gma_mediation_maio/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index 8abf3fa31..c8d65006c 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,5 +1,7 @@ ## maio Flutter Mediation Adapter Changelog +#### Version 1.0.3 (In progress) + #### Version 1.0.2 - Supports [maio Android adapter version 2.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2040). - Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index 9562c5abe..fbfa2e1a8 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" -version = "1.0.2" +version = "1.0.3" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.0.4.0" + stringVersion = "2.0.5.0" } android { diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index a20755a98..b98b2b3d4 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_maio' - s.version = '1.0.2' + s.version = '1.0.3' s.summary = 'Google Mobile Ads Mediation of maio.' s.description = <<-DESC Mediation Adapter for maio to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_maio/pubspec.yaml b/packages/mediation/gma_mediation_maio/pubspec.yaml index 506b6e1cb..1a06b9036 100644 --- a/packages/mediation/gma_mediation_maio/pubspec.yaml +++ b/packages/mediation/gma_mediation_maio/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_maio description: 'Mediation Adapter that enables sending ad requests to the maio ad network using the google_mobile_ads plugin.' -version: 1.0.2 +version: 1.0.3 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From 1782333724e1dfe2981763b934c61d14a777ad76 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 14:41:51 -0700 Subject: [PATCH 217/318] Updating Pangle Flutter mediation plugin's version to 3.1.0 in the mediation developer docs PiperOrigin-RevId: 783048700 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 734591528..227589369 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -3,6 +3,9 @@ #### Version 3.1.1 (In progress) #### Version 3.1.0 (In progress) +- Supports [Pangle Android adapter version 7.2.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-72040). +- Supports [Pangle iOS adapter version 7.2.0.4.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-72040). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.0.0 - Supports [Pangle Android adapter version 7.1.0.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-71080). From 8937cf78a526b451c0814e3fe149e87536f8c7a7 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 14:42:33 -0700 Subject: [PATCH 218/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.15.1.0, 4.15.1.0) PiperOrigin-RevId: 783048926 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 5a03c88ed..3c41c1084 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,7 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.5.1 (In progress) + #### Version 1.5.0 - Supports [Unity Android adapter version 4.15.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41500). - Supports [Unity iOS adapter version 4.15.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41500). diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index 65da8cedc..d14340b22 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.5.0" +version = "1.5.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.15.0.0" + stringVersion = "4.15.1.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 80e1c9e02..d3039d867 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.5.0' + s.version = '1.5.1' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.15.0.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.15.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 84a72d738..a36b814ba 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.5.0 +version: 1.5.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From 1235a561b551e3bb4a17ac2b9cc5da7b5c7a4994 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 14 Jul 2025 14:57:37 -0700 Subject: [PATCH 219/318] Updating AppLovin Flutter mediation plugin's version to 2.3.0 in the mediation developer docs PiperOrigin-RevId: 783054174 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 00a6f4b2d..41ec22a1b 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -2,7 +2,10 @@ #### Version 2.3.1 (In progress) -#### Version 2.3.0 (In progress) +#### Version 2.3.0 +- Supports [AppLovin Android adapter version 13.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13300). +- Supports [AppLovin iOS adapter version 13.3.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13300). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 2.2.1 - Supports [AppLovin Android adapter version 13.2.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13201). From 9bec15e1e6c1405aa8d5eec215e41c1f51bba190 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 15 Jul 2025 09:24:27 -0700 Subject: [PATCH 220/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.10.0.0, 8.10.0.0.0) PiperOrigin-RevId: 783361334 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 0fc610786..55d2d312d 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.5.0 (In progress) + #### Version 1.4.1 - Supports [ironSource Android adapter version 8.9.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8910). - Supports [ironSource iOS adapter version 8.9.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-89100). diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index e9d21ec26..7e57b99a8 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.4.1" +version = "1.5.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.9.1.0" + stringVersion = "8.10.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index e105a72c6..02c512268 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.4.1' + s.version = '1.5.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.9.1.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.10.0.0.0' s.platform = :ios, '13.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index bcc62509a..25dff90ca 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.4.1 +version: 1.5.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From 74a1d8a709e16d6d680d3435717c51c85dd8c52d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 15 Jul 2025 16:51:11 -0700 Subject: [PATCH 221/318] Updating AppLovin Flutter mediation plugin's version to 2.3.1 PiperOrigin-RevId: 783520795 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 41ec22a1b..4da8b1718 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,6 +1,9 @@ ## AppLovin Flutter Mediation Adapter Changelog -#### Version 2.3.1 (In progress) +#### Version 2.3.1 +- Supports [AppLovin Android adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13310). +- Supports [AppLovin iOS adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13310). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 2.3.0 - Supports [AppLovin Android adapter version 13.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13300). From 541b1a454ac8a6bfc1f5ebcce50581981bc11df4 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 15 Jul 2025 16:58:37 -0700 Subject: [PATCH 222/318] Update Pangle Flutter Adapter version to 3.1.1 PiperOrigin-RevId: 783522810 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 227589369..567517cd9 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,8 +1,11 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.1.1 (In progress) +#### Version 3.1.1 +- Supports [Pangle Android adapter version 7.2.0.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-72060). +- Supports [Pangle iOS adapter version 7.2.0.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-72050). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. -#### Version 3.1.0 (In progress) +#### Version 3.1.0 - Supports [Pangle Android adapter version 7.2.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-72040). - Supports [Pangle iOS adapter version 7.2.0.4.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-72040). - Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. From 4ac2081719e03be21bac33839c67efa24cd6ca8e Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 15 Jul 2025 17:00:22 -0700 Subject: [PATCH 223/318] Update myTarget Flutter Adapter version to 1.3.0 PiperOrigin-RevId: 783523266 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 30b284e67..467355457 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,6 +1,9 @@ ## myTarget Flutter Mediation Adapter Changelog -#### Version 1.3.0 (In progress) +#### Version 1.3.0 +* Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). +* Supports [myTarget iOS adapter version 5.31.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-53110). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). From 23fc94fd36d83c7deb6931d5503080b2430ea03b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 17 Jul 2025 19:16:07 -0700 Subject: [PATCH 224/318] Update Unity Ads Flutter adapter to version 1.5.1 PiperOrigin-RevId: 784399456 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 3c41c1084..5c1a8d6f0 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,6 +1,9 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Version 1.5.1 (In progress) +#### Version 1.5.1 +- Supports [Unity Android adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41510). +- Supports [Unity iOS adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41510). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.5.0 - Supports [Unity Android adapter version 4.15.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41500). From 8b1471a863297c0e77fae71b976bc85d0612be93 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 18 Jul 2025 09:42:00 -0700 Subject: [PATCH 225/318] Updating Moloco Flutter Adapter version to 1.5.0 PiperOrigin-RevId: 784609346 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index bca80225d..fadf29fa1 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,6 +1,9 @@ ## Moloco Flutter Mediation Adapter Changelog -#### Version 1.5.0 (In progress) +#### Version 1.5.0 +- Supports [Moloco Android adapter version 3.11.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31100). +- Supports [Moloco iOS adapter version 3.11.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31100). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.4.0 - Supports [Moloco Android adapter version 3.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31000). From cc513b60ce67d5a26435bb8e8735b66bc36a6a05 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 21 Jul 2025 09:50:10 -0700 Subject: [PATCH 226/318] Bumped DT Exchange adapter iOS platform to 13.0 PiperOrigin-RevId: 785473076 --- packages/mediation/gma_mediation_dtexchange/example/ios/Podfile | 2 +- .../ios/gma_mediation_dtexchange.podspec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile b/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile index 38b28ff0d..6a8ce2dd1 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -# platform :ios, '12.0' +platform :ios, '13.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 8f73b0842..5986a7b31 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -17,7 +17,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.7.0' - s.platform = :ios, '12.0' + s.platform = :ios, '13.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } From 44a5ecc153cc034da1d248c057f6b4d8bb0d7b54 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Mon, 21 Jul 2025 10:07:06 -0700 Subject: [PATCH 227/318] Update gma_mediation_dtexchange.yaml --- .github/workflows/gma_mediation_dtexchange.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gma_mediation_dtexchange.yaml b/.github/workflows/gma_mediation_dtexchange.yaml index b24c360ac..8a2dbe17e 100644 --- a/.github/workflows/gma_mediation_dtexchange.yaml +++ b/.github/workflows/gma_mediation_dtexchange.yaml @@ -55,7 +55,7 @@ jobs: steps: - uses: swift-actions/setup-swift@v2 with: - swift-version: "5.7.2" + swift-version: "6.0.0" - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 with: fetch-depth: 0 From adfde6b5be50d725129726b7b6cff6de257f4e26 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Wed, 30 Jul 2025 10:34:24 -0400 Subject: [PATCH 228/318] [Includecode] Added region tags to interstitial sample (#1339) * Added region tags to interstitial sample * formatted * Added snippets * added tags * no fatal warnings * formatting * formatting pt 2 * new line ad tend of file * formatting * formatting * Commenting * 2025 --- .github/workflows/google_mobile_ads.yaml | 2 +- .../snippets/interstitial_ad_snippets.dart | 83 +++++++++++++++++++ .../admob/interstitial_example/lib/main.dart | 43 ++++++---- 3 files changed, 112 insertions(+), 16 deletions(-) create mode 100644 packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index 85ea28d9f..0ab4847b7 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -99,7 +99,7 @@ jobs: - name: "Flutter Analyze" run: | cd packages/google_mobile_ads/ - flutter analyze + flutter analyze --no-fatal-warnings - name: "Flutter Publish" run: | cd packages/google_mobile_ads/ diff --git a/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart new file mode 100644 index 000000000..94beb20f5 --- /dev/null +++ b/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart @@ -0,0 +1,83 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// ignore_for_file: public_member_api_docs + +import 'dart:io'; + +import 'package:flutter/cupertino.dart'; +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Dart snippets for the developer guide. +class _InterstitialAdSnippets { + InterstitialAd? _interstitialAd; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/1033173712' + : 'ca-app-pub-3940256099942544/4411468910'; + + void _loadInterstitialAd() { + // [START load_ad] + InterstitialAd.load( + adUnitId: _adUnitId, + request: const AdRequest(), + adLoadCallback: InterstitialAdLoadCallback( + onAdLoaded: (InterstitialAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _interstitialAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad] + } + + void _setFullScreenContentCallback(InterstitialAd ad) { + // [START ad_events] + ad.fullScreenContentCallback = FullScreenContentCallback( + onAdShowedFullScreenContent: (ad) { + // Called when the ad showed the full screen content. + debugPrint('Ad showed full screen content.'); + }, + onAdFailedToShowFullScreenContent: (ad, err) { + // Called when the ad failed to show full screen content. + debugPrint('Ad failed to show full screen content with error: $err'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdDismissedFullScreenContent: (ad) { + // Called when the ad dismissed full screen content. + debugPrint('Ad was dismissed.'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdImpression: (ad) { + // Called when an impression occurs on the ad. + debugPrint('Ad recorded an impression.'); + }, + onAdClicked: (ad) { + // Called when a click is recorded for an ad. + debugPrint('Ad was clicked.'); + }, + ); + // [END ad_events] + } +} diff --git a/samples/admob/interstitial_example/lib/main.dart b/samples/admob/interstitial_example/lib/main.dart index a3deb81ea..fbab73736 100644 --- a/samples/admob/interstitial_example/lib/main.dart +++ b/samples/admob/interstitial_example/lib/main.dart @@ -182,32 +182,43 @@ class InterstitialExampleState extends State { adUnitId: _adUnitId, request: const AdRequest(), adLoadCallback: InterstitialAdLoadCallback( - // Called when an ad is successfully received. onAdLoaded: (InterstitialAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _interstitialAd = ad; ad.fullScreenContentCallback = FullScreenContentCallback( - // Called when the ad showed the full screen content. - onAdShowedFullScreenContent: (ad) {}, - // Called when an impression occurs on the ad. - onAdImpression: (ad) {}, - // Called when the ad failed to show full screen content. + onAdShowedFullScreenContent: (ad) { + // Called when the ad showed the full screen content. + debugPrint('Ad showed full screen content.'); + }, onAdFailedToShowFullScreenContent: (ad, err) { + // Called when the ad failed to show full screen content. + debugPrint( + 'Ad failed to show full screen content with error: $err', + ); + // Dispose the ad here to free resources. ad.dispose(); }, - // Called when the ad dismissed full screen content. onAdDismissedFullScreenContent: (ad) { + // Called when the ad dismissed full screen content. + debugPrint('Ad was dismissed.'); + // Dispose the ad here to free resources. ad.dispose(); }, - // Called when a click is recorded for an ad. - onAdClicked: (ad) {}, + onAdImpression: (ad) { + // Called when an impression occurs on the ad. + debugPrint('Ad recorded an impression.'); + }, + onAdClicked: (ad) { + // Called when a click is recorded for an ad. + debugPrint('Ad was clicked.'); + }, ); - - // Keep a reference to the ad so you can show it later. - _interstitialAd = ad; }, - // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { - // ignore: avoid_print - print('InterstitialAd failed to load: $error'); + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); }, ), ); @@ -223,7 +234,9 @@ class InterstitialExampleState extends State { TextButton( onPressed: () { Navigator.pop(context); + // [START show_ad] _interstitialAd?.show(); + // [END show_ad] }, child: const Text('OK'), ), From 63c6a1ba3cbe4b800a60c2e12923b66dc5bd194e Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Mon, 11 Aug 2025 23:06:51 -0400 Subject: [PATCH 229/318] [Includecode] Added snippets for rewarded interstitial ads (#1343) * snippets for rewarded interstitial asd --- .../rewarded_interstitial_ad_snippets.dart | 102 ++++++++++++++++++ .../lib/main.dart | 7 +- 2 files changed, 107 insertions(+), 2 deletions(-) create mode 100644 packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart diff --git a/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart new file mode 100644 index 000000000..74ec93017 --- /dev/null +++ b/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart @@ -0,0 +1,102 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// ignore_for_file: public_member_api_docs + +import 'dart:io'; + +import 'package:flutter/cupertino.dart'; +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Dart snippets for the developer guide. +class _RewardedInterstitialAdSnippets { + RewardedInterstitialAd? _rewardedInterstitialAd; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5354046379' + : 'ca-app-pub-3940256099942544/6978759866'; + + void _loadRewardedInterstitialAd() { + // [START load_ad] + RewardedInterstitialAd.load( + adUnitId: _adUnitId, + request: const AdRequest(), + rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback( + onAdLoaded: (RewardedInterstitialAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _rewardedInterstitialAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad] + } + + void _setFullScreenContentCallback(RewardedInterstitialAd ad) { + // [START ad_events] + ad.fullScreenContentCallback = FullScreenContentCallback( + onAdShowedFullScreenContent: (ad) { + // Called when the ad showed the full screen content. + debugPrint('Ad showed full screen content.'); + }, + onAdFailedToShowFullScreenContent: (ad, err) { + // Called when the ad failed to show full screen content. + debugPrint('Ad failed to show full screen content with error: $err'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdDismissedFullScreenContent: (ad) { + // Called when the ad dismissed full screen content. + debugPrint('Ad was dismissed.'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdImpression: (ad) { + // Called when an impression occurs on the ad. + debugPrint('Ad recorded an impression.'); + }, + onAdClicked: (ad) { + // Called when a click is recorded for an ad. + debugPrint('Ad was clicked.'); + }, + ); + // [END ad_events] + } + + void _validateServerSideVerification() { + // [START validate_server_side_verification] + RewardedInterstitialAd.load( + adUnitId: _adUnitId, + request: AdRequest(), + rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback( + onAdLoaded: (ad) { + ServerSideVerificationOptions _options = + ServerSideVerificationOptions( + customData: 'SAMPLE_CUSTOM_DATA_STRING'); + ad.setServerSideOptions(_options); + _rewardedInterstitialAd = ad; + }, + onAdFailedToLoad: (error) {}, + ), + ); + // [END validate_server_side_verification] + } +} diff --git a/samples/admob/rewarded_interstitial_example/lib/main.dart b/samples/admob/rewarded_interstitial_example/lib/main.dart index d0f89bf2d..50dc2971f 100644 --- a/samples/admob/rewarded_interstitial_example/lib/main.dart +++ b/samples/admob/rewarded_interstitial_example/lib/main.dart @@ -104,13 +104,16 @@ class RewardedInterstitialExampleState } void _showAdCallback() { + // [START show_ad] _rewardedInterstitialAd?.show( onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); + debugPrint('Reward amount: ${rewardItem.amount}'); + // [START_EXCLUDE silent] setState(() => _coins += rewardItem.amount.toInt()); + // [END_EXCLUDE] }, ); + // [END show_ad] } @override From f986768c19db452e8ff837c76eaad665d92cd766 Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Mon, 11 Aug 2025 23:07:08 -0400 Subject: [PATCH 230/318] [Includecode] Added snippets for rewarded example (#1342) * Added snippets for rewarded example --- .../lib/snippets/rewarded_ad_snippets.dart | 102 ++++++++++++++++++ samples/admob/rewarded_example/lib/main.dart | 10 +- 2 files changed, 109 insertions(+), 3 deletions(-) create mode 100644 packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart diff --git a/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart new file mode 100644 index 000000000..9d87168a6 --- /dev/null +++ b/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart @@ -0,0 +1,102 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// ignore_for_file: public_member_api_docs + +import 'dart:io'; + +import 'package:flutter/cupertino.dart'; +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Dart snippets for the developer guide. +class _RewardedAdSnippets { + RewardedAd? _rewardedAd; + final String _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/5224354917' + : 'ca-app-pub-3940256099942544/1712485313'; + + void _loadRewardedAd() { + // [START load_ad] + RewardedAd.load( + adUnitId: _adUnitId, + request: const AdRequest(), + rewardedAdLoadCallback: RewardedAdLoadCallback( + onAdLoaded: (RewardedAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _rewardedAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad] + } + + void _setFullScreenContentCallback(RewardedAd ad) { + // [START ad_events] + ad.fullScreenContentCallback = FullScreenContentCallback( + onAdShowedFullScreenContent: (ad) { + // Called when the ad showed the full screen content. + debugPrint('Ad showed full screen content.'); + }, + onAdFailedToShowFullScreenContent: (ad, err) { + // Called when the ad failed to show full screen content. + debugPrint('Ad failed to show full screen content with error: $err'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdDismissedFullScreenContent: (ad) { + // Called when the ad dismissed full screen content. + debugPrint('Ad was dismissed.'); + // Dispose the ad here to free resources. + ad.dispose(); + }, + onAdImpression: (ad) { + // Called when an impression occurs on the ad. + debugPrint('Ad recorded an impression.'); + }, + onAdClicked: (ad) { + // Called when a click is recorded for an ad. + debugPrint('Ad was clicked.'); + }, + ); + // [END ad_events] + } + + void _validateServerSideVerification() { + // [START validate_server_side_verification] + RewardedAd.load( + adUnitId: _adUnitId, + request: AdRequest(), + rewardedAdLoadCallback: RewardedAdLoadCallback( + onAdLoaded: (ad) { + ServerSideVerificationOptions _options = + ServerSideVerificationOptions( + customData: 'SAMPLE_CUSTOM_DATA_STRING'); + ad.setServerSideOptions(_options); + _rewardedAd = ad; + }, + onAdFailedToLoad: (error) {}, + ), + ); + // [END validate_server_side_verification] + } +} diff --git a/samples/admob/rewarded_example/lib/main.dart b/samples/admob/rewarded_example/lib/main.dart index 747f916c7..30c065162 100644 --- a/samples/admob/rewarded_example/lib/main.dart +++ b/samples/admob/rewarded_example/lib/main.dart @@ -142,17 +142,21 @@ class RewardedExampleState extends State { child: TextButton( onPressed: () { setState(() => _showWatchVideoButton = false); - + // [START show_ad] _rewardedAd?.show( onUserEarnedReward: (AdWithoutView ad, RewardItem rewardItem) { - // ignore: avoid_print - print('Reward amount: ${rewardItem.amount}'); + debugPrint( + 'Reward amount: ${rewardItem.amount}', + ); + // [START_EXCLUDE silent] setState( () => _coins += rewardItem.amount.toInt(), ); + // [END_EXCLUDE] }, ); + // [END show_ad] }, child: const Text('Watch video for additional 10 coins'), ), From 7fc5e04bbb80080115afdf9809c3a25fbf77ff3f Mon Sep 17 00:00:00 2001 From: Justin Malandruccolo Date: Fri, 15 Aug 2025 09:12:04 -0400 Subject: [PATCH 231/318] [Includecode] Added Ad Manager code examples to snippets folder (#1344) * Added GAM snippets * added tag * formatting * Update build.yaml * Update google_mobile_ads.yaml * Update build.yaml * Update google_mobile_ads.yaml * Update google_mobile_ads.yaml * Update google_mobile_ads.yaml * Using widget --- .github/workflows/build.yaml | 2 +- .github/workflows/google_mobile_ads.yaml | 4 +- .../lib/snippets/banner_ad_snippets.dart | 77 +++++++++++++++++++ .../snippets/interstitial_ad_snippets.dart | 29 +++++++ .../lib/snippets/rewarded_ad_snippets.dart | 48 ++++++++++++ .../rewarded_interstitial_ad_snippets.dart | 49 ++++++++++++ 6 files changed, 206 insertions(+), 3 deletions(-) create mode 100644 packages/google_mobile_ads/example/lib/snippets/banner_ad_snippets.dart diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c78597153..774e04e24 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -64,7 +64,7 @@ jobs: with: fetch-depth: 0 - name: Select Xcode version - run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' + run: sudo xcode-select -s '/Applications/Xcode_16.3.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" diff --git a/.github/workflows/google_mobile_ads.yaml b/.github/workflows/google_mobile_ads.yaml index 0ab4847b7..9024b03cb 100644 --- a/.github/workflows/google_mobile_ads.yaml +++ b/.github/workflows/google_mobile_ads.yaml @@ -60,7 +60,7 @@ jobs: with: fetch-depth: 0 - name: Select Xcode version - run: sudo xcode-select -s '/Applications/Xcode_16.2.0.app/Contents/Developer' + run: sudo xcode-select -s '/Applications/Xcode_16.3.0.app/Contents/Developer' - name: "Install Flutter" run: ./.github/workflows/scripts/install-flutter.sh stable - name: "Install Tools" @@ -74,7 +74,7 @@ jobs: flutter clean flutter pub get pod install - xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test + xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 16,OS=18.4' test - uses: actions/upload-artifact@v4 if: failure() with: diff --git a/packages/google_mobile_ads/example/lib/snippets/banner_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/banner_ad_snippets.dart new file mode 100644 index 000000000..4383292db --- /dev/null +++ b/packages/google_mobile_ads/example/lib/snippets/banner_ad_snippets.dart @@ -0,0 +1,77 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// ignore_for_file: public_member_api_docs + +import 'dart:async'; +import 'dart:io'; + +import 'package:flutter/material.dart'; +import 'package:google_mobile_ads/google_mobile_ads.dart'; + +/// Dart snippets for the developer guide. +class _BannerAdWidget extends StatefulWidget { + const _BannerAdWidget(); + + @override + State<_BannerAdWidget> createState() => _BannerAdSnippets(); +} + +class _BannerAdSnippets extends State<_BannerAdWidget> { + BannerAd? _bannerAd; + final _adUnitId = Platform.isAndroid + ? 'ca-app-pub-3940256099942544/9214589741' + : 'ca-app-pub-3940256099942544/2435281174'; + final String _adManagerAdUnitId = '/21775744923/example/adaptive-banner'; + + // [START load_ad_ad_manager] + void _loadAd() async { + // Get an AnchoredAdaptiveBannerAdSize before loading the ad. + final size = await AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize( + MediaQuery.sizeOf(context).width.truncate(), + ); + + if (size == null) { + // Unable to get width of anchored banner. + return; + } + + unawaited(BannerAd( + adUnitId: _adUnitId, + request: const AdManagerAdRequest(), + size: size, + listener: BannerAdListener( + onAdLoaded: (ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + setState(() { + _bannerAd = ad as BannerAd; + }); + }, + onAdFailedToLoad: (ad, err) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $err'); + ad.dispose(); + }, + ), + ).load()); + } + // [END load_ad_ad_manager] + + @override + Widget build(BuildContext context) { + // TODO: implement build + throw UnimplementedError(); + } +} diff --git a/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart index 94beb20f5..638cc1719 100644 --- a/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart +++ b/packages/google_mobile_ads/example/lib/snippets/interstitial_ad_snippets.dart @@ -25,6 +25,7 @@ class _InterstitialAdSnippets { final String _adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/1033173712' : 'ca-app-pub-3940256099942544/4411468910'; + final String _adManagerAdUnitId = '/21775744923/example/interstitial'; void _loadInterstitialAd() { // [START load_ad] @@ -80,4 +81,32 @@ class _InterstitialAdSnippets { ); // [END ad_events] } + +// =================================================================== +// Ad Manager snippets +// =================================================================== + + void _loadAdManagerInterstitialAd() { + // [START load_ad_ad_manager] + InterstitialAd.load( + adUnitId: _adUnitId, + request: const AdManagerAdRequest(), + adLoadCallback: InterstitialAdLoadCallback( + onAdLoaded: (InterstitialAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _interstitialAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad_ad_manager] + } } diff --git a/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart index 9d87168a6..32914b198 100644 --- a/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart +++ b/packages/google_mobile_ads/example/lib/snippets/rewarded_ad_snippets.dart @@ -25,6 +25,7 @@ class _RewardedAdSnippets { final String _adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/5224354917' : 'ca-app-pub-3940256099942544/1712485313'; + final String _adManagerAdUnitId = '/21775744923/example/rewarded'; void _loadRewardedAd() { // [START load_ad] @@ -99,4 +100,51 @@ class _RewardedAdSnippets { ); // [END validate_server_side_verification] } + +// =================================================================== +// Ad Manager snippets +// =================================================================== + + void _loadAdManagerRewardedAd() { + // [START load_ad_ad_manager] + RewardedAd.load( + adUnitId: _adUnitId, + request: const AdManagerAdRequest(), + rewardedAdLoadCallback: RewardedAdLoadCallback( + onAdLoaded: (RewardedAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _rewardedAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad_ad_manager] + } + + void _validateAdManagerServerSideVerification() { + // [START validate_server_side_verification_ad_manager] + RewardedAd.load( + adUnitId: _adUnitId, + request: AdManagerAdRequest(), + rewardedAdLoadCallback: RewardedAdLoadCallback( + onAdLoaded: (ad) { + ServerSideVerificationOptions _options = + ServerSideVerificationOptions( + customData: 'SAMPLE_CUSTOM_DATA_STRING'); + ad.setServerSideOptions(_options); + _rewardedAd = ad; + }, + onAdFailedToLoad: (error) {}, + ), + ); + // [END validate_server_side_verification_ad_manager] + } } diff --git a/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart b/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart index 74ec93017..19073f482 100644 --- a/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart +++ b/packages/google_mobile_ads/example/lib/snippets/rewarded_interstitial_ad_snippets.dart @@ -25,6 +25,8 @@ class _RewardedInterstitialAdSnippets { final String _adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/5354046379' : 'ca-app-pub-3940256099942544/6978759866'; + final String _adManagerAdUnitId = + '/21775744923/example/rewarded-interstitial'; void _loadRewardedInterstitialAd() { // [START load_ad] @@ -99,4 +101,51 @@ class _RewardedInterstitialAdSnippets { ); // [END validate_server_side_verification] } + +// =================================================================== +// Ad Manager snippets +// =================================================================== + + void _loadAdManagerRewardedInterstitialAd() { + // [START load_ad_ad_manager] + RewardedInterstitialAd.load( + adUnitId: _adUnitId, + request: const AdManagerAdRequest(), + rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback( + onAdLoaded: (RewardedInterstitialAd ad) { + // Called when an ad is successfully received. + debugPrint('Ad was loaded.'); + // Keep a reference to the ad so you can show it later. + _rewardedInterstitialAd = ad; + // [START_EXCLUDE silent] + _setFullScreenContentCallback(ad); + // [END_EXCLUDE] + }, + onAdFailedToLoad: (LoadAdError error) { + // Called when an ad request failed. + debugPrint('Ad failed to load with error: $error'); + }, + ), + ); + // [END load_ad_ad_manager] + } + + void _validateAdManagerServerSideVerification() { + // [START validate_server_side_verification_ad_manager] + RewardedInterstitialAd.load( + adUnitId: _adUnitId, + request: AdManagerAdRequest(), + rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback( + onAdLoaded: (ad) { + ServerSideVerificationOptions _options = + ServerSideVerificationOptions( + customData: 'SAMPLE_CUSTOM_DATA_STRING'); + ad.setServerSideOptions(_options); + _rewardedInterstitialAd = ad; + }, + onAdFailedToLoad: (error) {}, + ), + ); + // [END validate_server_side_verification_ad_manager] + } } From 30a7e234053db70c7ea4edf2045e441a5f14a9fb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:07:10 -0700 Subject: [PATCH 232/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.3.1.1, 13.3.1.0) PiperOrigin-RevId: 788149413 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 2 +- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 4da8b1718..69288d98f 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,7 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Version 2.3.2 (In progress) + #### Version 2.3.1 - Supports [AppLovin Android adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13310). - Supports [AppLovin iOS adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13310). diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index 91c160863..eacfeb432 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.3.1" +version = "2.3.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.3.1.0" + stringVersion = "13.3.1.1" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index 3cbdd636e..fb0063714 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.3.1' + s.version = '2.3.2' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 438207555..024be4dd2 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.3.1 +version: 2.3.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From d9736221f37a28da46cfc7d352e8f191ed1a2e71 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:07:12 -0700 Subject: [PATCH 233/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.3.0.4.0, 7.4.0.9.0) PiperOrigin-RevId: 788149435 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 567517cd9..483088a3c 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.2.0 (In progress) + #### Version 3.1.1 - Supports [Pangle Android adapter version 7.2.0.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-72060). - Supports [Pangle iOS adapter version 7.2.0.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-72050). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index af820c576..a876583ca 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.1.1" +version = "3.2.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.2.0.6.0" + stringVersion = "7.3.0.4.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index ba91ac55a..6abe75950 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.1.1' + s.version = '3.2.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.2.0.5.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.4.0.9.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 823ff1aa8..847d700b4 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.1.1 +version: 3.2.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From a0714f6175e0016f136ed95cf6610cf80b0983df Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:07:26 -0700 Subject: [PATCH 234/318] Updating Meta Flutter mediation plugin to support the latest adapters (6.20.0.0, 6.20.1.0) PiperOrigin-RevId: 788149516 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_meta/android/build.gradle | 2 +- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 4 ++-- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index e71e2bb1a..5a71bd185 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,7 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### Version 1.4.1 (In progress) + #### Version 1.4.0 * Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). * Supports [Meta Audience Network iOS adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-62000). diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index b22244c25..7c8fed1fd 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version = "1.4.0" +version = "1.4.1" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index 9fd3f6747..af0ebe678 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.4.0' + s.version = '1.4.1' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.20.0.0' + s.dependency 'GoogleMobileAdsMediationFacebook', '~> 6.20.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index f53b10f4b..a39dae3ac 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.4.0 +version: 1.4.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: From 2ed231fd080a599cc1d82d37c4245d7a78c288c0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:07:38 -0700 Subject: [PATCH 235/318] Updating Liftoff Flutter mediation plugin to support the latest adapters (7.5.0.1, 7.5.2.0) PiperOrigin-RevId: 788149587 --- packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 2 ++ .../gma_mediation_liftoffmonetize/android/build.gradle | 4 ++-- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index 527d79bfc..a901b287c 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,7 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Version 1.2.2 (In progress) + #### Version 1.2.1 * Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). * Supports [Liftoff Monetize iOS adapter version 7.5.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7510). diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index b590bf469..8785c700b 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version = "1.2.1" +version = "1.2.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.5.0.0" + stringVersion = "7.5.0.1" } android { diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 49df62dc7..6eea3c757 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.2.1' + s.version = '1.2.2' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.1.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.2.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index f9dcfeab2..d269ad236 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.2.1 +version: 1.2.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: From 12d55614c8db0c4f6ab025041ef7417c89a4b190 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:07:59 -0700 Subject: [PATCH 236/318] Updating MyTarget Flutter mediation plugin to support the latest adapters (5.27.2.0, 5.33.0.0) PiperOrigin-RevId: 788149738 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mytarget/android/build.gradle | 4 ++-- .../gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec | 4 ++-- packages/mediation/gma_mediation_mytarget/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 467355457..78810866b 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,5 +1,7 @@ ## myTarget Flutter Mediation Adapter Changelog +#### Version 1.4.0 (In progress) + #### Version 1.3.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). * Supports [myTarget iOS adapter version 5.31.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-53110). diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index 22e0899c0..5327d13d6 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" -version = "1.3.0" +version = "1.4.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "5.27.1.1" + stringVersion = "5.27.2.0" } android { diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index c0f831c5c..5774b6a92 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_mytarget' - s.version = '1.3.0' + s.version = '1.4.0' s.summary = 'Google Mobile Ads Mediation of mytarget.' s.description = <<-DESC Mediation Adapter for mytarget to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.31.1.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.33.0.0' s.platform = :ios, '12.4' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml index 0a2a6888d..890e36e9c 100644 --- a/packages/mediation/gma_mediation_mytarget/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_mytarget description: 'Mediation Adapter that enables sending ad requests to the mytarget ad network using the google_mobile_ads plugin.' -version: 1.3.0 +version: 1.4.0 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From ebf3a48e25d0e9053d811aa230edbf6e0d481e5d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:08:01 -0700 Subject: [PATCH 237/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.9.0.0, 9.9.1.0) PiperOrigin-RevId: 788149747 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 770a97267..0ad68ea0e 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,5 +1,7 @@ ## Chartboost Flutter Mediation Adapter Changelog +#### Version 1.2.0 (In progress) + #### Version 1.1.0 - Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). - Supports [Charboost iOS adapter version 9.9.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9900). diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 8449934e4..5fc681204 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.1.0" +version = "1.2.0" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.8.3.1" + stringVersion = "9.9.0.0" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index c0825c921..c2d9a87ad 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.1.0' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.0.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 489d14d21..cbff96a05 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.1.0 +version: 1.2.0 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From d963bcdec817c61fb788e8accf52ebb443332b5c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 28 Jul 2025 14:08:04 -0700 Subject: [PATCH 238/318] Updating PubMatic Flutter mediation plugin to support the latest adapters (4.7.1.1, 4.7.0.0) PiperOrigin-RevId: 788149772 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_pubmatic/android/build.gradle | 4 ++-- .../gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec | 2 +- packages/mediation/gma_mediation_pubmatic/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index 44488c76f..e871c81b9 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pubmatic Flutter Mediation Adapter Changelog +#### Version 1.0.1 (In progress) + #### Version 1.0.0 (In progress) * Initial release. * Verified compatibility with Pubmatic Android adapter version 4.7.1.0 diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index c0f30f4df..3eec5d482 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "2.1.0" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "4.7.1.0" + stringVersion = "4.7.1.1" } android { diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec index 62fe2cd66..6c09243d5 100644 --- a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_pubmatic' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of Pubmatic.' s.description = <<-DESC Mediation Adapter for Pubmatic to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml index 24d6e7a4d..e21092d26 100644 --- a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_pubmatic description: 'Mediation Adapter that enables sending ad requests to the Pubmatic ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.8.1 flutter: '>=3.3.0' From 6dc69c04523e0cbd59c81993d7d96d8a75ec0d29 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 29 Jul 2025 10:06:38 -0700 Subject: [PATCH 239/318] Reverting version for the Pubmatic Adapter to 1.0.0 since it has not been released PiperOrigin-RevId: 788501917 --- packages/mediation/gma_mediation_pubmatic/android/build.gradle | 2 +- .../gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec | 2 +- packages/mediation/gma_mediation_pubmatic/pubspec.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index 3eec5d482..51a2553c2 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" -version = "1.0.1" +version = "1.0.0" buildscript { ext.kotlin_version = "2.1.0" diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec index 6c09243d5..62fe2cd66 100644 --- a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_pubmatic' - s.version = '1.0.1' + s.version = '1.0.0' s.summary = 'Google Mobile Ads Mediation of Pubmatic.' s.description = <<-DESC Mediation Adapter for Pubmatic to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml index e21092d26..24d6e7a4d 100644 --- a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_pubmatic description: 'Mediation Adapter that enables sending ad requests to the Pubmatic ad network using the google_mobile_ads plugin.' -version: 1.0.1 +version: 1.0.0 environment: sdk: ^3.8.1 flutter: '>=3.3.0' From 55dce6f76b6e700d6d5fb7d1c9f3671765de3792 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 29 Jul 2025 13:05:18 -0700 Subject: [PATCH 240/318] Updating PubMatic Flutter mediation plugin for release version 1.0.1 PiperOrigin-RevId: 788573665 --- .../mediation/gma_mediation_pubmatic/CHANGELOG.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index e871c81b9..c04c8be43 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,9 +1,7 @@ ## Pubmatic Flutter Mediation Adapter Changelog -#### Version 1.0.1 (In progress) - -#### Version 1.0.0 (In progress) -* Initial release. -* Verified compatibility with Pubmatic Android adapter version 4.7.1.0 -* Verified compatibility with Pubmatic iOS adapter version 4.7.0.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. +#### Version 1.0.0 +- Initial release. +- Supports [PubMatic Android adapter version 4.7.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4711). +- Supports [PubMatic iOS adapter version 4.7.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/PubMatic/CHANGELOG.md#version-4700). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. From 06078697407e98eb02e8cf367c7867031eb47cfc Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 5 Aug 2025 14:36:19 -0700 Subject: [PATCH 241/318] Updating maio Flutter mediation plugin's version to 1.0.3 in the mediation developer docs. PiperOrigin-RevId: 791373856 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index c8d65006c..be0a50c07 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,6 +1,9 @@ ## maio Flutter Mediation Adapter Changelog -#### Version 1.0.3 (In progress) +#### Version 1.0.3 +- Supports [maio Android adapter version 2.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2050). +- Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.2 - Supports [maio Android adapter version 2.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2040). From db24d8e70e5852cd8ee69b9ebca80a9f5f455ebe Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 5 Aug 2025 14:47:04 -0700 Subject: [PATCH 242/318] Updating ironSource Flutter mediation plugin's version to 1.5.0 in the mediation developer docs. PiperOrigin-RevId: 791377760 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 55d2d312d..615e1f678 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,6 +1,9 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Version 1.5.0 (In progress) +#### Version 1.5.0 +- Supports [ironSource Android adapter version 8.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-81000). +- Supports [ironSource iOS adapter version 8.10.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-810000). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.4.1 - Supports [ironSource Android adapter version 8.9.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-8910). From 73d59ae6fcb3107e648eda69b583592db2ba9465 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 6 Aug 2025 11:00:03 -0700 Subject: [PATCH 243/318] Returning minimum iOS target to 12 for ironSource adapter. PiperOrigin-RevId: 791762165 --- .../mediation/gma_mediation_ironsource/example/ios/Podfile | 2 +- .../example/ios/Runner.xcodeproj/project.pbxproj | 6 +++--- .../ios/gma_mediation_ironsource.podspec | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/example/ios/Podfile b/packages/mediation/gma_mediation_ironsource/example/ios/Podfile index b2d735017..612c3b8e0 100644 --- a/packages/mediation/gma_mediation_ironsource/example/ios/Podfile +++ b/packages/mediation/gma_mediation_ironsource/example/ios/Podfile @@ -1,4 +1,4 @@ -platform :ios, '13.0' +platform :ios, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj index 11e0fb54b..ec226693b 100644 --- a/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/mediation/gma_mediation_ironsource/example/ios/Runner.xcodeproj/project.pbxproj @@ -362,7 +362,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -488,7 +488,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -539,7 +539,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 02c512268..c3d97605d 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -17,7 +17,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.10.0.0.0' - s.platform = :ios, '13.0' + s.platform = :ios, '12.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. From 53de96be45058dd53de9e01d77d6aaa473726503 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 09:37:29 -0700 Subject: [PATCH 244/318] Updating AppLovin Flutter mediation plugin's version to 2.3.2 PiperOrigin-RevId: 793683134 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 69288d98f..08eb64e90 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,6 +1,9 @@ ## AppLovin Flutter Mediation Adapter Changelog -#### Version 2.3.2 (In progress) +#### Version 2.3.2 +- Supports [AppLovin Android adapter version 13.3.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13311). +- Supports [AppLovin iOS adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13310). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 2.3.1 - Supports [AppLovin Android adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13310). From 44eba72f68c178362f398697e59987ccb549e2eb Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 09:38:34 -0700 Subject: [PATCH 245/318] Update Pangle Flutter Adapter version to 3.2.0 PiperOrigin-RevId: 793683540 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 483088a3c..cdb87cf1c 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.2.0 (In progress) +#### Version 3.2.0 +- Supports [Pangle Android adapter version 7.3.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73040). +- Supports [Pangle iOS adapter version 7.4.0.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-74090). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.1.1 - Supports [Pangle Android adapter version 7.2.0.6.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-72060). From 4c639e3d5ebd6e2cacd11b6596cb82092b35b3e8 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 09:44:29 -0700 Subject: [PATCH 246/318] Updating Chartboost Flutter Adapter version to 1.2.0 PiperOrigin-RevId: 793686513 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 0ad68ea0e..96c664bb4 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,6 +1,9 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### Version 1.2.0 (In progress) +#### Version 1.2.0 +- Supports [Chartboost Android adapter version 9.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9900). +- Supports [Charboost iOS adapter version 9.9.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9910). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.0 - Supports [Chartboost Android adapter version 9.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9831). From eb6d25e04a5d59cbf94ad6fb10ffe6be71ac83fd Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 11:59:23 -0700 Subject: [PATCH 247/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.91.0, 7.7.9.0) PiperOrigin-RevId: 793743950 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mintegral/android/build.gradle | 4 ++-- .../ios/gma_mediation_mintegral.podspec | 4 ++-- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 13ec57479..ad9ab781a 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,7 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Version 1.2.4 (In progress) + #### Version 1.2.3 - Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). - Supports [Mintegral iOS adapter version 7.7.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7780). diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index bfdeb52dd..d646ce883 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.3" +version = "1.2.4" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "16.9.71.0" + stringVersion = "16.9.91.0" } android { diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 130a32eac..478bc9145 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.3' + s.version = '1.2.4' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.8.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.9.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index fcbbd7301..63e555b86 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.3 +version: 1.2.4 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From dbef7e6bddaa22e42c59072aba2d755d3703340f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 11:59:50 -0700 Subject: [PATCH 248/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.12.0.0, 3.12.0.0) PiperOrigin-RevId: 793744106 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index fadf29fa1..9f1a1ccdf 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.6.0 (In progress) + #### Version 1.5.0 - Supports [Moloco Android adapter version 3.11.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31100). - Supports [Moloco iOS adapter version 3.11.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31100). diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 7e37b58df..c0cab382a 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.5.0" +version = "1.6.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.11.0.0" + stringVersion = "3.12.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index 2a90b2320..714fc9703 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.5.0' + s.version = '1.6.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.11.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.12.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 9eb3608ae..67bd3d1c4 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.5.0 +version: 1.6.0 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From 50c8f6f78241e46716e5a524ee1c33da6e5d95ab Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:00:31 -0700 Subject: [PATCH 249/318] Updating Line Flutter mediation plugin to support the latest adapters (2.9.20250718.0, 2.9.20250512.0) PiperOrigin-RevId: 793744318 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_line/android/build.gradle | 4 ++-- .../gma_mediation_line/ios/gma_mediation_line.podspec | 2 +- packages/mediation/gma_mediation_line/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index c60548fb2..6f851239d 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,5 +1,7 @@ ## Line Flutter Mediation Adapter Changelog +#### Version 1.0.4 (In progress) + #### Version 1.0.3 - Supports [Line Android adapter version 2.9.20250519.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202505190). - Supports [Line iOS adapter version 2.9.20250512.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202505120). diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index e5b78b4e2..91cf9d8f9 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0.3" +version = "1.0.4" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.9.20250519.0" + stringVersion = "2.9.20250718.0" } android { diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec index c4037fc21..06555935a 100644 --- a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_line' - s.version = '1.0.3' + s.version = '1.0.4' s.summary = 'Google Mobile Ads Mediation of Line.' s.description = <<-DESC Mediation Adapter for Line to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index 9347a7f47..1d464c232 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_line description: 'Mediation Adapter that enables sending ad requests to the Line ad network using the google_mobile_ads plugin.' -version: 1.0.3 +version: 1.0.4 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From 244308d0ef7d855e23bb307b70b140f22aaf8867 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:05:10 -0700 Subject: [PATCH 250/318] Updating InMobi Flutter mediation plugin to support the latest adapters (10.8.7.0, 10.8.6.0) PiperOrigin-RevId: 793746217 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_inmobi/android/build.gradle | 4 ++-- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 42af71477..6fcb3c8aa 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,7 @@ ## InMobi Flutter Mediation Adapter Changelog +#### Version 1.1.4 (In progress) + #### Version 1.1.3 * Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). * Supports [inMobi iOS adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10831). diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 44fde9357..471c92a4c 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version = "1.1.3" +version = "1.1.4" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "10.8.3.1" + stringVersion = "10.8.7.0" } android { diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index 36736d4d4..d56da0aee 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.1.3' + s.version = '1.1.4' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.3.1' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.6.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index 16612f82d..ce2ea0548 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.1.3 +version: 1.1.4 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: From 081bccf0facfe0238d91be585c64c67a1c63f6f6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:06:33 -0700 Subject: [PATCH 251/318] Updating PubMatic Flutter mediation plugin to support the latest adapters (4.8.0.0, 4.8.0.0) PiperOrigin-RevId: 793746718 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_pubmatic/android/build.gradle | 4 ++-- .../gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec | 4 ++-- packages/mediation/gma_mediation_pubmatic/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index c04c8be43..317836255 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pubmatic Flutter Mediation Adapter Changelog +#### Version 1.1.0 (In progress) + #### Version 1.0.0 - Initial release. - Supports [PubMatic Android adapter version 4.7.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4711). diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index 51a2553c2..25e2f9af4 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" -version = "1.0.0" +version = "1.1.0" buildscript { ext.kotlin_version = "2.1.0" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "4.7.1.1" + stringVersion = "4.8.0.0" } android { diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec index 62fe2cd66..55a8b32b7 100644 --- a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_pubmatic' - s.version = '1.0.0' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of Pubmatic.' s.description = <<-DESC Mediation Adapter for Pubmatic to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPubMatic', '~> 4.7.0.0' + s.dependency 'GoogleMobileAdsMediationPubMatic', '~> 4.8.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml index 24d6e7a4d..2e2316fde 100644 --- a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_pubmatic description: 'Mediation Adapter that enables sending ad requests to the Pubmatic ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.1.0 environment: sdk: ^3.8.1 flutter: '>=3.3.0' From a18a518dd285be93ecc8e7094c540ed4ec2eb774 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:07:37 -0700 Subject: [PATCH 252/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.3.0.5.0, 7.4.1.0.0) PiperOrigin-RevId: 793747143 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index cdb87cf1c..ec967e8ba 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.2.1 (In progress) + #### Version 3.2.0 - Supports [Pangle Android adapter version 7.3.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73040). - Supports [Pangle iOS adapter version 7.4.0.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-74090). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index a876583ca..3817d6db2 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.2.0" +version = "3.2.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.3.0.4.0" + stringVersion = "7.3.0.5.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 6abe75950..4ee3a4f7c 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.2.0' + s.version = '3.2.1' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.4.0.9.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.4.1.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 847d700b4..0f8e3e8b2 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.2.0 +version: 3.2.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 541e0604137a88dafc67733a744118d2574b4ff2 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:08:31 -0700 Subject: [PATCH 253/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.9.2.0, 9.9.2.0) PiperOrigin-RevId: 793747511 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 96c664bb4..6309e1c43 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,5 +1,7 @@ ## Chartboost Flutter Mediation Adapter Changelog +#### Version 1.2.1 (In progress) + #### Version 1.2.0 - Supports [Chartboost Android adapter version 9.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9900). - Supports [Charboost iOS adapter version 9.9.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9910). diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 5fc681204..d9dfc586d 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.2.0" +version = "1.2.1" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.9.0.0" + stringVersion = "9.9.2.0" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index c2d9a87ad..a146fdd68 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.2.0' + s.version = '1.2.1' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.1.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.2.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index cbff96a05..861d1598b 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.2.0 +version: 1.2.1 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From 1dd55b15983636f1682ce84119802a52ea0d37b0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:09:11 -0700 Subject: [PATCH 254/318] Updating DTExchange Flutter mediation plugin to support the latest adapters (8.3.8.0, 8.3.8.0) PiperOrigin-RevId: 793747777 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_dtexchange/android/build.gradle | 4 ++-- .../ios/gma_mediation_dtexchange.podspec | 4 ++-- packages/mediation/gma_mediation_dtexchange/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index c0a4a445d..60c050cfc 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,5 +1,7 @@ ## DT Exchange Flutter Mediation Adapter Changelog +#### Version 1.1.5 (In progress) + #### Version 1.1.4 * Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). * Supports [DT Exchange iOS adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8370). diff --git a/packages/mediation/gma_mediation_dtexchange/android/build.gradle b/packages/mediation/gma_mediation_dtexchange/android/build.gradle index d3efa3613..d140ab64b 100644 --- a/packages/mediation/gma_mediation_dtexchange/android/build.gradle +++ b/packages/mediation/gma_mediation_dtexchange/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_dtexchange' -version = "1.1.4" +version = "1.1.5" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.3.7.0" + stringVersion = "8.3.8.0" } android { diff --git a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec index 5986a7b31..4073f1296 100644 --- a/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec +++ b/packages/mediation/gma_mediation_dtexchange/ios/gma_mediation_dtexchange.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_dtexchange' - s.version = '1.1.4' + s.version = '1.1.5' s.summary = 'Google Mobile Ads Mediation of DT Exchange.' s.description = <<-DESC Mediation Adapter for DT Exchange to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for DT Exchange to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.7.0' + s.dependency 'GoogleMobileAdsMediationFyber', '~> 8.3.8.0' s.platform = :ios, '13.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. diff --git a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml index fffdbacd6..c4576d0e6 100644 --- a/packages/mediation/gma_mediation_dtexchange/pubspec.yaml +++ b/packages/mediation/gma_mediation_dtexchange/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_dtexchange description: "Mediation Adapter that enables sending ad requests to the DT Exchange ad network using the google_mobile_ads plugin." -version: 1.1.4 +version: 1.1.5 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_dtexchange environment: From 8d2c1edb6f42ce1f8835d2dac27f357ad1f9c674 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 12:11:09 -0700 Subject: [PATCH 255/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.16.0.0, 4.16.0.0) PiperOrigin-RevId: 793748484 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 5c1a8d6f0..3906c1475 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,7 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.6.0 (In progress) + #### Version 1.5.1 - Supports [Unity Android adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41510). - Supports [Unity iOS adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41510). diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index d14340b22..ff83daec4 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.5.1" +version = "1.6.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.15.1.0" + stringVersion = "4.16.0.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index d3039d867..afef02433 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.5.1' + s.version = '1.6.0' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.15.1.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.16.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index a36b814ba..5d7c201e9 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.5.1 +version: 1.6.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From 145ee20d3e278baaa3c026c6acf768790d19c090 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 11 Aug 2025 13:37:47 -0700 Subject: [PATCH 256/318] Updating myTarget Flutter mediation plugin's version to 1.4.0 in the mediation developer docs. PiperOrigin-RevId: 793779711 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 78810866b..93e774181 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,6 +1,9 @@ ## myTarget Flutter Mediation Adapter Changelog -#### Version 1.4.0 (In progress) +#### Version 1.4.0 +* Supports [myTarget Android adapter version 5.27.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52720). +* Supports [myTarget iOS adapter version 5.33.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-53300). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.3.0 * Supports [myTarget Android adapter version 5.27.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52711). From 2d66b270fb8c38947f9fb4ffb6bf53a10c284190 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 12 Aug 2025 15:59:52 -0700 Subject: [PATCH 257/318] Setting minimum iOS target to 13.0 for Unity adapter. PiperOrigin-RevId: 794301027 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 1 + packages/mediation/gma_mediation_unity/example/ios/Podfile | 2 +- .../example/ios/Runner.xcodeproj/project.pbxproj | 6 +++--- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 3906c1475..07b7b718b 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,6 +1,7 @@ ## Unity Ads Flutter Mediation Adapter Changelog #### Version 1.6.0 (In progress) +- Now requires minimum iOS version 13.0. #### Version 1.5.1 - Supports [Unity Android adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41510). diff --git a/packages/mediation/gma_mediation_unity/example/ios/Podfile b/packages/mediation/gma_mediation_unity/example/ios/Podfile index bc006b859..6a8ce2dd1 100644 --- a/packages/mediation/gma_mediation_unity/example/ios/Podfile +++ b/packages/mediation/gma_mediation_unity/example/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -platform :ios, '12.0' +platform :ios, '13.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/packages/mediation/gma_mediation_unity/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_unity/example/ios/Runner.xcodeproj/project.pbxproj index cf7b2b53c..3bfc1952a 100644 --- a/packages/mediation/gma_mediation_unity/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/mediation/gma_mediation_unity/example/ios/Runner.xcodeproj/project.pbxproj @@ -370,7 +370,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -534,7 +534,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -583,7 +583,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index afef02433..3335483ba 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -17,7 +17,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' s.dependency 'GoogleMobileAdsMediationUnity', '~>4.16.0.0' - s.platform = :ios, '12.0' + s.platform = :ios, '13.0' s.static_framework = true # Flutter.framework does not contain a i386 slice. From 59acba4adcbff1abfdff359e3f8680ee3b0bcc1a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 14 Aug 2025 09:25:49 -0700 Subject: [PATCH 258/318] Internal change PiperOrigin-RevId: 795073149 --- .../example/ios/Runner.xcodeproj/project.pbxproj | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj index 9ba859137..6822a923c 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj +++ b/packages/mediation/gma_mediation_dtexchange/example/ios/Runner.xcodeproj/project.pbxproj @@ -454,7 +454,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -583,7 +583,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -634,7 +634,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; From 5dce0f8f948d1fd04a5e156d80ed0ea6e17f837c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 19 Aug 2025 10:20:14 -0700 Subject: [PATCH 259/318] Internal change PiperOrigin-RevId: 796926301 --- .../example/android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../gma_mediation_applovin/example/android/settings.gradle | 3 ++- .../example/android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../gma_mediation_dtexchange/example/android/settings.gradle | 2 +- .../example/android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../gma_mediation_ironsource/example/android/settings.gradle | 2 +- .../example/android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../example/android/settings.gradle | 3 ++- .../example/android/gradle/wrapper/gradle-wrapper.properties | 2 +- .../gma_mediation_unity/example/android/settings.gradle | 3 ++- 10 files changed, 13 insertions(+), 10 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_applovin/example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..afa1e8eb0 100644 --- a/packages/mediation/gma_mediation_applovin/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/mediation/gma_mediation_applovin/example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_applovin/example/android/settings.gradle b/packages/mediation/gma_mediation_applovin/example/android/settings.gradle index 7cd712855..a33ee2203 100644 --- a/packages/mediation/gma_mediation_applovin/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_applovin/example/android/settings.gradle @@ -23,7 +23,8 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.7.0" apply false + id 'org.jetbrains.kotlin.android' version '2.0.21' apply false } include ":app" diff --git a/packages/mediation/gma_mediation_dtexchange/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_dtexchange/example/android/gradle/wrapper/gradle-wrapper.properties index e1ca574ef..afa1e8eb0 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/mediation/gma_mediation_dtexchange/example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle b/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle index c9926a2f0..a8c03d6b0 100644 --- a/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_dtexchange/example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.7.0" apply false id "org.jetbrains.kotlin.android" version "2.0.21" apply false } diff --git a/packages/mediation/gma_mediation_ironsource/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_ironsource/example/android/gradle/wrapper/gradle-wrapper.properties index e1ca574ef..afa1e8eb0 100644 --- a/packages/mediation/gma_mediation_ironsource/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/mediation/gma_mediation_ironsource/example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle b/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle index c9926a2f0..a8c03d6b0 100644 --- a/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_ironsource/example/android/settings.gradle @@ -19,7 +19,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.7.0" apply false id "org.jetbrains.kotlin.android" version "2.0.21" apply false } diff --git a/packages/mediation/gma_mediation_liftoffmonetize/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_liftoffmonetize/example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..afa1e8eb0 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/mediation/gma_mediation_liftoffmonetize/example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_liftoffmonetize/example/android/settings.gradle b/packages/mediation/gma_mediation_liftoffmonetize/example/android/settings.gradle index 7cd712855..a33ee2203 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/example/android/settings.gradle @@ -23,7 +23,8 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.7.0" apply false + id 'org.jetbrains.kotlin.android' version '2.0.21' apply false } include ":app" diff --git a/packages/mediation/gma_mediation_unity/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_unity/example/android/gradle/wrapper/gradle-wrapper.properties index 3c472b99c..afa1e8eb0 100644 --- a/packages/mediation/gma_mediation_unity/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/packages/mediation/gma_mediation_unity/example/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/packages/mediation/gma_mediation_unity/example/android/settings.gradle b/packages/mediation/gma_mediation_unity/example/android/settings.gradle index 7cd712855..a33ee2203 100644 --- a/packages/mediation/gma_mediation_unity/example/android/settings.gradle +++ b/packages/mediation/gma_mediation_unity/example/android/settings.gradle @@ -23,7 +23,8 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "8.7.0" apply false + id 'org.jetbrains.kotlin.android' version '2.0.21' apply false } include ":app" From 90b9ff77bad8effa1fa9cfac8bd15a580e33ed30 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 22 Aug 2025 13:03:48 -0700 Subject: [PATCH 260/318] Updating Meta Audience Network Flutter mediation plugin's version to 1.4.1 in the mediation developer docs. PiperOrigin-RevId: 798313850 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 5a71bd185..151a9b1f5 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,6 +1,9 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog -#### Version 1.4.1 (In progress) +#### Version 1.4.1 +* Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). +* Supports [Meta Audience Network iOS adapter version 6.20.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-62010). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.4.0 * Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). From fbc6031ecf31cae5db4e871f8d44a61099d85ba5 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 22 Aug 2025 13:20:49 -0700 Subject: [PATCH 261/318] Updating Liftoff Monetize Flutter mediation plugin's version to 1.2.2 in the mediation developer docs. PiperOrigin-RevId: 798319551 --- .../mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index a901b287c..ef151c0f0 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,6 +1,9 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog -#### Version 1.2.2 (In progress) +#### Version 1.2.2 +* Supports [Liftoff Monetize Android adapter version 7.5.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7501). +* Supports [Liftoff Monetize iOS adapter version 7.5.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7520). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.1 * Supports [Liftoff Monetize Android adapter version 7.5.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7500). From a317612579b1b38db2c7d004f9526af7d6b2baa3 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 25 Aug 2025 05:35:10 -0700 Subject: [PATCH 262/318] Updating Chartboost Flutter Adapter version to 1.2.1 PiperOrigin-RevId: 799083260 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 6309e1c43..c280fdf77 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,6 +1,9 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### Version 1.2.1 (In progress) +#### Version 1.2.1 +- Supports [Chartboost Android adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9920). +- Supports [Charboost iOS adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9920). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.0 - Supports [Chartboost Android adapter version 9.9.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9900). From 81eb8c73431dba659046ad07a75585b05d19e70c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 25 Aug 2025 05:56:36 -0700 Subject: [PATCH 263/318] Updating Unity Ads Flutter Adapter version to 1.6.0 PiperOrigin-RevId: 799088456 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 07b7b718b..39e4b4b4a 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,7 +1,10 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Version 1.6.0 (In progress) +#### Version 1.6.0 - Now requires minimum iOS version 13.0. +- Supports [Unity Android adapter version 4.16.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41600). +- Supports [Unity iOS adapter version 4.16.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41600). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.5.1 - Supports [Unity Android adapter version 4.15.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41510). From 925efa9bdb0d8542ddbce0c50aa41d2341376b0e Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 25 Aug 2025 09:05:21 -0700 Subject: [PATCH 264/318] Update Pangle Flutter Adapter version to 3.2.1 PiperOrigin-RevId: 799144506 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index ec967e8ba..3aaff5c25 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.2.1 (In progress) +#### Version 3.2.1 +- Supports [Pangle Android adapter version 7.3.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73050). +- Supports [Pangle iOS adapter version 7.4.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-74100). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.2.0 - Supports [Pangle Android adapter version 7.3.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73040). From a0025067573c7d0132196968970ff44b94801102 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 26 Aug 2025 10:08:51 -0700 Subject: [PATCH 265/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.5.0.2.0, 7.5.0.5.0) PiperOrigin-RevId: 799611385 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 3aaff5c25..61a03d1b2 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.3.0 (In progress) + #### Version 3.2.1 - Supports [Pangle Android adapter version 7.3.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73050). - Supports [Pangle iOS adapter version 7.4.1.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-74100). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index 3817d6db2..ae2154584 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.2.1" +version = "3.3.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.3.0.5.0" + stringVersion = "7.5.0.2.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 4ee3a4f7c..e42b5d469 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.2.1' + s.version = '3.3.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.4.1.0.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.5.0.5.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 0f8e3e8b2..51bec97fe 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.2.1 +version: 3.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 7dfc2e86b19afef531b415abe41dae54f20413af Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 26 Aug 2025 10:09:32 -0700 Subject: [PATCH 266/318] Updating Moloco Flutter mediation plugin to support the latest adapters (3.12.1.0, 3.12.1.0) PiperOrigin-RevId: 799611651 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 9f1a1ccdf..850ddaeb6 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 1.6.1 (In progress) + #### Version 1.6.0 (In progress) #### Version 1.5.0 diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index c0cab382a..49183e692 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.6.0" +version = "1.6.1" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.12.0.0" + stringVersion = "3.12.1.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index 714fc9703..678764d1c 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.6.0' + s.version = '1.6.1' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.12.0.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.12.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 67bd3d1c4..88a7b461e 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.6.0 +version: 1.6.1 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From 59fc2a22c0a60eb312b7b9c25426cabd7b64321a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 26 Aug 2025 10:20:53 -0700 Subject: [PATCH 267/318] Updating Liftoff Flutter mediation plugin to support the latest adapters (7.5.1.0, 7.5.3.0) PiperOrigin-RevId: 799616132 --- packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 2 ++ .../gma_mediation_liftoffmonetize/android/build.gradle | 4 ++-- .../ios/gma_mediation_liftoffmonetize.podspec | 4 ++-- packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index ef151c0f0..da7221523 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,5 +1,7 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog +#### Version 1.2.3 (In progress) + #### Version 1.2.2 * Supports [Liftoff Monetize Android adapter version 7.5.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7501). * Supports [Liftoff Monetize iOS adapter version 7.5.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7520). diff --git a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle index 8785c700b..75ff4e5ed 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle +++ b/packages/mediation/gma_mediation_liftoffmonetize/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_liftoffmonetize' -version = "1.2.2" +version = "1.2.3" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.5.0.1" + stringVersion = "7.5.1.0" } android { diff --git a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec index 6eea3c757..36f081744 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec +++ b/packages/mediation/gma_mediation_liftoffmonetize/ios/gma_mediation_liftoffmonetize.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_liftoffmonetize' - s.version = '1.2.2' + s.version = '1.2.3' s.summary = 'Google Mobile Ads Mediation of Liftoff Monetize.' s.description = <<-DESC Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. @@ -15,7 +15,7 @@ Mediation Adapter for Liftoff Monetize to use with Google Mobile Ads. s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.public_header_files = 'Public/**/*.h' - s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.2.0' + s.dependency 'GoogleMobileAdsMediationVungle', '~>7.5.3.0' s.dependency 'Flutter' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml index d269ad236..068588aaa 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml +++ b/packages/mediation/gma_mediation_liftoffmonetize/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_liftoffmonetize description: "Mediation Adapter that enables sending ad requests to the LiftoffMonetize ad network using the google_mobile_ads plugin." -version: 1.2.2 +version: 1.2.3 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_liftoffmonetize environment: From 25167de4b3285217f82e894035b28bd16fdbaa51 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 26 Aug 2025 14:00:59 -0700 Subject: [PATCH 268/318] Updating UnityAds Flutter mediation plugin to support the latest adapters (4.16.1.0, 4.16.1.0) PiperOrigin-RevId: 799706553 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_unity/android/build.gradle | 4 ++-- .../gma_mediation_unity/ios/gma_mediation_unity.podspec | 4 ++-- packages/mediation/gma_mediation_unity/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 39e4b4b4a..554ce8ae0 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,5 +1,7 @@ ## Unity Ads Flutter Mediation Adapter Changelog +#### Version 1.6.1 (In progress) + #### Version 1.6.0 - Now requires minimum iOS version 13.0. - Supports [Unity Android adapter version 4.16.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41600). diff --git a/packages/mediation/gma_mediation_unity/android/build.gradle b/packages/mediation/gma_mediation_unity/android/build.gradle index ff83daec4..38cadc305 100644 --- a/packages/mediation/gma_mediation_unity/android/build.gradle +++ b/packages/mediation/gma_mediation_unity/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_unity' -version = "1.6.0" +version = "1.6.1" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "4.16.0.0" + stringVersion = "4.16.1.0" } android { diff --git a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec index 3335483ba..5e54d916f 100644 --- a/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec +++ b/packages/mediation/gma_mediation_unity/ios/gma_mediation_unity.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_unity' - s.version = '1.6.0' + s.version = '1.6.1' s.summary = 'Google Mobile Ads Mediation of Unity Ads.' s.description = <<-DESC Mediation Adapter for Unity Ads to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Unity Ads to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationUnity', '~>4.16.0.0' + s.dependency 'GoogleMobileAdsMediationUnity', '~>4.16.1.0' s.platform = :ios, '13.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_unity/pubspec.yaml b/packages/mediation/gma_mediation_unity/pubspec.yaml index 5d7c201e9..cb1080cab 100644 --- a/packages/mediation/gma_mediation_unity/pubspec.yaml +++ b/packages/mediation/gma_mediation_unity/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_unity description: "Mediation Adapter that enables sending ad requests to the Unity ad network using the google_mobile_ads plugin." -version: 1.6.0 +version: 1.6.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_unity environment: From 13ef3481d4396bce557f7a86a69a778a603ba7b7 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 27 Aug 2025 10:55:17 -0700 Subject: [PATCH 269/318] Fixes typo for GmaMediationMeta PiperOrigin-RevId: 800098440 --- .../mediation/gma_mediation_meta/lib/gma_mediation_meta.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_meta/lib/gma_mediation_meta.dart b/packages/mediation/gma_mediation_meta/lib/gma_mediation_meta.dart index 436fe07ac..42184b66e 100644 --- a/packages/mediation/gma_mediation_meta/lib/gma_mediation_meta.dart +++ b/packages/mediation/gma_mediation_meta/lib/gma_mediation_meta.dart @@ -13,4 +13,4 @@ // limitations under the License. /// This empty class is needed to allow correct compatibility analysis with host platforms. -class GmaMediationUnity {} +class GmaMediationMeta {} From 9e63c9ad1459a7bbeeb9465ab3c6e25309f54683 Mon Sep 17 00:00:00 2001 From: LTphantom Date: Wed, 27 Aug 2025 13:46:19 -0700 Subject: [PATCH 270/318] Update gma_mediation_applovin.yaml --- .github/workflows/gma_mediation_applovin.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gma_mediation_applovin.yaml b/.github/workflows/gma_mediation_applovin.yaml index 274bfc790..8d648f831 100644 --- a/.github/workflows/gma_mediation_applovin.yaml +++ b/.github/workflows/gma_mediation_applovin.yaml @@ -72,7 +72,7 @@ jobs: flutter clean flutter pub get flutter precache --ios - pod install + pod install --repo-update xcodebuild -configuration Debug -resultBundlePath TestResults VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15,OS=17.5' test - uses: actions/upload-artifact@v4 if: failure() From 82ee731ab0a796392e106ed58718874c1eb08423 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Wed, 27 Aug 2025 16:30:05 -0700 Subject: [PATCH 271/318] Creation of the BidMachine Flutter adapter PiperOrigin-RevId: 800216851 --- .../gma_mediation_bidmachine/CHANGELOG.md | 8 + .../gma_mediation_bidmachine/LICENSE | 202 ++++++ .../gma_mediation_bidmachine/README.md | 31 + .../analysis_options.yaml | 19 + .../android/build.gradle | 66 ++ .../gma_mediation_bidmachine_android.iml | 28 + .../android/settings.gradle | 1 + .../android/src/main/AndroidManifest.xml | 3 + .../GmaMediationBidMachinePlugin.kt | 24 + .../GmaMediationBidmachinePlugin.kt | 33 + .../example/README.md | 17 + .../example/analysis_options.yaml | 28 + .../example/android/app/build.gradle.kts | 41 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 45 ++ .../MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../example/android/build.gradle.kts | 19 + ...a_mediation_bidmachine_example_android.iml | 29 + .../example/android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../example/android/gradlew | 160 +++++ .../example/android/gradlew.bat | 90 +++ .../example/android/settings.gradle.kts | 25 + .../gma_mediation_bidmachine_example.iml | 17 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../example/ios/Flutter/Debug.xcconfig | 1 + .../example/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 101 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../example/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../example/ios/Runner/Info.plist | 49 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../example/lib/main.dart | 29 + .../example/pubspec.lock | 323 +++++++++ .../example/pubspec.yaml | 85 +++ .../gma_mediation_bidmachine.iml | 17 + .../GmaMediationBidMachinePlugin.swift | 23 + .../GmaMediationBidmachinePlugin.swift | 20 + .../ios/Resources/PrivacyInfo.xcprivacy | 14 + .../ios/gma_mediation_bidmachine.podspec | 21 + .../lib/gma_mediation_bidmachine.dart | 16 + .../gma_mediation_bidmachine/pubspec.lock | 261 ++++++++ .../gma_mediation_bidmachine/pubspec.yaml | 26 + 82 files changed, 2875 insertions(+) create mode 100644 packages/mediation/gma_mediation_bidmachine/CHANGELOG.md create mode 100644 packages/mediation/gma_mediation_bidmachine/LICENSE create mode 100644 packages/mediation/gma_mediation_bidmachine/README.md create mode 100644 packages/mediation/gma_mediation_bidmachine/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_bidmachine/android/build.gradle create mode 100644 packages/mediation/gma_mediation_bidmachine/android/gma_mediation_bidmachine_android.iml create mode 100644 packages/mediation/gma_mediation_bidmachine/android/settings.gradle create mode 100644 packages/mediation/gma_mediation_bidmachine/android/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidMachinePlugin.kt create mode 100644 packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt create mode 100644 packages/mediation/gma_mediation_bidmachine/example/README.md create mode 100644 packages/mediation/gma_mediation_bidmachine/example/analysis_options.yaml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/debug/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine_example/MainActivity.kt create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable/launch_background.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values-night/styles.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values/styles.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/app/src/profile/AndroidManifest.xml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/build.gradle.kts create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/gma_mediation_bidmachine_example_android.iml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/gradle.properties create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/gradle/wrapper/gradle-wrapper.properties create mode 100755 packages/mediation/gma_mediation_bidmachine/example/android/gradlew create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/gradlew.bat create mode 100644 packages/mediation/gma_mediation_bidmachine/example/android/settings.gradle.kts create mode 100644 packages/mediation/gma_mediation_bidmachine/example/gma_mediation_bidmachine_example.iml create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/AppFrameworkInfo.plist create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Debug.xcconfig create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Release.xcconfig create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.pbxproj create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/AppDelegate.swift create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/Main.storyboard create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Info.plist create mode 100644 packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Runner-Bridging-Header.h create mode 100644 packages/mediation/gma_mediation_bidmachine/example/lib/main.dart create mode 100644 packages/mediation/gma_mediation_bidmachine/example/pubspec.lock create mode 100644 packages/mediation/gma_mediation_bidmachine/example/pubspec.yaml create mode 100644 packages/mediation/gma_mediation_bidmachine/gma_mediation_bidmachine.iml create mode 100644 packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidMachinePlugin.swift create mode 100644 packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift create mode 100644 packages/mediation/gma_mediation_bidmachine/ios/Resources/PrivacyInfo.xcprivacy create mode 100644 packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec create mode 100644 packages/mediation/gma_mediation_bidmachine/lib/gma_mediation_bidmachine.dart create mode 100644 packages/mediation/gma_mediation_bidmachine/pubspec.lock create mode 100644 packages/mediation/gma_mediation_bidmachine/pubspec.yaml diff --git a/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md new file mode 100644 index 000000000..762aef3d9 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md @@ -0,0 +1,8 @@ +## BidMachine Flutter Mediation Adapter Changelog + +#### 1.0.0 + +* Initial release. +* Verified compatibility with BidMachine Android adapter version 3.3.0.0 +* Verified compatibility with BidMachine iOS adapter version 3.4.0.0 +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. diff --git a/packages/mediation/gma_mediation_bidmachine/LICENSE b/packages/mediation/gma_mediation_bidmachine/LICENSE new file mode 100644 index 000000000..e58143fcc --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 Google LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/mediation/gma_mediation_bidmachine/README.md b/packages/mediation/gma_mediation_bidmachine/README.md new file mode 100644 index 000000000..ba2818042 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/README.md @@ -0,0 +1,31 @@ +# Google Mobile Ads Mediation of BidMachine for Flutter + +[![gma_mediation_bidmachine](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml/badge.svg)](https://github.com/googleads/googleads-mobile-flutter/actions/workflows/google_mobile_ads.yaml) + +This repository contains the source code for the Mediation BidMachine Flutter +plugin to be used with the Google Mobile Ads plugin. It enables mediation of the +BidMachine Ad Network through the Google Mobile Ads SDK. + +## Documentation +For instructions on how to use with the google_mobile_ads plugin, refer to the +developer guide for [BidMachine](https://developers.google.com/admob/flutter/mediation/bidmachine). + +## Downloads + +See [pub.dev](https://pub.dev/packages/gma_mediation_bidmachine/versions) for the +latest releases of the plugin. + +## Suggesting improvements + +To file bugs, make feature requests, or to suggest other improvements, please +use [github's issue tracker](https://github.com/googleads/googleads-mobile-flutter/issues). + + +## Other resources + +* [AdMob help center](https://support.google.com/admob/?hl=en#topic=7383088) +* [Ad Manager help center](https://support.google.com/admanager/?hl=en#topic=7505988) + +## License + +[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) \ No newline at end of file diff --git a/packages/mediation/gma_mediation_bidmachine/analysis_options.yaml b/packages/mediation/gma_mediation_bidmachine/analysis_options.yaml new file mode 100644 index 000000000..632d08c98 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/analysis_options.yaml @@ -0,0 +1,19 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +include: package:lint/package.yaml + +analyzer: + exclude: + - '**.g.dart' \ No newline at end of file diff --git a/packages/mediation/gma_mediation_bidmachine/android/build.gradle b/packages/mediation/gma_mediation_bidmachine/android/build.gradle new file mode 100644 index 000000000..446d08d4d --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/build.gradle @@ -0,0 +1,66 @@ +group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine" +version = "1.0.0" + +buildscript { + ext.kotlin_version = "2.1.0" + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.7.3") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +apply plugin: "com.android.library" +apply plugin: "kotlin-android" + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine" + + compileSdk = 35 + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11 + } + + sourceSets { + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" + } + + defaultConfig { + minSdk = 21 + } + + dependencies { + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") + } + + testOptions { + unitTests.all { + useJUnitPlatform() + + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + outputs.upToDateWhen {false} + showStandardStreams = true + } + } + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/android/gma_mediation_bidmachine_android.iml b/packages/mediation/gma_mediation_bidmachine/android/gma_mediation_bidmachine_android.iml new file mode 100644 index 000000000..e8b9110d5 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/gma_mediation_bidmachine_android.iml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/android/settings.gradle b/packages/mediation/gma_mediation_bidmachine/android/settings.gradle new file mode 100644 index 000000000..1e456fa86 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'gma_mediation_bidmachine' diff --git a/packages/mediation/gma_mediation_bidmachine/android/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_bidmachine/android/src/main/AndroidManifest.xml new file mode 100644 index 000000000..8b9a79ccd --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/src/main/AndroidManifest.xml @@ -0,0 +1,3 @@ + + diff --git a/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidMachinePlugin.kt b/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidMachinePlugin.kt new file mode 100644 index 000000000..ed7d15d2c --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidMachinePlugin.kt @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine + +import io.flutter.embedding.engine.plugins.FlutterPlugin + +/** Required to link the Android dependency of the BidMachine Adapter. */ +class GmaMediationBidMachinePlugin : FlutterPlugin { + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) {} + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {} +} diff --git a/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt b/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt new file mode 100644 index 000000000..d7a323e2d --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt @@ -0,0 +1,33 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine + +import io.flutter.embedding.engine.plugins.FlutterPlugin +import io.flutter.plugin.common.MethodCall +import io.flutter.plugin.common.MethodChannel +import io.flutter.plugin.common.MethodChannel.MethodCallHandler +import io.flutter.plugin.common.MethodChannel.Result + +/** GmaMediationBidmachinePlugin */ +class GmaMediationBidmachinePlugin : FlutterPlugin, MethodCallHandler { + /// The MethodChannel that will the communication between Flutter and native Android + /// + /// This local reference serves to register the plugin with the Flutter Engine and unregister it + /// when the Flutter Engine is detached from the Activity + private lateinit var channel: MethodChannel + + override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { + channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_bidmachine") + channel.setMethodCallHandler(this) + } + + override fun onMethodCall(call: MethodCall, result: Result) { + if (call.method == "getPlatformVersion") { + result.success("Android ${android.os.Build.VERSION.RELEASE}") + } else { + result.notImplemented() + } + } + + override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { + channel.setMethodCallHandler(null) + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/README.md b/packages/mediation/gma_mediation_bidmachine/example/README.md new file mode 100644 index 000000000..b854a765b --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/README.md @@ -0,0 +1,17 @@ +# gma_mediation_bidmachine_example + +Learn how to integrate with your app that uses the [google_mobile_ads](https://pub.dev/packages/google_mobile_ads) plugin +by following the [development guide](https://developers.google.com/admob/flutter/mediation/bidmachine). + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/packages/mediation/gma_mediation_bidmachine/example/analysis_options.yaml b/packages/mediation/gma_mediation_bidmachine/example/analysis_options.yaml new file mode 100644 index 000000000..0d2902135 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/build.gradle.kts b/packages/mediation/gma_mediation_bidmachine/example/android/app/build.gradle.kts new file mode 100644 index 000000000..cd35c24b0 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/build.gradle.kts @@ -0,0 +1,41 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine_example" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { jvmTarget = JavaVersion.VERSION_11.toString() } + + defaultConfig { + // TODO: Specify your own unique Application ID + // (https://developer.android.com/studio/build/application-id.html). + applicationId = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine_example" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +flutter { source = "../.." } diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/debug/AndroidManifest.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/AndroidManifest.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/AndroidManifest.xml new file mode 100644 index 000000000..7e079e8f7 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine_example/MainActivity.kt b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine_example/MainActivity.kt new file mode 100644 index 000000000..dbae4a0ce --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine_example/MainActivity.kt @@ -0,0 +1,5 @@ +package io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine_example + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity : FlutterActivity() diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable-v21/launch_background.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 000000000..f74085f3f --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable/launch_background.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 000000000..304732f88 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values-night/styles.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 000000000..06952be74 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values/styles.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..cb1ef8805 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/app/src/profile/AndroidManifest.xml b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 000000000..399f6981d --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/build.gradle.kts b/packages/mediation/gma_mediation_bidmachine/example/android/build.gradle.kts new file mode 100644 index 000000000..97eed2dd6 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/build.gradle.kts @@ -0,0 +1,19 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() + +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { project.evaluationDependsOn(":app") } + +tasks.register("clean") { delete(rootProject.layout.buildDirectory) } diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/gma_mediation_bidmachine_example_android.iml b/packages/mediation/gma_mediation_bidmachine/example/android/gma_mediation_bidmachine_example_android.iml new file mode 100644 index 000000000..18999696a --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/gma_mediation_bidmachine_example_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/gradle.properties b/packages/mediation/gma_mediation_bidmachine/example/android/gradle.properties new file mode 100644 index 000000000..f018a6181 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/mediation/gma_mediation_bidmachine/example/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..ac3b47926 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/gradlew b/packages/mediation/gma_mediation_bidmachine/example/android/gradlew new file mode 100755 index 000000000..9d82f7891 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/gradlew.bat b/packages/mediation/gma_mediation_bidmachine/example/android/gradlew.bat new file mode 100644 index 000000000..aec99730b --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/packages/mediation/gma_mediation_bidmachine/example/android/settings.gradle.kts b/packages/mediation/gma_mediation_bidmachine/example/android/settings.gradle.kts new file mode 100644 index 000000000..1a6884017 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.3" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app") diff --git a/packages/mediation/gma_mediation_bidmachine/example/gma_mediation_bidmachine_example.iml b/packages/mediation/gma_mediation_bidmachine/example/gma_mediation_bidmachine_example.iml new file mode 100644 index 000000000..f66303d53 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/gma_mediation_bidmachine_example.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/AppFrameworkInfo.plist b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 000000000..7c5696400 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Debug.xcconfig b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Debug.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Release.xcconfig b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Release.xcconfig new file mode 100644 index 000000000..592ceee85 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.pbxproj b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 000000000..d31cf7b95 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = io.flutter.plugins.googlemobileads.mediation.gmaMediationBidmachineExample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 000000000..e3773d42e --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/contents.xcworkspacedata b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..1d526a16e --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 000000000..f9b0d7c5e --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/AppDelegate.swift b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/AppDelegate.swift new file mode 100644 index 000000000..626664468 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..d36b1fab2 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_xN#0001NP)t-s|Ns9~ z#rXRE|M&d=0au&!`~QyF`q}dRnBDt}*!qXo`c{v z{Djr|@Adh0(D_%#_&mM$D6{kE_x{oE{l@J5@%H*?%=t~i_`ufYOPkAEn!pfkr2$fs z652Tz0001XNklqeeKN4RM4i{jKqmiC$?+xN>3Apn^ z0QfuZLym_5b<*QdmkHjHlj811{If)dl(Z2K0A+ekGtrFJb?g|wt#k#pV-#A~bK=OT ts8>{%cPtyC${m|1#B1A6#u!Q;umknL1chzTM$P~L002ovPDHLkV1lTfnu!1a literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 zcmV;526g#~P){YQnis^a@{&-nmRmq)<&%Mztj67_#M}W?l>kYSliK<%xAp;0j{!}J0!o7b zE>q9${Lb$D&h7k=+4=!ek^n+`0zq>LL1O?lVyea53S5x`Nqqo2YyeuIrQrJj9XjOp z{;T5qbj3}&1vg1VK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}x zU&J@bBI>f6w6en+CeI)3^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|VqzOc zkc7qL~0sOYuM{tG`rYEDV{DWY`Z8&)kW*hc2VkBuY+^Yx&92j&StN}Wp=LD zxoGxXw6f&8sB^u})h@b@z0RBeD`K7RMR9deyL(ZJu#39Z>rT)^>v}Khq8U-IbIvT> z?4pV9qGj=2)TNH3d)=De<+^w;>S7m_eFKTvzeaBeir45xY!^m!FmxnljbSS_3o=g( z->^wC9%qkR{kbGnW8MfFew_o9h3(r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfY zn1R5Qnp<{Jq0M1vX=X&F8gtLmcWv$1*M@4ZfF^9``()#hGTeKeP`1!iED ztNE(TN}M5}3Bbc*d=FIv`DNv&@|C6yYj{sSqUj5oo$#*0$7pu|Dd2TLI>t5%I zIa4Dvr(iayb+5x=j*Vum9&irk)xV1`t509lnPO0%skL8_1c#Xbamh(2@f?4yUI zhhuT5<#8RJhGz4%b$`PJwKPAudsm|at?u;*hGgnA zU1;9gnxVBC)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=k zL{GMc5{h138)fF5CzHEDM>+FqY)$pdN3}Ml+riTgJOLN0F*Vh?{9ESR{SVVg>*>=# zix;VJHPtvFFCRY$Ks*F;VX~%*r9F)W`PmPE9F!(&s#x07n2<}?S{(ygpXgX-&B&OM zONY&BRQ(#%0%jeQs?oJ4P!p*R98>qCy5p8w>_gpuh39NcOlp)(wOoz0sY-Qz55eB~ z7OC-fKBaD1sE3$l-6QgBJO!n?QOTza`!S_YK z_v-lm^7{VO^8Q@M_^8F)09Ki6%=s?2_5eupee(w1FB%aqSweusQ-T+CH0Xt{` zFjMvW{@C&TB)k25()nh~_yJ9coBRL(0oO@HK~z}7?bm5j;y@69;bvlHb2tf!$ReA~x{22wTq550 z?f?Hnw(;m3ip30;QzdV~7pi!wyMYhDtXW#cO7T>|f=bdFhu+F!zMZ2UFj;GUKX7tI z;hv3{q~!*pMj75WP_c}>6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FaF{8 z;u`Mw0ly(uE>*CgQYv{be6ab2LWhlaH1^iLIM{olnag$78^Fd}%dR7;JECQ+hmk|o z!u2&!3MqPfP5ChDSkFSH8F2WVOEf0(E_M(JL17G}Y+fg0_IuW%WQ zG(mG&u?|->YSdk0;8rc{yw2@2Z&GA}z{Wb91Ooz9VhA{b2DYE7RmG zjL}?eq#iX%3#k;JWMx_{^2nNax`xPhByFiDX+a7uTGU|otOvIAUy|dEKkXOm-`aWS z27pUzD{a)Ct<6p{{3)+lq@i`t@%>-wT4r?*S}k)58e09WZYP0{{R3FC5Sl00039P)t-s|Ns9~ z#rP?<_5oL$Q^olD{r_0T`27C={r>*`|Nj71npVa5OTzc(_WfbW_({R{p56NV{r*M2 z_xt?)2V0#0NsfV0u>{42ctGP(8vQj-Btk1n|O0ZD=YLwd&R{Ko41Gr9H= zY@z@@bOAMB5Ltl$E>bJJ{>JP30ZxkmI%?eW{k`b?Wy<&gOo;dS`~CR$Vwb@XWtR|N zi~t=w02?-0&j0TD{>bb6sNwsK*!p?V`RMQUl(*DVjk-9Cx+-z1KXab|Ka2oXhX5f% z`$|e!000AhNklrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`? zTG`AHia671e^vgmp!llKp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?hz91 z7p83F3%LVu9;S$tSI$C^%^yud1dfTM_6p2|+5Ejp$bd`GDvbR|xit>i!ZD&F>@CJrPmu*UjD&?DfZs=$@e3FQA(vNiU+$A*%a} z?`XcG2jDxJ_ZQ#Md`H{4Lpf6QBDp81_KWZ6Tk#yCy1)32zO#3<7>b`eT7UyYH1eGz z;O(rH$=QR*L%%ZcBpc=eGua?N55nD^K(8<#gl2+pN_j~b2MHs4#mcLmv%DkspS-3< zpI1F=^9siI0s-;IN_IrA;5xm~3?3!StX}pUv0vkxMaqm+zxrg7X7(I&*N~&dEd0kD z-FRV|g=|QuUsuh>-xCI}vD2imzYIOIdcCVV=$Bz@*u0+Bs<|L^)32nN*=wu3n%Ynw z@1|eLG>!8ruU1pFXUfb`j>(=Gy~?Rn4QJ-c3%3T|(Frd!bI`9u&zAnyFYTqlG#&J7 zAkD(jpw|oZLNiA>;>hgp1KX7-wxC~31II47gc zHcehD6Uxlf%+M^^uN5Wc*G%^;>D5qT{>=uxUhX%WJu^Z*(_Wq9y}npFO{Hhb>s6<9 zNi0pHXWFaVZnb)1+RS&F)xOv6&aeILcI)`k#0YE+?e)5&#r7J#c`3Z7x!LpTc01dx zrdC3{Z;joZ^KN&))zB_i)I9fWedoN>Zl-6_Iz+^G&*ak2jpF07*qoM6N<$f;w%0(f|Me literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 000000000..0bedcf2fd --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 000000000..89c2725b7 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/LaunchScreen.storyboard b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..f2e259c7c --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/Main.storyboard b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 000000000..f3c28516f --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Info.plist b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Info.plist new file mode 100644 index 000000000..c0b96a57c --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gma Mediation Bidmachine + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gma_mediation_bidmachine_example + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Runner-Bridging-Header.h b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 000000000..308a2a560 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/packages/mediation/gma_mediation_bidmachine/example/lib/main.dart b/packages/mediation/gma_mediation_bidmachine/example/lib/main.dart new file mode 100644 index 000000000..ea02decb7 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/lib/main.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatefulWidget { + const MyApp({super.key}); + + @override + State createState() => _MyAppState(); +} + +class _MyAppState extends State { + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + appBar: AppBar(title: const Text('Plugin example app')), + body: const Center(child: Text('Test app')), + ), + ); + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/example/pubspec.lock b/packages/mediation/gma_mediation_bidmachine/example/pubspec.lock new file mode 100644 index 000000000..b5600a117 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/pubspec.lock @@ -0,0 +1,323 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_driver: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + fuchsia_remote_debug_protocol: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + gma_mediation_bidmachine: + dependency: "direct main" + description: + path: ".." + relative: true + source: path + version: "1.0.0" + google_mobile_ads: + dependency: transitive + description: + name: google_mobile_ads + sha256: a4f59019f2c32769fb6c60ed8aa321e9c21a36297e2c4f23452b3e779a3e7a26 + url: "https://pub.dev" + source: hosted + version: "6.0.0" + integration_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + process: + dependency: transitive + description: + name: process + sha256: "107d8be718f120bbba9dcd1e95e3bd325b1b4a4f07db64154635ba03f2567a0d" + url: "https://pub.dev" + source: hosted + version: "5.0.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + sync_http: + dependency: transitive + description: + name: sync_http + sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" + url: "https://pub.dev" + source: hosted + version: "0.3.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + url: "https://pub.dev" + source: hosted + version: "15.0.0" + webdriver: + dependency: transitive + description: + name: webdriver + sha256: "2f3a14ca026957870cfd9c635b83507e0e51d8091568e90129fbf805aba7cade" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba + url: "https://pub.dev" + source: hosted + version: "4.13.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "0a42444056b24ed832bdf3442d65c5194f6416f7e782152384944053c2ecc9a3" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: "63d26ee3aca7256a83ccb576a50272edd7cfc80573a4305caa98985feb493ee0" + url: "https://pub.dev" + source: hosted + version: "2.14.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: fb46db8216131a3e55bcf44040ca808423539bc6732e7ed34fb6d8044e3d512f + url: "https://pub.dev" + source: hosted + version: "3.23.0" +sdks: + dart: ">=3.8.1 <4.0.0" + flutter: ">=3.27.0" diff --git a/packages/mediation/gma_mediation_bidmachine/example/pubspec.yaml b/packages/mediation/gma_mediation_bidmachine/example/pubspec.yaml new file mode 100644 index 000000000..c8b44b180 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/example/pubspec.yaml @@ -0,0 +1,85 @@ +name: gma_mediation_bidmachine_example +description: "Demonstrates how to use the gma_mediation_bidmachine plugin." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +environment: + sdk: ^3.8.1 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + gma_mediation_bidmachine: + # When depending on this package from a real application you should use: + # gma_mediation_bidmachine: ^x.y.z + # See https://dart.dev/tools/pub/dependencies#version-constraints + # The example app is bundled with the plugin so we use a path dependency on + # the parent directory to use the current plugin's version. + path: ../ + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + integration_test: + sdk: flutter + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^5.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/packages/mediation/gma_mediation_bidmachine/gma_mediation_bidmachine.iml b/packages/mediation/gma_mediation_bidmachine/gma_mediation_bidmachine.iml new file mode 100644 index 000000000..27686dd4b --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/gma_mediation_bidmachine.iml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidMachinePlugin.swift b/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidMachinePlugin.swift new file mode 100644 index 000000000..657465ff3 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidMachinePlugin.swift @@ -0,0 +1,23 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Flutter +import UIKit + +/// Required to link the iOS dependency of the BidMachine Adapter. +public class GmaMediationBidMachinePlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) {} + + public func detachFromEngine(for registrar: FlutterPluginRegistrar) {} +} diff --git a/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift b/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift new file mode 100644 index 000000000..593d39aae --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift @@ -0,0 +1,20 @@ +import Flutter +import UIKit + +public class GmaMediationBidmachinePlugin: NSObject, FlutterPlugin { + public static func register(with registrar: FlutterPluginRegistrar) { + let channel = FlutterMethodChannel( + name: "gma_mediation_bidmachine", binaryMessenger: registrar.messenger()) + let instance = GmaMediationBidmachinePlugin() + registrar.addMethodCallDelegate(instance, channel: channel) + } + + public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { + switch call.method { + case "getPlatformVersion": + result("iOS " + UIDevice.current.systemVersion) + default: + result(FlutterMethodNotImplemented) + } + } +} diff --git a/packages/mediation/gma_mediation_bidmachine/ios/Resources/PrivacyInfo.xcprivacy b/packages/mediation/gma_mediation_bidmachine/ios/Resources/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..a34b7e2e6 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/ios/Resources/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec b/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec new file mode 100644 index 000000000..7a5d5eb1e --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'gma_mediation_bidmachine' + s.version = '1.0.0' + s.summary = 'Google Mobile Ads Mediation of BidMachine.' + s.description = <<-DESC + Mediation Adapter for BidMachine to use with Google Mobile Ads. + DESC + s.homepage = 'https://developers.google.com/admob/flutter/mediation/bidmachine' + s.license = { :file => '../LICENSE' } + s.author = { 'Google LLC' => 'mediation-support@google.com' } + s.source = { :path => '.' } + s.source_files = 'Classes/**/*' + s.dependency 'Flutter' + s.dependency 'GoogleMobileAdsMediationBidMachine', '~> 3.4.0.0' + s.platform = :ios, '12.0' + s.static_framework = true + + s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } + s.swift_version = '5.0' + +end diff --git a/packages/mediation/gma_mediation_bidmachine/lib/gma_mediation_bidmachine.dart b/packages/mediation/gma_mediation_bidmachine/lib/gma_mediation_bidmachine.dart new file mode 100644 index 000000000..a9ccb64af --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/lib/gma_mediation_bidmachine.dart @@ -0,0 +1,16 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/// This empty class is needed to allow correct compatibility analysis with host platforms. +class GmaMediationBidMachine {} diff --git a/packages/mediation/gma_mediation_bidmachine/pubspec.lock b/packages/mediation/gma_mediation_bidmachine/pubspec.lock new file mode 100644 index 000000000..cbcb47510 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/pubspec.lock @@ -0,0 +1,261 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_mobile_ads: + dependency: "direct main" + description: + name: google_mobile_ads + sha256: a4f59019f2c32769fb6c60ed8aa321e9c21a36297e2c4f23452b3e779a3e7a26 + url: "https://pub.dev" + source: hosted + version: "6.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lint: + dependency: "direct dev" + description: + name: lint + sha256: "3cd03646de313481336500ba02eb34d07c590535525f154aae7fda7362aa07a9" + url: "https://pub.dev" + source: hosted + version: "2.8.0" + lints: + dependency: transitive + description: + name: lints + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 + url: "https://pub.dev" + source: hosted + version: "5.1.1" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + plugin_platform_interface: + dependency: "direct main" + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + url: "https://pub.dev" + source: hosted + version: "15.0.0" + webview_flutter: + dependency: transitive + description: + name: webview_flutter + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba + url: "https://pub.dev" + source: hosted + version: "4.13.0" + webview_flutter_android: + dependency: transitive + description: + name: webview_flutter_android + sha256: "0a42444056b24ed832bdf3442d65c5194f6416f7e782152384944053c2ecc9a3" + url: "https://pub.dev" + source: hosted + version: "4.10.0" + webview_flutter_platform_interface: + dependency: transitive + description: + name: webview_flutter_platform_interface + sha256: "63d26ee3aca7256a83ccb576a50272edd7cfc80573a4305caa98985feb493ee0" + url: "https://pub.dev" + source: hosted + version: "2.14.0" + webview_flutter_wkwebview: + dependency: transitive + description: + name: webview_flutter_wkwebview + sha256: fb46db8216131a3e55bcf44040ca808423539bc6732e7ed34fb6d8044e3d512f + url: "https://pub.dev" + source: hosted + version: "3.23.0" +sdks: + dart: ">=3.8.1 <4.0.0" + flutter: ">=3.27.0" diff --git a/packages/mediation/gma_mediation_bidmachine/pubspec.yaml b/packages/mediation/gma_mediation_bidmachine/pubspec.yaml new file mode 100644 index 000000000..70603b2e7 --- /dev/null +++ b/packages/mediation/gma_mediation_bidmachine/pubspec.yaml @@ -0,0 +1,26 @@ +name: gma_mediation_bidmachine +description: 'Mediation Adapter that enables sending ad requests to the BidMachine + ad network using the google_mobile_ads plugin.' +version: 1.0.0 +environment: + sdk: ^3.8.1 + flutter: '>=3.3.0' +dependencies: + flutter: + sdk: flutter + google_mobile_ads: ^6.0.0 + plugin_platform_interface: ^2.0.2 +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^5.0.0 + lint: ^2.8.0 +flutter: + plugin: + platforms: + android: + package: io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine + pluginClass: GmaMediationBidMachinePlugin + ios: + pluginClass: GmaMediationBidMachinePlugin +repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_bidmachine From 0374c653d84518c9b598d327d49f06c2156ef409 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 28 Aug 2025 08:06:40 -0700 Subject: [PATCH 272/318] Updating Mintegral Flutter adapter to version 1.2.4 PiperOrigin-RevId: 800471104 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index ad9ab781a..ccde08c54 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.4 (In progress) +#### Version 1.2.4 +- Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.3 - Supports [Mintegral Android adapter version 16.9.71.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169710). From 9c8c45f6c691370d277affb429469ee72eeba779 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 29 Aug 2025 11:23:43 -0700 Subject: [PATCH 273/318] Added BidMachine adapter dependencies to the gma_mediation_bidmachine Android build.gradle. PiperOrigin-RevId: 800968887 --- .../mediation/gma_mediation_bidmachine/android/build.gradle | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/mediation/gma_mediation_bidmachine/android/build.gradle b/packages/mediation/gma_mediation_bidmachine/android/build.gradle index 446d08d4d..c0f5f95ad 100644 --- a/packages/mediation/gma_mediation_bidmachine/android/build.gradle +++ b/packages/mediation/gma_mediation_bidmachine/android/build.gradle @@ -24,6 +24,10 @@ allprojects { apply plugin: "com.android.library" apply plugin: "kotlin-android" +ext { + stringVersion = "3.3.0.0" +} + android { namespace = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine" @@ -48,6 +52,8 @@ android { } dependencies { + implementation "com.google.ads.mediation:bidmachine:$stringVersion" + implementation 'com.google.android.gms:play-services-ads:24.4.0' testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") } From d927ac2eb5f9cfdeb64d5ff691eda951ca58fd84 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 2 Sep 2025 09:57:47 -0700 Subject: [PATCH 274/318] Update Line Flutter Adapter version to 1.0.4 PiperOrigin-RevId: 802185801 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 6f851239d..924fd8882 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,6 +1,9 @@ ## Line Flutter Mediation Adapter Changelog -#### Version 1.0.4 (In progress) +#### Version 1.0.4 +- Supports [Line Android adapter version 2.9.20250718.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202507180). +- Supports [Line iOS adapter version 2.9.20250512.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202505120). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.0.3 - Supports [Line Android adapter version 2.9.20250519.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202505190). From 1f32b3c5981fc100d4c5f64027bbe181e40e1344 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 3 Sep 2025 05:23:14 -0700 Subject: [PATCH 275/318] Updating Liftoff Monetize Flutter Adapter version to 1.2.3 PiperOrigin-RevId: 802511020 --- .../mediation/gma_mediation_liftoffmonetize/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md index da7221523..07810386a 100644 --- a/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md +++ b/packages/mediation/gma_mediation_liftoffmonetize/CHANGELOG.md @@ -1,6 +1,9 @@ ## Liftoff Monetize Flutter Mediation Adapter Changelog -#### Version 1.2.3 (In progress) +#### Version 1.2.3 +* Supports [Liftoff Monetize Android adapter version 7.5.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7510). +* Supports [Liftoff Monetize iOS adapter version 7.5.3.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/LiftoffMonetize/CHANGELOG.md#version-7530). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.2 * Supports [Liftoff Monetize Android adapter version 7.5.0.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/liftoffmonetize/CHANGELOG.md#version-7501). From 83c07cfbbdc6ab3c496c30f755cbac9036f99d55 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 3 Sep 2025 13:42:15 -0700 Subject: [PATCH 276/318] Updating DT Exchange Flutter mediation plugin's version to 1.1.5 in the mediation developer docs PiperOrigin-RevId: 802690607 --- packages/mediation/gma_mediation_dtexchange/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md index 60c050cfc..b0f4d079d 100644 --- a/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md +++ b/packages/mediation/gma_mediation_dtexchange/CHANGELOG.md @@ -1,6 +1,9 @@ ## DT Exchange Flutter Mediation Adapter Changelog -#### Version 1.1.5 (In progress) +#### Version 1.1.5 +* Supports [DT Exchange Android adapter version 8.3.8.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8380). +* Supports [DT Exchange iOS adapter version 8.3.8.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/DTExchange/CHANGELOG.md#version-8380). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.4 * Supports [DT Exchange Android adapter version 8.3.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/dtexchange/CHANGELOG.md#version-8370). From 40930a075bf8e8127dd21845658eac01889a0d84 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 4 Sep 2025 14:05:39 -0700 Subject: [PATCH 277/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.91.1, 7.7.9.0) PiperOrigin-RevId: 803167405 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mintegral/android/build.gradle | 4 ++-- .../ios/gma_mediation_mintegral.podspec | 2 +- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index ccde08c54..cc80fa0a3 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,7 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Version 1.2.5 (In progress) + #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). - Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index d646ce883..b0c075f4e 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.4" +version = "1.2.5" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "16.9.91.0" + stringVersion = "16.9.91.1" } android { diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index 478bc9145..cd232a870 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.4' + s.version = '1.2.5' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index 63e555b86..fef2d560c 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.4 +version: 1.2.5 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From 0965ab59628ded0448527cdaf4ca89f2db438ea6 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 15:04:55 -0700 Subject: [PATCH 278/318] Updating InMobi Flutter mediation plugin's version to 1.1.4 in the mediation developer docs. PiperOrigin-RevId: 803189609 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 6fcb3c8aa..8316e63bb 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,6 +1,9 @@ ## InMobi Flutter Mediation Adapter Changelog -#### Version 1.1.4 (In progress) +#### Version 1.1.4 +* Supports [inMobi Android adapter version 10.8.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10870). +* Supports [inMobi iOS adapter version 10.8.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10860). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.3 * Supports [inMobi Android adapter version 10.8.3.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10831). From 68f22c2c9f58377362b984ab8f053186c949ebd0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 15:17:33 -0700 Subject: [PATCH 279/318] Updating PubMatic Flutter mediation plugin's version to 1.1.0 in the mediation developer docs. PiperOrigin-RevId: 803194530 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index 317836255..4b542f836 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pubmatic Flutter Mediation Adapter Changelog -#### Version 1.1.0 (In progress) +#### Version 1.1.0 +- Supports [PubMatic Android adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4800). +- Supports [PubMatic iOS adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/PubMatic/CHANGELOG.md#version-4800). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.0.0 - Initial release. From 5e9fb498b7d5495fef67512b15182f787c1538e0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 15:26:00 -0700 Subject: [PATCH 280/318] Updating Moloco Flutter mediation plugin's version to 1.6.0 in the mediation developer docs. PiperOrigin-RevId: 803197631 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 850ddaeb6..854e4421b 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -2,7 +2,10 @@ #### Version 1.6.1 (In progress) -#### Version 1.6.0 (In progress) +#### Version 1.6.0 +- Supports [Moloco Android adapter version 3.12.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31200). +- Supports [Moloco iOS adapter version 3.12.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31200). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.5.0 - Supports [Moloco Android adapter version 3.11.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31100). From acb10929b46babdf41289a2da705d674885eb0d1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 15:27:19 -0700 Subject: [PATCH 281/318] Updating BidMachine Flutter mediation plugin for initial release version 1.0.0 in the mediation developer docs. PiperOrigin-RevId: 803198161 --- packages/mediation/gma_mediation_bidmachine/CHANGELOG.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md index 762aef3d9..f0fddf7c3 100644 --- a/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md +++ b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md @@ -1,8 +1,7 @@ ## BidMachine Flutter Mediation Adapter Changelog #### 1.0.0 - -* Initial release. -* Verified compatibility with BidMachine Android adapter version 3.3.0.0 -* Verified compatibility with BidMachine iOS adapter version 3.4.0.0 -* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. +- Initial release. +- Supports [BidMachine Android adapter version 3.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/bidmachine/CHANGELOG.md#version-3300). +- Supports [BidMachine iOS adapter version 3.4.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/BidMachine/CHANGELOG.md#version-3400). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. From 6fb696b92d6be2b8de882dfaedd7f5c807287af4 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 15:36:53 -0700 Subject: [PATCH 282/318] Updating Mintegral Flutter adapter to version 1.2.5 PiperOrigin-RevId: 803201458 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cc80fa0a3..4eeeb4f61 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 (In progress) +#### Version 1.2.5 +- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 2402fce71614054f31d4753a5bc0e76b66b5967d Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Thu, 4 Sep 2025 15:57:42 -0700 Subject: [PATCH 283/318] Internal Change PiperOrigin-RevId: 803208667 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 4eeeb4f61..cc80fa0a3 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,9 +1,6 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 -- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). -- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). -- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 +#### Version 1.2.5 (In progress) #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From c9618c024cf2ff104d69c130e914cf99176ed0e5 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 4 Sep 2025 16:13:19 -0700 Subject: [PATCH 284/318] Updating Mintegral Flutter adapter to version 1.2.5 PiperOrigin-RevId: 803214262 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cc80fa0a3..4eeeb4f61 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 (In progress) +#### Version 1.2.5 +- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 6a9881fcb1c42bb2d643e7de092fcece64b11475 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 5 Sep 2025 11:42:55 -0700 Subject: [PATCH 285/318] Internal change PiperOrigin-RevId: 803543917 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 4eeeb4f61..cc80fa0a3 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,9 +1,6 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 -- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). -- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). -- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 +#### Version 1.2.5 (In progress) #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 34e626c41bd0f327c4abb9c81f64027a8a14b932 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Fri, 5 Sep 2025 12:04:24 -0700 Subject: [PATCH 286/318] Updating Mintegral Flutter adapter to version 1.2.5 PiperOrigin-RevId: 803551879 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cc80fa0a3..4eeeb4f61 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 (In progress) +#### Version 1.2.5 +- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 82c58b3202d8b9391e4d3ec39b045032e90cf331 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 5 Sep 2025 12:28:17 -0700 Subject: [PATCH 287/318] Internal change PiperOrigin-RevId: 803560717 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 4eeeb4f61..cc80fa0a3 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,9 +1,6 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 -- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). -- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). -- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 +#### Version 1.2.5 (In progress) #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 42d5bc05c7a6a8aace72850bdd2dbd399c4ff462 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 8 Sep 2025 09:26:17 -0700 Subject: [PATCH 288/318] Updating PubMatic Flutter mediation plugin to support the latest adapters (4.8.0.0, 4.8.1.0) PiperOrigin-RevId: 804463692 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_pubmatic/android/build.gradle | 2 +- .../gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec | 4 ++-- packages/mediation/gma_mediation_pubmatic/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index 4b542f836..c35d63654 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pubmatic Flutter Mediation Adapter Changelog +#### Version 1.1.1 (In progress) + #### Version 1.1.0 - Supports [PubMatic Android adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4800). - Supports [PubMatic iOS adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/PubMatic/CHANGELOG.md#version-4800). diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index 25e2f9af4..e415d5c95 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" -version = "1.1.0" +version = "1.1.1" buildscript { ext.kotlin_version = "2.1.0" diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec index 55a8b32b7..067e94573 100644 --- a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_pubmatic' - s.version = '1.1.0' + s.version = '1.1.1' s.summary = 'Google Mobile Ads Mediation of Pubmatic.' s.description = <<-DESC Mediation Adapter for Pubmatic to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPubMatic', '~> 4.8.0.0' + s.dependency 'GoogleMobileAdsMediationPubMatic', '~> 4.8.1.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml index 2e2316fde..f80762f83 100644 --- a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_pubmatic description: 'Mediation Adapter that enables sending ad requests to the Pubmatic ad network using the google_mobile_ads plugin.' -version: 1.1.0 +version: 1.1.1 environment: sdk: ^3.8.1 flutter: '>=3.3.0' From 3e16d680b061e8c99af3b95c5e2a898dd6ad1da1 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 8 Sep 2025 09:26:34 -0700 Subject: [PATCH 289/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.5.0.3.0, 7.5.0.7.0) PiperOrigin-RevId: 804463765 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 61a03d1b2..302239f18 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.3.1 (In progress) + #### Version 3.3.0 (In progress) #### Version 3.2.1 diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index ae2154584..d46920651 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.3.0" +version = "3.3.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.5.0.2.0" + stringVersion = "7.5.0.3.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index e42b5d469..c9cc495be 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.3.0' + s.version = '3.3.1' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.5.0.5.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.5.0.7.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 51bec97fe..4a308cf86 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.3.0 +version: 3.3.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 1f41dc925a7a6a04a5da8a22e46d2fe46d2c0256 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 8 Sep 2025 09:27:51 -0700 Subject: [PATCH 290/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.9.3.0, 9.9.2.0) PiperOrigin-RevId: 804464205 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 2 +- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index c280fdf77..9adc6059b 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,5 +1,7 @@ ## Chartboost Flutter Mediation Adapter Changelog +#### Version 1.2.2 (In progress) + #### Version 1.2.1 - Supports [Chartboost Android adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9920). - Supports [Charboost iOS adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-9920). diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index d9dfc586d..7ea5ad6b1 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.2.1" +version = "1.2.2" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.9.2.0" + stringVersion = "9.9.3.0" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index a146fdd68..b7c08c476 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.2.1' + s.version = '1.2.2' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 861d1598b..3dc5a502f 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.2.1 +version: 1.2.2 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From f653e96590d00d578b632915662647d77bd9d33a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 8 Sep 2025 09:57:09 -0700 Subject: [PATCH 291/318] Updating Moloco Flutter mediation plugin to support the latest adapters (4.0.0.0, 3.13.0.0) PiperOrigin-RevId: 804475720 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_moloco/android/build.gradle | 4 ++-- .../gma_mediation_moloco/ios/gma_mediation_moloco.podspec | 4 ++-- packages/mediation/gma_mediation_moloco/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 854e4421b..9f1bcb582 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -1,5 +1,7 @@ ## Moloco Flutter Mediation Adapter Changelog +#### Version 2.0.0 (In progress) + #### Version 1.6.1 (In progress) #### Version 1.6.0 diff --git a/packages/mediation/gma_mediation_moloco/android/build.gradle b/packages/mediation/gma_mediation_moloco/android/build.gradle index 49183e692..a8c5933f7 100644 --- a/packages/mediation/gma_mediation_moloco/android/build.gradle +++ b/packages/mediation/gma_mediation_moloco/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_moloco" -version = "1.6.1" +version = "2.0.0" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "3.12.1.0" + stringVersion = "4.0.0.0" } android { diff --git a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec index 678764d1c..60e73a2dc 100644 --- a/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec +++ b/packages/mediation/gma_mediation_moloco/ios/gma_mediation_moloco.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_moloco' - s.version = '1.6.1' + s.version = '2.0.0' s.summary = 'Google Mobile Ads Mediation of Moloco.' s.description = <<-DESC Mediation Adapter for Moloco to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.12.1.0' + s.dependency 'GoogleMobileAdsMediationMoloco', '~> 3.13.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_moloco/pubspec.yaml b/packages/mediation/gma_mediation_moloco/pubspec.yaml index 88a7b461e..d54d3c86c 100644 --- a/packages/mediation/gma_mediation_moloco/pubspec.yaml +++ b/packages/mediation/gma_mediation_moloco/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_moloco description: 'Mediation Adapter that enables sending ad requests to the Moloco ad network using the google_mobile_ads plugin.' -version: 1.6.1 +version: 2.0.0 environment: sdk: ^3.6.2 flutter: '>=3.27.0' From bab4c776b79cf425b905c84128bc8af261259a53 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 8 Sep 2025 09:58:56 -0700 Subject: [PATCH 292/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.11.0.0, 8.11.0.0.0) PiperOrigin-RevId: 804476401 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 4 ++-- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 615e1f678..692cd38a4 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.6.0 (In progress) + #### Version 1.5.0 - Supports [ironSource Android adapter version 8.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-81000). - Supports [ironSource iOS adapter version 8.10.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-810000). diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 7e57b99a8..6904eb780 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.5.0" +version = "1.6.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.10.0.0" + stringVersion = "8.11.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index c3d97605d..9b3951e16 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.5.0' + s.version = '1.6.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.10.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.11.0.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 25dff90ca..e7ded1336 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.5.0 +version: 1.6.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From 926d91b6a6e7dfe5aad90b030d500986efcfee32 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 9 Sep 2025 09:01:31 -0700 Subject: [PATCH 293/318] Update Pangle Flutter Adapter version to 3.3.0 PiperOrigin-RevId: 804934109 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 302239f18..f0c4c415f 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -3,6 +3,9 @@ #### Version 3.3.1 (In progress) #### Version 3.3.0 (In progress) +- Supports [Pangle Android adapter version 7.5.0.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-75020). +- Supports [Pangle iOS adapter version 7.5.0.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-75050). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.2.1 - Supports [Pangle Android adapter version 7.3.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73050). From 515b4bc7a6771b1a4e41a653f336b71c7d3eeb20 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 9 Sep 2025 09:19:07 -0700 Subject: [PATCH 294/318] Updating Unity Ads Flutter Adapter version to 1.6.1 PiperOrigin-RevId: 804940470 --- packages/mediation/gma_mediation_unity/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_unity/CHANGELOG.md b/packages/mediation/gma_mediation_unity/CHANGELOG.md index 554ce8ae0..5ef4b74f3 100644 --- a/packages/mediation/gma_mediation_unity/CHANGELOG.md +++ b/packages/mediation/gma_mediation_unity/CHANGELOG.md @@ -1,6 +1,9 @@ ## Unity Ads Flutter Mediation Adapter Changelog -#### Version 1.6.1 (In progress) +#### Version 1.6.1 +- Supports [Unity Android adapter version 4.16.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/unity/CHANGELOG.md#version-41610). +- Supports [Unity iOS adapter version 4.16.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Unity/CHANGELOG.md#version-41610). +* Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.6.0 - Now requires minimum iOS version 13.0. From 0b81fa77fece5fd6a6d8cd95fb964a2770a55242 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 9 Sep 2025 10:32:41 -0700 Subject: [PATCH 295/318] Updating Mintegral Flutter adapter to version 1.2.5 PiperOrigin-RevId: 804969448 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cc80fa0a3..4eeeb4f61 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 (In progress) +#### Version 1.2.5 +- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From 5148dce97d429f1c16f9aef8e15f8105edf3af3f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 10 Sep 2025 15:59:25 -0700 Subject: [PATCH 296/318] Internal change. PiperOrigin-RevId: 805550142 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index 4eeeb4f61..cc80fa0a3 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,9 +1,6 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 -- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). -- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). -- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0 +#### Version 1.2.5 (In progress) #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From c3f68ff680e34396dab58f0e07dd2252f644b893 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Wed, 10 Sep 2025 16:16:46 -0700 Subject: [PATCH 297/318] Updating Mintegral Flutter adapter to version 1.2.5 PiperOrigin-RevId: 805556604 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index cc80fa0a3..c02cd4740 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,6 +1,9 @@ ## Mintegral Flutter Mediation Adapter Changelog -#### Version 1.2.5 (In progress) +#### Version 1.2.5 +- Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). +- Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.4 - Supports [Mintegral Android adapter version 16.9.91.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169910). From d7fdde61dd8ca52a93c42662353c45e8d03800d0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 23 Sep 2025 11:30:10 -0700 Subject: [PATCH 298/318] Updating BidMachine Flutter mediation plugin to support the latest adapters (3.3.0.0, 3.4.0.1) PiperOrigin-RevId: 810515084 --- packages/mediation/gma_mediation_bidmachine/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_bidmachine/android/build.gradle | 2 +- .../ios/gma_mediation_bidmachine.podspec | 4 ++-- packages/mediation/gma_mediation_bidmachine/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md index f0fddf7c3..ec6c1e6f7 100644 --- a/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md +++ b/packages/mediation/gma_mediation_bidmachine/CHANGELOG.md @@ -1,5 +1,7 @@ ## BidMachine Flutter Mediation Adapter Changelog +#### Version 1.0.1 (In progress) + #### 1.0.0 - Initial release. - Supports [BidMachine Android adapter version 3.3.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/bidmachine/CHANGELOG.md#version-3300). diff --git a/packages/mediation/gma_mediation_bidmachine/android/build.gradle b/packages/mediation/gma_mediation_bidmachine/android/build.gradle index c0f5f95ad..06136fc08 100644 --- a/packages/mediation/gma_mediation_bidmachine/android/build.gradle +++ b/packages/mediation/gma_mediation_bidmachine/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine" -version = "1.0.0" +version = "1.0.1" buildscript { ext.kotlin_version = "2.1.0" diff --git a/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec b/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec index 7a5d5eb1e..c0faf0471 100644 --- a/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec +++ b/packages/mediation/gma_mediation_bidmachine/ios/gma_mediation_bidmachine.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_bidmachine' - s.version = '1.0.0' + s.version = '1.0.1' s.summary = 'Google Mobile Ads Mediation of BidMachine.' s.description = <<-DESC Mediation Adapter for BidMachine to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationBidMachine', '~> 3.4.0.0' + s.dependency 'GoogleMobileAdsMediationBidMachine', '~> 3.4.0.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_bidmachine/pubspec.yaml b/packages/mediation/gma_mediation_bidmachine/pubspec.yaml index 70603b2e7..ed756ca68 100644 --- a/packages/mediation/gma_mediation_bidmachine/pubspec.yaml +++ b/packages/mediation/gma_mediation_bidmachine/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_bidmachine description: 'Mediation Adapter that enables sending ad requests to the BidMachine ad network using the google_mobile_ads plugin.' -version: 1.0.0 +version: 1.0.1 environment: sdk: ^3.8.1 flutter: '>=3.3.0' From 857753ace0c6a4852f9789b391ae39f9b07d82af Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 23 Sep 2025 11:37:03 -0700 Subject: [PATCH 299/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.9.3.0, 9.9.3.0) PiperOrigin-RevId: 810519445 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_chartboost/android/build.gradle | 2 +- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index 9adc6059b..d401dae51 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,5 +1,7 @@ ## Chartboost Flutter Mediation Adapter Changelog +#### Version 1.2.3 (In progress) + #### Version 1.2.2 (In progress) #### Version 1.2.1 diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 7ea5ad6b1..4ebc05289 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.2.2" +version = "1.2.3" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index b7c08c476..2b910eb08 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.2.2' + s.version = '1.2.3' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.2.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.3.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 3dc5a502f..0f0bdbfc8 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.2.2 +version: 1.2.3 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From c26d761373ecc3f70f6b16dcb1d7913c5762ddbe Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 23 Sep 2025 11:37:19 -0700 Subject: [PATCH 300/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.6.0.2.0, 7.6.0.4.0) PiperOrigin-RevId: 810519563 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index f0c4c415f..8fa3971a5 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,5 +1,7 @@ ## Pangle Flutter Mediation Adapter Changelog +#### Version 3.4.0 (In progress) + #### Version 3.3.1 (In progress) #### Version 3.3.0 (In progress) diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index d46920651..dcc804c83 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.3.1" +version = "3.4.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.5.0.3.0" + stringVersion = "7.6.0.2.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index c9cc495be..2ee1b6842 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.3.1' + s.version = '3.4.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.5.0.7.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.6.0.4.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 4a308cf86..9bf8ccee0 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.3.1 +version: 3.4.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From a7deec89cf49ca5169f64b3e0d99b4926028ea4f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Tue, 23 Sep 2025 11:39:33 -0700 Subject: [PATCH 301/318] Updating MyTarget Flutter mediation plugin to support the latest adapters (5.27.2.0, 5.35.0.0) PiperOrigin-RevId: 810520523 --- packages/mediation/gma_mediation_mytarget/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mytarget/android/build.gradle | 2 +- .../gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec | 4 ++-- packages/mediation/gma_mediation_mytarget/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md index 93e774181..fb57b0a5f 100644 --- a/packages/mediation/gma_mediation_mytarget/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mytarget/CHANGELOG.md @@ -1,5 +1,7 @@ ## myTarget Flutter Mediation Adapter Changelog +#### Version 1.5.0 (In progress) + #### Version 1.4.0 * Supports [myTarget Android adapter version 5.27.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mytarget/CHANGELOG.md#version-52720). * Supports [myTarget iOS adapter version 5.33.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/MyTarget/CHANGELOG.md#version-53300). diff --git a/packages/mediation/gma_mediation_mytarget/android/build.gradle b/packages/mediation/gma_mediation_mytarget/android/build.gradle index 5327d13d6..6454ac4b4 100644 --- a/packages/mediation/gma_mediation_mytarget/android/build.gradle +++ b/packages/mediation/gma_mediation_mytarget/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_mytarget" -version = "1.4.0" +version = "1.5.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec index 5774b6a92..9a36aeadd 100644 --- a/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec +++ b/packages/mediation/gma_mediation_mytarget/ios/gma_mediation_mytarget.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_mytarget' - s.version = '1.4.0' + s.version = '1.5.0' s.summary = 'Google Mobile Ads Mediation of mytarget.' s.description = <<-DESC Mediation Adapter for mytarget to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.33.0.0' + s.dependency 'GoogleMobileAdsMediationMyTarget', '~>5.35.0.0' s.platform = :ios, '12.4' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mytarget/pubspec.yaml b/packages/mediation/gma_mediation_mytarget/pubspec.yaml index 890e36e9c..05f7e2af1 100644 --- a/packages/mediation/gma_mediation_mytarget/pubspec.yaml +++ b/packages/mediation/gma_mediation_mytarget/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_mytarget description: 'Mediation Adapter that enables sending ad requests to the mytarget ad network using the google_mobile_ads plugin.' -version: 1.4.0 +version: 1.5.0 environment: sdk: ^3.7.0 flutter: '>=3.27.0' From 05599141273b085c5f08a88507cc480fb6507b4f Mon Sep 17 00:00:00 2001 From: Thanvir Mohamed Date: Thu, 25 Sep 2025 10:13:02 -0700 Subject: [PATCH 302/318] Updating AppLovin Flutter mediation plugin to support the latest adapters (13.4.0.0, 13.4.0.0) PiperOrigin-RevId: 811398869 --- packages/mediation/gma_mediation_applovin/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_applovin/android/build.gradle | 4 ++-- .../gma_mediation_applovin/ios/gma_mediation_applovin.podspec | 4 ++-- packages/mediation/gma_mediation_applovin/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_applovin/CHANGELOG.md b/packages/mediation/gma_mediation_applovin/CHANGELOG.md index 08eb64e90..43f2fd1b4 100644 --- a/packages/mediation/gma_mediation_applovin/CHANGELOG.md +++ b/packages/mediation/gma_mediation_applovin/CHANGELOG.md @@ -1,5 +1,7 @@ ## AppLovin Flutter Mediation Adapter Changelog +#### Version 2.4.0 (In progress) + #### Version 2.3.2 - Supports [AppLovin Android adapter version 13.3.1.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/applovin/CHANGELOG.md#version-13311). - Supports [AppLovin iOS adapter version 13.3.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/AppLovin/CHANGELOG.md#version-13310). diff --git a/packages/mediation/gma_mediation_applovin/android/build.gradle b/packages/mediation/gma_mediation_applovin/android/build.gradle index eacfeb432..c33988199 100644 --- a/packages/mediation/gma_mediation_applovin/android/build.gradle +++ b/packages/mediation/gma_mediation_applovin/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_applovin' -version = "2.3.2" +version = "2.4.0" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "13.3.1.1" + stringVersion = "13.4.0.0" } android { diff --git a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec index fb0063714..90fb3fd72 100644 --- a/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec +++ b/packages/mediation/gma_mediation_applovin/ios/gma_mediation_applovin.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_applovin' - s.version = '2.3.2' + s.version = '2.4.0' s.summary = 'Google Mobile Ads Mediation of AppLovin.' s.description = <<-DESC Mediation Adapter for AppLovin to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for AppLovin to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.3.1.0' + s.dependency 'GoogleMobileAdsMediationAppLovin', '~> 13.4.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_applovin/pubspec.yaml b/packages/mediation/gma_mediation_applovin/pubspec.yaml index 024be4dd2..bf72b88ca 100644 --- a/packages/mediation/gma_mediation_applovin/pubspec.yaml +++ b/packages/mediation/gma_mediation_applovin/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_applovin description: "Mediation Adapter that enables sending ad requests to the AppLovin ad network using the google_mobile_ads plugin." -version: 2.3.2 +version: 2.4.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_applovin environment: From 86281a2f192a730785f87efdd15df50dddc8f41d Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 25 Sep 2025 10:58:38 -0700 Subject: [PATCH 303/318] Updating IronSource Flutter mediation plugin to support the latest adapters (8.11.1.0, 8.11.0.0.0) PiperOrigin-RevId: 811418529 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_ironsource/android/build.gradle | 4 ++-- .../ios/gma_mediation_ironsource.podspec | 2 +- packages/mediation/gma_mediation_ironsource/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index 692cd38a4..d0d4a2e4a 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,5 +1,7 @@ ## ironSource Flutter Mediation Adapter Changelog +#### Version 1.6.1 (In progress) + #### Version 1.6.0 (In progress) #### Version 1.5.0 diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index 6904eb780..af9a57387 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.6.0" +version = "1.6.1" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.11.0.0" + stringVersion = "8.11.1.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index 9b3951e16..d59a6b072 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.6.0' + s.version = '1.6.1' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index e7ded1336..36b59be64 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.6.0 +version: 1.6.1 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From dbeec437e8cee27422e340797ee91d2f7437a39a Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 3 Oct 2025 12:08:32 -0700 Subject: [PATCH 304/318] Remove Bidmachine plugin unnecessary files. PiperOrigin-RevId: 814781308 --- .../GmaMediationBidmachinePlugin.kt | 33 ------------------- .../GmaMediationBidmachinePlugin.swift | 20 ----------- 2 files changed, 53 deletions(-) delete mode 100644 packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt delete mode 100644 packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift diff --git a/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt b/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt deleted file mode 100644 index d7a323e2d..000000000 --- a/packages/mediation/gma_mediation_bidmachine/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_bidmachine/GmaMediationBidmachinePlugin.kt +++ /dev/null @@ -1,33 +0,0 @@ -package io.flutter.plugins.googlemobileads.mediation.gma_mediation_bidmachine - -import io.flutter.embedding.engine.plugins.FlutterPlugin -import io.flutter.plugin.common.MethodCall -import io.flutter.plugin.common.MethodChannel -import io.flutter.plugin.common.MethodChannel.MethodCallHandler -import io.flutter.plugin.common.MethodChannel.Result - -/** GmaMediationBidmachinePlugin */ -class GmaMediationBidmachinePlugin : FlutterPlugin, MethodCallHandler { - /// The MethodChannel that will the communication between Flutter and native Android - /// - /// This local reference serves to register the plugin with the Flutter Engine and unregister it - /// when the Flutter Engine is detached from the Activity - private lateinit var channel: MethodChannel - - override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { - channel = MethodChannel(flutterPluginBinding.binaryMessenger, "gma_mediation_bidmachine") - channel.setMethodCallHandler(this) - } - - override fun onMethodCall(call: MethodCall, result: Result) { - if (call.method == "getPlatformVersion") { - result.success("Android ${android.os.Build.VERSION.RELEASE}") - } else { - result.notImplemented() - } - } - - override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) { - channel.setMethodCallHandler(null) - } -} diff --git a/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift b/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift deleted file mode 100644 index 593d39aae..000000000 --- a/packages/mediation/gma_mediation_bidmachine/ios/Classes/GmaMediationBidmachinePlugin.swift +++ /dev/null @@ -1,20 +0,0 @@ -import Flutter -import UIKit - -public class GmaMediationBidmachinePlugin: NSObject, FlutterPlugin { - public static func register(with registrar: FlutterPluginRegistrar) { - let channel = FlutterMethodChannel( - name: "gma_mediation_bidmachine", binaryMessenger: registrar.messenger()) - let instance = GmaMediationBidmachinePlugin() - registrar.addMethodCallDelegate(instance, channel: channel) - } - - public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - switch call.method { - case "getPlatformVersion": - result("iOS " + UIDevice.current.systemVersion) - default: - result(FlutterMethodNotImplemented) - } - } -} From 5eeaa6525ddb541d791a350e614cae847aef318c Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 6 Oct 2025 11:52:53 -0700 Subject: [PATCH 305/318] Updating Meta Flutter mediation plugin to support the latest adapters (6.20.0.1, 6.20.1.0) PiperOrigin-RevId: 815824142 --- packages/mediation/gma_mediation_meta/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_meta/android/build.gradle | 4 ++-- .../gma_mediation_meta/ios/gma_mediation_meta.podspec | 2 +- packages/mediation/gma_mediation_meta/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_meta/CHANGELOG.md b/packages/mediation/gma_mediation_meta/CHANGELOG.md index 151a9b1f5..ab5e8f545 100644 --- a/packages/mediation/gma_mediation_meta/CHANGELOG.md +++ b/packages/mediation/gma_mediation_meta/CHANGELOG.md @@ -1,5 +1,7 @@ ## Meta Audience Network Flutter Mediation Adapter Changelog +#### Version 1.4.2 (In progress) + #### Version 1.4.1 * Supports [Meta Audience Network Android adapter version 6.20.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/meta/CHANGELOG.md#version-62000). * Supports [Meta Audience Network iOS adapter version 6.20.1.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Meta/CHANGELOG.md#version-62010). diff --git a/packages/mediation/gma_mediation_meta/android/build.gradle b/packages/mediation/gma_mediation_meta/android/build.gradle index 7c8fed1fd..c291deb96 100644 --- a/packages/mediation/gma_mediation_meta/android/build.gradle +++ b/packages/mediation/gma_mediation_meta/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_meta' -version = "1.4.1" +version = "1.4.2" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "6.20.0.0" + stringVersion = "6.20.0.1" } android { diff --git a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec index af0ebe678..2c51ce2ac 100644 --- a/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec +++ b/packages/mediation/gma_mediation_meta/ios/gma_mediation_meta.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_meta' - s.version = '1.4.1' + s.version = '1.4.2' s.summary = 'Google Mobile Ads Mediation of Meta Audience Network.' s.description = <<-DESC Mediation Adapter for Meta Audience Network to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_meta/pubspec.yaml b/packages/mediation/gma_mediation_meta/pubspec.yaml index a39dae3ac..c053f5e19 100644 --- a/packages/mediation/gma_mediation_meta/pubspec.yaml +++ b/packages/mediation/gma_mediation_meta/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_meta description: "Mediation Adapter that enables sending ad requests to the Meta Audience Network ad network using the google_mobile_ads plugin." -version: 1.4.1 +version: 1.4.2 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_meta environment: From b3b1d4e7094a937c80b2ae47abfeaa5cbd3de75a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 6 Oct 2025 11:53:57 -0700 Subject: [PATCH 306/318] Updating InMobi Flutter mediation plugin to support the latest adapters (10.8.8.0, 10.8.8.0) PiperOrigin-RevId: 815824577 --- packages/mediation/gma_mediation_inmobi/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_inmobi/android/build.gradle | 4 ++-- .../gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec | 4 ++-- packages/mediation/gma_mediation_inmobi/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md index 8316e63bb..d1fb9ee47 100644 --- a/packages/mediation/gma_mediation_inmobi/CHANGELOG.md +++ b/packages/mediation/gma_mediation_inmobi/CHANGELOG.md @@ -1,5 +1,7 @@ ## InMobi Flutter Mediation Adapter Changelog +#### Version 1.1.5 (In progress) + #### Version 1.1.4 * Supports [inMobi Android adapter version 10.8.7.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/inmobi/CHANGELOG.md#version-10870). * Supports [inMobi iOS adapter version 10.8.6.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/InMobi/CHANGELOG.md#version-10860). diff --git a/packages/mediation/gma_mediation_inmobi/android/build.gradle b/packages/mediation/gma_mediation_inmobi/android/build.gradle index 471c92a4c..213e4f85e 100644 --- a/packages/mediation/gma_mediation_inmobi/android/build.gradle +++ b/packages/mediation/gma_mediation_inmobi/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_inmobi' -version = "1.1.4" +version = "1.1.5" buildscript { ext.kotlin_version = '2.0.21' @@ -25,7 +25,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "10.8.7.0" + stringVersion = "10.8.8.0" } android { diff --git a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec index d56da0aee..734a7beba 100644 --- a/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec +++ b/packages/mediation/gma_mediation_inmobi/ios/gma_mediation_inmobi.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_inmobi' - s.version = '1.1.4' + s.version = '1.1.5' s.summary = 'Google Mobile Ads Mediation of InMobi.' s.description = <<-DESC Mediation Adapter for InMobi to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for InMobi to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.6.0' + s.dependency 'GoogleMobileAdsMediationInMobi', '~> 10.8.8.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_inmobi/pubspec.yaml b/packages/mediation/gma_mediation_inmobi/pubspec.yaml index ce2ea0548..e275f2304 100644 --- a/packages/mediation/gma_mediation_inmobi/pubspec.yaml +++ b/packages/mediation/gma_mediation_inmobi/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_inmobi description: "Mediation Adapter that enables sending ad requests to the InMobi ad network using the google_mobile_ads plugin." -version: 1.1.4 +version: 1.1.5 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_inmobi environment: From f0e36a09dce2078b6616368ec61a9e9bdb56bcaf Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 6 Oct 2025 12:29:25 -0700 Subject: [PATCH 307/318] Updating Line Flutter mediation plugin to support the latest adapters (2.9.20250924.0, 2.9.20250912.0) PiperOrigin-RevId: 815838777 --- packages/mediation/gma_mediation_line/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_line/android/build.gradle | 4 ++-- .../gma_mediation_line/ios/gma_mediation_line.podspec | 4 ++-- packages/mediation/gma_mediation_line/pubspec.yaml | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_line/CHANGELOG.md b/packages/mediation/gma_mediation_line/CHANGELOG.md index 924fd8882..66b3c4685 100644 --- a/packages/mediation/gma_mediation_line/CHANGELOG.md +++ b/packages/mediation/gma_mediation_line/CHANGELOG.md @@ -1,5 +1,7 @@ ## Line Flutter Mediation Adapter Changelog +#### Version 1.0.5 (In progress) + #### Version 1.0.4 - Supports [Line Android adapter version 2.9.20250718.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/line/CHANGELOG.md#version-29202507180). - Supports [Line iOS adapter version 2.9.20250512.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Line/CHANGELOG.md#version-29202505120). diff --git a/packages/mediation/gma_mediation_line/android/build.gradle b/packages/mediation/gma_mediation_line/android/build.gradle index 91cf9d8f9..696ab19a4 100644 --- a/packages/mediation/gma_mediation_line/android/build.gradle +++ b/packages/mediation/gma_mediation_line/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_line" -version = "1.0.4" +version = "1.0.5" buildscript { ext.kotlin_version = "1.8.22" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "2.9.20250718.0" + stringVersion = "2.9.20250924.0" } android { diff --git a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec index 06555935a..f44771815 100644 --- a/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec +++ b/packages/mediation/gma_mediation_line/ios/gma_mediation_line.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_line' - s.version = '1.0.4' + s.version = '1.0.5' s.summary = 'Google Mobile Ads Mediation of Line.' s.description = <<-DESC Mediation Adapter for Line to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20250512.0' + s.dependency 'GoogleMobileAdsMediationLine', '~>2.9.20250912.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_line/pubspec.yaml b/packages/mediation/gma_mediation_line/pubspec.yaml index 1d464c232..5973aa808 100644 --- a/packages/mediation/gma_mediation_line/pubspec.yaml +++ b/packages/mediation/gma_mediation_line/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_line description: 'Mediation Adapter that enables sending ad requests to the Line ad network using the google_mobile_ads plugin.' -version: 1.0.4 +version: 1.0.5 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From c03783b240cd2201459ce199012a1b78a4049c4a Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 6 Oct 2025 12:31:33 -0700 Subject: [PATCH 308/318] Updating Mintegral Flutter mediation plugin to support the latest adapters (16.9.91.1, 7.7.9.1) PiperOrigin-RevId: 815839499 --- packages/mediation/gma_mediation_mintegral/CHANGELOG.md | 2 ++ .../mediation/gma_mediation_mintegral/android/build.gradle | 2 +- .../ios/gma_mediation_mintegral.podspec | 4 ++-- packages/mediation/gma_mediation_mintegral/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md index c02cd4740..9416ee74e 100644 --- a/packages/mediation/gma_mediation_mintegral/CHANGELOG.md +++ b/packages/mediation/gma_mediation_mintegral/CHANGELOG.md @@ -1,5 +1,7 @@ ## Mintegral Flutter Mediation Adapter Changelog +#### Version 1.2.6 (In progress) + #### Version 1.2.5 - Supports [Mintegral Android adapter version 16.9.91.1](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/mintegral/CHANGELOG.md#version-169911). - Supports [Mintegral iOS adapter version 7.7.9.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Mintegral/CHANGELOG.md#version-7790). diff --git a/packages/mediation/gma_mediation_mintegral/android/build.gradle b/packages/mediation/gma_mediation_mintegral/android/build.gradle index b0c075f4e..e5fbd23c6 100644 --- a/packages/mediation/gma_mediation_mintegral/android/build.gradle +++ b/packages/mediation/gma_mediation_mintegral/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_mintegral' -version = "1.2.5" +version = "1.2.6" buildscript { ext.kotlin_version = '2.0.21' diff --git a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec index cd232a870..5839741a2 100644 --- a/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec +++ b/packages/mediation/gma_mediation_mintegral/ios/gma_mediation_mintegral.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_mintegral' - s.version = '1.2.5' + s.version = '1.2.6' s.summary = 'Google Mobile Ads Mediation of Mintegral.' s.description = <<-DESC Mediation Adapter for Mintegral to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for Mintegral to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.9.0' + s.dependency 'GoogleMobileAdsMediationMintegral', '~>7.7.9.1' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_mintegral/pubspec.yaml b/packages/mediation/gma_mediation_mintegral/pubspec.yaml index fef2d560c..b3e4f4578 100644 --- a/packages/mediation/gma_mediation_mintegral/pubspec.yaml +++ b/packages/mediation/gma_mediation_mintegral/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_mintegral description: "Mediation Adapter that enables sending ad requests to the Mintegral ad network using the google_mobile_ads plugin." -version: 1.2.5 +version: 1.2.6 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_mintegral environment: From 714dd680ddf2407bdcc1e0375ef017b662023673 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Fri, 10 Oct 2025 13:23:37 -0700 Subject: [PATCH 309/318] Updated Moloco CHANGELOG for 2.0.0 release PiperOrigin-RevId: 817766330 --- packages/mediation/gma_mediation_moloco/CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/mediation/gma_mediation_moloco/CHANGELOG.md b/packages/mediation/gma_mediation_moloco/CHANGELOG.md index 9f1bcb582..3821e74c5 100644 --- a/packages/mediation/gma_mediation_moloco/CHANGELOG.md +++ b/packages/mediation/gma_mediation_moloco/CHANGELOG.md @@ -2,8 +2,6 @@ #### Version 2.0.0 (In progress) -#### Version 1.6.1 (In progress) - #### Version 1.6.0 - Supports [Moloco Android adapter version 3.12.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/moloco/CHANGELOG.md#version-31200). - Supports [Moloco iOS adapter version 3.12.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Moloco/CHANGELOG.md#version-31200). From c124b7b8d8801b4483c3b08d84d15f5d523264c5 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 13 Oct 2025 09:24:21 -0700 Subject: [PATCH 310/318] Updating Chartboost Flutter mediation plugin to support the latest adapters (9.10.0.0, 9.10.0.0) PiperOrigin-RevId: 818696082 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 4 +--- .../mediation/gma_mediation_chartboost/android/build.gradle | 4 ++-- .../ios/gma_mediation_chartboost.podspec | 4 ++-- packages/mediation/gma_mediation_chartboost/pubspec.yaml | 2 +- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index d401dae51..f115c6f65 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,8 +1,6 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### Version 1.2.3 (In progress) - -#### Version 1.2.2 (In progress) +#### Version 1.3.0 (In progress) #### Version 1.2.1 - Supports [Chartboost Android adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9920). diff --git a/packages/mediation/gma_mediation_chartboost/android/build.gradle b/packages/mediation/gma_mediation_chartboost/android/build.gradle index 4ebc05289..136068b5b 100644 --- a/packages/mediation/gma_mediation_chartboost/android/build.gradle +++ b/packages/mediation/gma_mediation_chartboost/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_chartboost" -version = "1.2.3" +version = "1.3.0" buildscript { ext.kotlin_version = "1.8.22" @@ -28,7 +28,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "9.9.3.0" + stringVersion = "9.10.0.0" } android { diff --git a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec index 2b910eb08..0ba059126 100644 --- a/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec +++ b/packages/mediation/gma_mediation_chartboost/ios/gma_mediation_chartboost.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_chartboost' - s.version = '1.2.3' + s.version = '1.3.0' s.summary = 'Google Mobile Ads Mediation of Chartboost.' s.description = <<-DESC Mediation Adapter for Chartboost to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.9.3.0' + s.dependency 'GoogleMobileAdsMediationChartboost', '~>9.10.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_chartboost/pubspec.yaml b/packages/mediation/gma_mediation_chartboost/pubspec.yaml index 0f0bdbfc8..1a58e1767 100644 --- a/packages/mediation/gma_mediation_chartboost/pubspec.yaml +++ b/packages/mediation/gma_mediation_chartboost/pubspec.yaml @@ -1,7 +1,7 @@ name: gma_mediation_chartboost description: 'Mediation Adapter that enables sending ad requests to the Chartboost ad network using the google_mobile_ads plugin.' -version: 1.2.3 +version: 1.3.0 environment: sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' From 64a7e8becfe01c5fc8c83eb0b2fcd6a665aebc1c Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 13 Oct 2025 09:24:50 -0700 Subject: [PATCH 311/318] Updating PubMatic Flutter mediation plugin to support the latest adapters (4.9.1.0, 4.8.1.0) PiperOrigin-RevId: 818696259 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 2 +- .../mediation/gma_mediation_pubmatic/android/build.gradle | 4 ++-- .../ios/gma_mediation_pubmatic.podspec | 2 +- packages/mediation/gma_mediation_pubmatic/pubspec.yaml | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index c35d63654..7442e0bd0 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,6 +1,6 @@ ## Pubmatic Flutter Mediation Adapter Changelog -#### Version 1.1.1 (In progress) +#### Version 1.2.0 (In progress) #### Version 1.1.0 - Supports [PubMatic Android adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4800). diff --git a/packages/mediation/gma_mediation_pubmatic/android/build.gradle b/packages/mediation/gma_mediation_pubmatic/android/build.gradle index e415d5c95..fa3fc1fd7 100644 --- a/packages/mediation/gma_mediation_pubmatic/android/build.gradle +++ b/packages/mediation/gma_mediation_pubmatic/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_pubmatic" -version = "1.1.1" +version = "1.2.0" buildscript { ext.kotlin_version = "2.1.0" @@ -25,7 +25,7 @@ apply plugin: "com.android.library" apply plugin: "kotlin-android" ext { - stringVersion = "4.8.0.0" + stringVersion = "4.9.1.0" } android { diff --git a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec index 067e94573..3208c8042 100644 --- a/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec +++ b/packages/mediation/gma_mediation_pubmatic/ios/gma_mediation_pubmatic.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_pubmatic' - s.version = '1.1.1' + s.version = '1.2.0' s.summary = 'Google Mobile Ads Mediation of Pubmatic.' s.description = <<-DESC Mediation Adapter for Pubmatic to use with Google Mobile Ads. diff --git a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml index f80762f83..41bc6b94d 100644 --- a/packages/mediation/gma_mediation_pubmatic/pubspec.yaml +++ b/packages/mediation/gma_mediation_pubmatic/pubspec.yaml @@ -1,10 +1,10 @@ name: gma_mediation_pubmatic description: 'Mediation Adapter that enables sending ad requests to the Pubmatic ad network using the google_mobile_ads plugin.' -version: 1.1.1 +version: 1.2.0 environment: - sdk: ^3.8.1 - flutter: '>=3.3.0' + sdk: '>=3.6.0 <4.0.0' + flutter: '>=3.27.0' dependencies: flutter: sdk: flutter From e9313c86d9f9519bc76c848a47e7a28fe96c0157 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Mon, 13 Oct 2025 09:25:33 -0700 Subject: [PATCH 312/318] Updating Pangle Flutter mediation plugin to support the latest adapters (7.6.0.4.0, 7.6.0.6.0) PiperOrigin-RevId: 818696522 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 7 ------- .../mediation/gma_mediation_pangle/android/build.gradle | 4 ++-- .../gma_mediation_pangle/ios/gma_mediation_pangle.podspec | 4 ++-- packages/mediation/gma_mediation_pangle/pubspec.yaml | 2 +- 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 8fa3971a5..61a03d1b2 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,13 +1,6 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.4.0 (In progress) - -#### Version 3.3.1 (In progress) - #### Version 3.3.0 (In progress) -- Supports [Pangle Android adapter version 7.5.0.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-75020). -- Supports [Pangle iOS adapter version 7.5.0.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-75050). -- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.2.1 - Supports [Pangle Android adapter version 7.3.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73050). diff --git a/packages/mediation/gma_mediation_pangle/android/build.gradle b/packages/mediation/gma_mediation_pangle/android/build.gradle index dcc804c83..a6e637534 100644 --- a/packages/mediation/gma_mediation_pangle/android/build.gradle +++ b/packages/mediation/gma_mediation_pangle/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_pangle' -version = "3.4.0" +version = "3.3.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "7.6.0.2.0" + stringVersion = "7.6.0.4.0" } android { diff --git a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec index 2ee1b6842..165755bd4 100644 --- a/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec +++ b/packages/mediation/gma_mediation_pangle/ios/gma_mediation_pangle.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_pangle' - s.version = '3.4.0' + s.version = '3.3.0' s.summary = 'Google Mobile Ads Mediation of Pangle.' s.description = <<-DESC Mediation Adapter for Pangle to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Pod::Spec.new do |s| s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.6.0.4.0' + s.dependency 'GoogleMobileAdsMediationPangle', '~> 7.6.0.6.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_pangle/pubspec.yaml b/packages/mediation/gma_mediation_pangle/pubspec.yaml index 9bf8ccee0..51bec97fe 100644 --- a/packages/mediation/gma_mediation_pangle/pubspec.yaml +++ b/packages/mediation/gma_mediation_pangle/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_pangle description: "Mediation Adapter that enables sending ad requests to the Pangle ad network using the google_mobile_ads plugin." -version: 3.4.0 +version: 3.3.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_pangle environment: From 41c83a9adefc1e2207123e856f2756c4703b3fa0 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Mon, 13 Oct 2025 11:21:01 -0700 Subject: [PATCH 313/318] Updating Maio Flutter mediation plugin to support the latest adapters (2.0.5.0, 2.2.0.0) PiperOrigin-RevId: 818751715 --- packages/mediation/gma_mediation_maio/CHANGELOG.md | 2 ++ packages/mediation/gma_mediation_maio/android/build.gradle | 2 +- .../gma_mediation_maio/ios/gma_mediation_maio.podspec | 4 ++-- packages/mediation/gma_mediation_maio/pubspec.yaml | 4 ++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/mediation/gma_mediation_maio/CHANGELOG.md b/packages/mediation/gma_mediation_maio/CHANGELOG.md index be0a50c07..19606067f 100644 --- a/packages/mediation/gma_mediation_maio/CHANGELOG.md +++ b/packages/mediation/gma_mediation_maio/CHANGELOG.md @@ -1,5 +1,7 @@ ## maio Flutter Mediation Adapter Changelog +#### Version 1.1.0 (In progress) + #### Version 1.0.3 - Supports [maio Android adapter version 2.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/maio/CHANGELOG.md#version-2050). - Supports [maio iOS adapter version 2.1.6.1](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Maio/CHANGELOG.md#version-2161). diff --git a/packages/mediation/gma_mediation_maio/android/build.gradle b/packages/mediation/gma_mediation_maio/android/build.gradle index fbfa2e1a8..5321fd38e 100644 --- a/packages/mediation/gma_mediation_maio/android/build.gradle +++ b/packages/mediation/gma_mediation_maio/android/build.gradle @@ -1,5 +1,5 @@ group = "io.flutter.plugins.googlemobileads.mediation.gma_mediation_maio" -version = "1.0.3" +version = "1.1.0" buildscript { ext.kotlin_version = "1.8.22" diff --git a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec index b98b2b3d4..2adf3c1a8 100644 --- a/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec +++ b/packages/mediation/gma_mediation_maio/ios/gma_mediation_maio.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'gma_mediation_maio' - s.version = '1.0.3' + s.version = '1.1.0' s.summary = 'Google Mobile Ads Mediation of maio.' s.description = <<-DESC Mediation Adapter for maio to use with Google Mobile Ads. @@ -11,7 +11,7 @@ Pod::Spec.new do |s| s.source = { :path => '.' } s.source_files = 'Classes/**/*' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationMaio', '~>2.1.6.1' + s.dependency 'GoogleMobileAdsMediationMaio', '~>2.2.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_maio/pubspec.yaml b/packages/mediation/gma_mediation_maio/pubspec.yaml index 1a06b9036..4a81f5a57 100644 --- a/packages/mediation/gma_mediation_maio/pubspec.yaml +++ b/packages/mediation/gma_mediation_maio/pubspec.yaml @@ -1,9 +1,9 @@ name: gma_mediation_maio description: 'Mediation Adapter that enables sending ad requests to the maio ad network using the google_mobile_ads plugin.' -version: 1.0.3 +version: 1.1.0 environment: - sdk: ^3.7.0 + sdk: '>=3.6.0 <4.0.0' flutter: '>=3.27.0' dependencies: flutter: From 3d2ac71c21cc46bf3f5ac9b39a4bd862dcb0f013 Mon Sep 17 00:00:00 2001 From: Aldo Becerril Date: Tue, 14 Oct 2025 15:18:46 -0700 Subject: [PATCH 314/318] Updating IronSource Flutter mediation plugin to support the latest adapters (9.0.0.0, 9.0.0.0.0) PiperOrigin-RevId: 819420838 --- .../gma_mediation_ironsource/CHANGELOG.md | 4 +-- .../android/build.gradle | 4 +-- .../GmaMediationIronsourcePlugin.kt | 8 ++--- .../GmaMediationIronsourcePluginTest.kt | 30 ++++++------------- .../GmaMediationIronsourcePlugin.swift | 17 ++++++----- .../ios/gma_mediation_ironsource.podspec | 4 +-- .../gma_mediation_ironsource/pubspec.yaml | 2 +- 7 files changed, 28 insertions(+), 41 deletions(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index d0d4a2e4a..d8d5350d9 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,8 +1,6 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Version 1.6.1 (In progress) - -#### Version 1.6.0 (In progress) +#### Version 2.0.0 (In progress) #### Version 1.5.0 - Supports [ironSource Android adapter version 8.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-81000). diff --git a/packages/mediation/gma_mediation_ironsource/android/build.gradle b/packages/mediation/gma_mediation_ironsource/android/build.gradle index af9a57387..40b572579 100644 --- a/packages/mediation/gma_mediation_ironsource/android/build.gradle +++ b/packages/mediation/gma_mediation_ironsource/android/build.gradle @@ -1,5 +1,5 @@ group 'io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource' -version = "1.6.1" +version = "2.0.0" buildscript { ext.kotlin_version = '2.0.21' @@ -28,7 +28,7 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' ext { - stringVersion = "8.11.1.0" + stringVersion = "9.0.0.0" } android { diff --git a/packages/mediation/gma_mediation_ironsource/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePlugin.kt b/packages/mediation/gma_mediation_ironsource/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePlugin.kt index 74055b937..edfd19b22 100644 --- a/packages/mediation/gma_mediation_ironsource/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePlugin.kt +++ b/packages/mediation/gma_mediation_ironsource/android/src/main/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePlugin.kt @@ -14,11 +14,11 @@ package io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource -import com.ironsource.mediationsdk.IronSource; +import com.unity3d.mediation.LevelPlay import io.flutter.embedding.engine.plugins.FlutterPlugin /** GmaMediationIronsourcePlugin manages IronSourcePrivacyApi and implements the needed methods. */ -class GmaMediationIronsourcePlugin: FlutterPlugin, IronSourcePrivacyApi { +class GmaMediationIronsourcePlugin : FlutterPlugin, IronSourcePrivacyApi { override fun onAttachedToEngine(flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { IronSourcePrivacyApi.setUp(flutterPluginBinding.binaryMessenger, this) @@ -29,11 +29,11 @@ class GmaMediationIronsourcePlugin: FlutterPlugin, IronSourcePrivacyApi { } override fun setConsent(gdprConsent: Boolean) { - IronSource.setConsent(gdprConsent) + LevelPlay.setConsent(gdprConsent) } override fun setDoNotSell(doNotSell: Boolean) { - IronSource.setMetaData(IRONSOURCE_DONOTSELL_KEY, if (doNotSell) TRUE else FALSE) + LevelPlay.setMetaData(IRONSOURCE_DONOTSELL_KEY, if (doNotSell) TRUE else FALSE) } companion object { diff --git a/packages/mediation/gma_mediation_ironsource/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePluginTest.kt b/packages/mediation/gma_mediation_ironsource/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePluginTest.kt index fb9d1c41c..449f0a37d 100644 --- a/packages/mediation/gma_mediation_ironsource/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePluginTest.kt +++ b/packages/mediation/gma_mediation_ironsource/android/src/test/kotlin/io/flutter/plugins/googlemobileads/mediation/gma_mediation_ironsource/GmaMediationIronsourcePluginTest.kt @@ -15,7 +15,7 @@ package io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.ironsource.mediationsdk.IronSource +import com.unity3d.mediation.LevelPlay import io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource.GmaMediationIronsourcePlugin.Companion.FALSE import io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource.GmaMediationIronsourcePlugin.Companion.IRONSOURCE_DONOTSELL_KEY import io.flutter.plugins.googlemobileads.mediation.gma_mediation_ironsource.GmaMediationIronsourcePlugin.Companion.TRUE @@ -29,52 +29,40 @@ internal class GmaMediationIronsourcePluginTest { @Test fun setConsent_withTrueValue_invokesIronSourceSetConsent() { val plugin = GmaMediationIronsourcePlugin() - mockStatic(IronSource::class.java).use { mockedIronSource -> - + mockStatic(LevelPlay::class.java).use { mockedIronSource -> plugin.setConsent(true) - mockedIronSource.verify { - IronSource.setConsent(eq(true)) - } + mockedIronSource.verify { LevelPlay.setConsent(eq(true)) } } } @Test fun setConsent_withFalseValue_invokesIronSourceSetConsent() { val plugin = GmaMediationIronsourcePlugin() - mockStatic(IronSource::class.java).use { mockedIronSource -> - + mockStatic(LevelPlay::class.java).use { mockedIronSource -> plugin.setConsent(false) - mockedIronSource.verify { - IronSource.setConsent(eq(false)) - } + mockedIronSource.verify { LevelPlay.setConsent(eq(false)) } } } @Test fun setDoNotSell_withTrueValue_invokesIronSourceMetaDataWithCorrectKeyAndValue() { val plugin = GmaMediationIronsourcePlugin() - mockStatic(IronSource::class.java).use { mockedIronSource -> - + mockStatic(LevelPlay::class.java).use { mockedIronSource -> plugin.setDoNotSell(true) - mockedIronSource.verify { - IronSource.setMetaData(eq(IRONSOURCE_DONOTSELL_KEY), eq(TRUE)) - } + mockedIronSource.verify { LevelPlay.setMetaData(eq(IRONSOURCE_DONOTSELL_KEY), eq(TRUE)) } } } @Test fun setDoNotSell_withFalseValue_invokesIronSourceMetaDataWithCorrectKeyAndValue() { val plugin = GmaMediationIronsourcePlugin() - mockStatic(IronSource::class.java).use { mockedIronSource -> - + mockStatic(LevelPlay::class.java).use { mockedIronSource -> plugin.setDoNotSell(false) - mockedIronSource.verify { - IronSource.setMetaData(eq(IRONSOURCE_DONOTSELL_KEY), eq(FALSE)) - } + mockedIronSource.verify { LevelPlay.setMetaData(eq(IRONSOURCE_DONOTSELL_KEY), eq(FALSE)) } } } } diff --git a/packages/mediation/gma_mediation_ironsource/ios/Classes/GmaMediationIronsourcePlugin.swift b/packages/mediation/gma_mediation_ironsource/ios/Classes/GmaMediationIronsourcePlugin.swift index b986ebc42..af7965140 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/Classes/GmaMediationIronsourcePlugin.swift +++ b/packages/mediation/gma_mediation_ironsource/ios/Classes/GmaMediationIronsourcePlugin.swift @@ -13,24 +13,25 @@ // limitations under the License. import Flutter -import IronSource +import LevelPlay import UIKit /// Manages IronSourcePrivacyApi and implements the needed methods. public class GmaMediationIronsourcePlugin: NSObject, FlutterPlugin, IronSourcePrivacyApi { let ironSourceSdk: IronSourceSdkProtocol - init (ironSourceSdk: IronSourceSdkProtocol) { + init(ironSourceSdk: IronSourceSdkProtocol) { self.ironSourceSdk = ironSourceSdk } public static func register(with registrar: FlutterPluginRegistrar) { - let messenger : FlutterBinaryMessenger = registrar.messenger() - let api : IronSourcePrivacyApi& NSObjectProtocol = GmaMediationIronsourcePlugin.init(ironSourceSdk: IronSourceSdkImpl()) + let messenger: FlutterBinaryMessenger = registrar.messenger() + let api: IronSourcePrivacyApi & NSObjectProtocol = GmaMediationIronsourcePlugin.init( + ironSourceSdk: IronSourceSdkImpl()) IronSourcePrivacyApiSetup.setUp(binaryMessenger: messenger, api: api) } public func detachFromEngine(for registrar: FlutterPluginRegistrar) { - let messenger : FlutterBinaryMessenger = registrar.messenger() + let messenger: FlutterBinaryMessenger = registrar.messenger() IronSourcePrivacyApiSetup.setUp(binaryMessenger: messenger, api: nil) } @@ -49,12 +50,12 @@ protocol IronSourceSdkProtocol { func setDoNotSell(onKey: String, withValue: String) } -class IronSourceSdkImpl : IronSourceSdkProtocol { +class IronSourceSdkImpl: IronSourceSdkProtocol { func setConsent(gdprConsent: Bool) { - IronSource.setConsent(gdprConsent) + LevelPlay.setConsent(gdprConsent) } func setDoNotSell(onKey: String, withValue: String) { - IronSource.setMetaDataWithKey(onKey, value: withValue) + LevelPlay.setMetaDataWithKey(onKey, value: withValue) } } diff --git a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec index d59a6b072..420a94ca9 100644 --- a/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec +++ b/packages/mediation/gma_mediation_ironsource/ios/gma_mediation_ironsource.podspec @@ -4,7 +4,7 @@ # Pod::Spec.new do |s| s.name = 'gma_mediation_ironsource' - s.version = '1.6.1' + s.version = '2.0.0' s.summary = 'Google Mobile Ads Mediation of ironSource.' s.description = <<-DESC Mediation Adapter for ironSource to use with Google Mobile Ads. @@ -16,7 +16,7 @@ Mediation Adapter for ironSource to use with Google Mobile Ads. s.source_files = 'Classes/**/*' s.public_header_files = 'Classes/**/*.h' s.dependency 'Flutter' - s.dependency 'GoogleMobileAdsMediationIronSource', '~>8.11.0.0.0' + s.dependency 'GoogleMobileAdsMediationIronSource', '~>9.0.0.0.0' s.platform = :ios, '12.0' s.static_framework = true diff --git a/packages/mediation/gma_mediation_ironsource/pubspec.yaml b/packages/mediation/gma_mediation_ironsource/pubspec.yaml index 36b59be64..5a895e2f4 100644 --- a/packages/mediation/gma_mediation_ironsource/pubspec.yaml +++ b/packages/mediation/gma_mediation_ironsource/pubspec.yaml @@ -1,6 +1,6 @@ name: gma_mediation_ironsource description: "Mediation Adapter that enables sending ad requests to the ironSource ad network using the google_mobile_ads plugin." -version: 1.6.1 +version: 2.0.0 repository: https://github.com/googleads/googleads-mobile-flutter/tree/main/packages/mediation/gma_mediation_ironsource environment: From ff51dd2b9a15e3d8cba77dcd4b6bf51c9b38424b Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 16 Oct 2025 08:47:42 -0700 Subject: [PATCH 315/318] Updating IronSource Flutter Adapter to version 2.0.0 PiperOrigin-RevId: 820252524 --- packages/mediation/gma_mediation_ironsource/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md index d8d5350d9..b9c9d17c5 100644 --- a/packages/mediation/gma_mediation_ironsource/CHANGELOG.md +++ b/packages/mediation/gma_mediation_ironsource/CHANGELOG.md @@ -1,6 +1,9 @@ ## ironSource Flutter Mediation Adapter Changelog -#### Version 2.0.0 (In progress) +#### Version 2.0.0 +- Supports [ironSource Android adapter version 9.0.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-9000). +- Supports [ironSource iOS adapter version 9.0.0.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/IronSource/CHANGELOG.md#version-90000). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.5.0 - Supports [ironSource Android adapter version 8.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/ironsource/CHANGELOG.md#version-81000). From df39765a881fe7def2d5b4b5344e4434c96aecb2 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 16 Oct 2025 09:10:33 -0700 Subject: [PATCH 316/318] Updating Pubmatic Flutter Adapter to version 1.2.0 PiperOrigin-RevId: 820261700 --- packages/mediation/gma_mediation_pubmatic/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md index 7442e0bd0..c0f9e908c 100644 --- a/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pubmatic/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pubmatic Flutter Mediation Adapter Changelog -#### Version 1.2.0 (In progress) +#### Version 1.2.0 +- Supports [PubMatic Android adapter version 4.9.1.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4910). +- Supports [PubMatic iOS adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/PubMatic/CHANGELOG.md#version-4800). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.1.0 - Supports [PubMatic Android adapter version 4.8.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pubmatic/CHANGELOG.md#version-4800). From 1122c3ba2e94274f9060d7aa1c77653b70132d78 Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 16 Oct 2025 09:16:37 -0700 Subject: [PATCH 317/318] Updating Pangle Flutter adapter to version 3.3.0 PiperOrigin-RevId: 820264436 --- packages/mediation/gma_mediation_pangle/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_pangle/CHANGELOG.md b/packages/mediation/gma_mediation_pangle/CHANGELOG.md index 61a03d1b2..8a42ac39f 100644 --- a/packages/mediation/gma_mediation_pangle/CHANGELOG.md +++ b/packages/mediation/gma_mediation_pangle/CHANGELOG.md @@ -1,6 +1,9 @@ ## Pangle Flutter Mediation Adapter Changelog -#### Version 3.3.0 (In progress) +#### Version 3.3.0 +- Supports [Pangle Android adapter version 7.6.0.4.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-76040). +- Supports [Pangle iOS adapter version 7.6.0.5.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Pangle/CHANGELOG.md#version-76050). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 3.2.1 - Supports [Pangle Android adapter version 7.3.0.5.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/pangle/CHANGELOG.md#version-73050). From 3d614a282ff33c9ad14fc96506c71da47ae5c49f Mon Sep 17 00:00:00 2001 From: Mobile Ads Developer Relations Date: Thu, 16 Oct 2025 09:29:09 -0700 Subject: [PATCH 318/318] Updating Chartboost Flutter Adapter to version 1.3.0 PiperOrigin-RevId: 820269371 --- packages/mediation/gma_mediation_chartboost/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md index f115c6f65..7e1374178 100644 --- a/packages/mediation/gma_mediation_chartboost/CHANGELOG.md +++ b/packages/mediation/gma_mediation_chartboost/CHANGELOG.md @@ -1,6 +1,9 @@ ## Chartboost Flutter Mediation Adapter Changelog -#### Version 1.3.0 (In progress) +#### Version 1.3.0 +- Supports [Chartboost Android adapter version 9.10.0.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-91000). +- Supports [Charboost iOS adapter version 9.10.0.0](https://github.com/googleads/googleads-mobile-ios-mediation/blob/main/adapters/Chartboost/CHANGELOG.md#version-91000). +- Built and tested with the Google Mobile Ads Flutter Plugin version 6.0.0. #### Version 1.2.1 - Supports [Chartboost Android adapter version 9.9.2.0](https://github.com/googleads/googleads-mobile-android-mediation/blob/main/ThirdPartyAdapters/chartboost/CHANGELOG.md#version-9920).