Skip to content

Commit b17d3ff

Browse files
[interactive_media_ads] Removes internal native library Dart proxy (#10537)
ProxyApis now * Generate a Dart `PigeonOverrides` class that can override constructors and static methods. * Use a test `PigeonInstanceManager` that doesn't make any message calls. This removes the manually written proxy and replaces its use in tests with `PigeonOverrides`. ## Pre-Review Checklist **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
1 parent 54b49e1 commit b17d3ff

File tree

47 files changed

+2706
-3562
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+2706
-3562
lines changed

packages/interactive_media_ads/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.3.0+8
2+
3+
* Removes internal native library Dart proxy.
4+
15
## 0.3.0+7
26

37
* Bumps kotlin_version to 2.2.21.

packages/interactive_media_ads/android/src/main/kotlin/dev/flutter/packages/interactive_media_ads/AdsRequestProxyApi.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class AdsRequestProxyApi(override val pigeonRegistrar: ProxyApiRegistrar) :
2121
*
2222
* This must match the version in pubspec.yaml.
2323
*/
24-
const val pluginVersion = "0.3.0+7"
24+
const val pluginVersion = "0.3.0+8"
2525
}
2626

2727
override fun setAdTagUrl(pigeon_instance: AdsRequest, adTagUrl: String) {

packages/interactive_media_ads/android/src/main/kotlin/dev/flutter/packages/interactive_media_ads/InteractiveMediaAdsLibrary.g.kt

Lines changed: 114 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Copyright 2013 The Flutter Authors
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
4-
// Autogenerated from Pigeon (v26.1.0), do not edit directly.
4+
// Autogenerated from Pigeon (v26.1.4), do not edit directly.
55
// See also: https://pub.dev/packages/pigeon
66
@file:Suppress("UNCHECKED_CAST", "ArrayInDataClass")
77

@@ -213,7 +213,7 @@ class InteractiveMediaAdsLibraryPigeonInstanceManager(
213213
}
214214

215215
/** Retrieves the instance associated with identifier, if present, otherwise `null`. */
216-
fun <T> getInstance(identifier: Long): T? {
216+
fun <T : Any> getInstance(identifier: Long): T? {
217217
logWarningIfFinalizationListenerHasStopped()
218218
val instance = weakInstances[identifier] as IdentityWeakReference<T>?
219219
return instance?.get()
@@ -4059,6 +4059,14 @@ abstract class PigeonApiVideoView(
40594059
Result.failure(
40604060
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
40614061
return
4062+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
4063+
callback(
4064+
Result.failure(
4065+
FlutterError(
4066+
"missing-instance-error",
4067+
"Callback to `VideoView.onPrepared` failed because native instance was not in the instance manager.",
4068+
"")))
4069+
return
40624070
}
40634071
val binaryMessenger = pigeonRegistrar.binaryMessenger
40644072
val codec = pigeonRegistrar.codec
@@ -4090,6 +4098,14 @@ abstract class PigeonApiVideoView(
40904098
Result.failure(
40914099
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
40924100
return
4101+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
4102+
callback(
4103+
Result.failure(
4104+
FlutterError(
4105+
"missing-instance-error",
4106+
"Callback to `VideoView.onCompletion` failed because native instance was not in the instance manager.",
4107+
"")))
4108+
return
40934109
}
40944110
val binaryMessenger = pigeonRegistrar.binaryMessenger
40954111
val codec = pigeonRegistrar.codec
@@ -4123,6 +4139,14 @@ abstract class PigeonApiVideoView(
41234139
Result.failure(
41244140
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
41254141
return
4142+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
4143+
callback(
4144+
Result.failure(
4145+
FlutterError(
4146+
"missing-instance-error",
4147+
"Callback to `VideoView.onError` failed because native instance was not in the instance manager.",
4148+
"")))
4149+
return
41264150
}
41274151
val binaryMessenger = pigeonRegistrar.binaryMessenger
41284152
val codec = pigeonRegistrar.codec
@@ -4923,6 +4947,14 @@ abstract class PigeonApiVideoAdPlayer(
49234947
Result.failure(
49244948
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
49254949
return
4950+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
4951+
callback(
4952+
Result.failure(
4953+
FlutterError(
4954+
"missing-instance-error",
4955+
"Callback to `VideoAdPlayer.addCallback` failed because native instance was not in the instance manager.",
4956+
"")))
4957+
return
49264958
}
49274959
val binaryMessenger = pigeonRegistrar.binaryMessenger
49284960
val codec = pigeonRegistrar.codec
@@ -4955,6 +4987,14 @@ abstract class PigeonApiVideoAdPlayer(
49554987
Result.failure(
49564988
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
49574989
return
4990+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
4991+
callback(
4992+
Result.failure(
4993+
FlutterError(
4994+
"missing-instance-error",
4995+
"Callback to `VideoAdPlayer.loadAd` failed because native instance was not in the instance manager.",
4996+
"")))
4997+
return
49584998
}
49594999
val binaryMessenger = pigeonRegistrar.binaryMessenger
49605000
val codec = pigeonRegistrar.codec
@@ -4986,6 +5026,14 @@ abstract class PigeonApiVideoAdPlayer(
49865026
Result.failure(
49875027
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
49885028
return
5029+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5030+
callback(
5031+
Result.failure(
5032+
FlutterError(
5033+
"missing-instance-error",
5034+
"Callback to `VideoAdPlayer.pauseAd` failed because native instance was not in the instance manager.",
5035+
"")))
5036+
return
49895037
}
49905038
val binaryMessenger = pigeonRegistrar.binaryMessenger
49915039
val codec = pigeonRegistrar.codec
@@ -5020,6 +5068,14 @@ abstract class PigeonApiVideoAdPlayer(
50205068
Result.failure(
50215069
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
50225070
return
5071+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5072+
callback(
5073+
Result.failure(
5074+
FlutterError(
5075+
"missing-instance-error",
5076+
"Callback to `VideoAdPlayer.playAd` failed because native instance was not in the instance manager.",
5077+
"")))
5078+
return
50235079
}
50245080
val binaryMessenger = pigeonRegistrar.binaryMessenger
50255081
val codec = pigeonRegistrar.codec
@@ -5050,6 +5106,14 @@ abstract class PigeonApiVideoAdPlayer(
50505106
Result.failure(
50515107
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
50525108
return
5109+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5110+
callback(
5111+
Result.failure(
5112+
FlutterError(
5113+
"missing-instance-error",
5114+
"Callback to `VideoAdPlayer.release` failed because native instance was not in the instance manager.",
5115+
"")))
5116+
return
50535117
}
50545118
val binaryMessenger = pigeonRegistrar.binaryMessenger
50555119
val codec = pigeonRegistrar.codec
@@ -5082,6 +5146,14 @@ abstract class PigeonApiVideoAdPlayer(
50825146
Result.failure(
50835147
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
50845148
return
5149+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5150+
callback(
5151+
Result.failure(
5152+
FlutterError(
5153+
"missing-instance-error",
5154+
"Callback to `VideoAdPlayer.removeCallback` failed because native instance was not in the instance manager.",
5155+
"")))
5156+
return
50855157
}
50865158
val binaryMessenger = pigeonRegistrar.binaryMessenger
50875159
val codec = pigeonRegistrar.codec
@@ -5113,6 +5185,14 @@ abstract class PigeonApiVideoAdPlayer(
51135185
Result.failure(
51145186
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
51155187
return
5188+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5189+
callback(
5190+
Result.failure(
5191+
FlutterError(
5192+
"missing-instance-error",
5193+
"Callback to `VideoAdPlayer.stopAd` failed because native instance was not in the instance manager.",
5194+
"")))
5195+
return
51165196
}
51175197
val binaryMessenger = pigeonRegistrar.binaryMessenger
51185198
val codec = pigeonRegistrar.codec
@@ -5210,6 +5290,14 @@ abstract class PigeonApiAdsLoadedListener(
52105290
Result.failure(
52115291
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
52125292
return
5293+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5294+
callback(
5295+
Result.failure(
5296+
FlutterError(
5297+
"missing-instance-error",
5298+
"Callback to `AdsLoadedListener.onAdsManagerLoaded` failed because native instance was not in the instance manager.",
5299+
"")))
5300+
return
52135301
}
52145302
val binaryMessenger = pigeonRegistrar.binaryMessenger
52155303
val codec = pigeonRegistrar.codec
@@ -5308,6 +5396,14 @@ abstract class PigeonApiAdErrorListener(
53085396
Result.failure(
53095397
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
53105398
return
5399+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5400+
callback(
5401+
Result.failure(
5402+
FlutterError(
5403+
"missing-instance-error",
5404+
"Callback to `AdErrorListener.onAdError` failed because native instance was not in the instance manager.",
5405+
"")))
5406+
return
53115407
}
53125408
val binaryMessenger = pigeonRegistrar.binaryMessenger
53135409
val codec = pigeonRegistrar.codec
@@ -5405,6 +5501,14 @@ abstract class PigeonApiAdEventListener(
54055501
Result.failure(
54065502
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
54075503
return
5504+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
5505+
callback(
5506+
Result.failure(
5507+
FlutterError(
5508+
"missing-instance-error",
5509+
"Callback to `AdEventListener.onAdEvent` failed because native instance was not in the instance manager.",
5510+
"")))
5511+
return
54085512
}
54095513
val binaryMessenger = pigeonRegistrar.binaryMessenger
54105514
val codec = pigeonRegistrar.codec
@@ -6427,6 +6531,14 @@ abstract class PigeonApiCompanionAdSlotClickListener(
64276531
Result.failure(
64286532
FlutterError("ignore-calls-error", "Calls to Dart are being ignored.", "")))
64296533
return
6534+
} else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) {
6535+
callback(
6536+
Result.failure(
6537+
FlutterError(
6538+
"missing-instance-error",
6539+
"Callback to `CompanionAdSlotClickListener.onCompanionAdClick` failed because native instance was not in the instance manager.",
6540+
"")))
6541+
return
64306542
}
64316543
val binaryMessenger = pigeonRegistrar.binaryMessenger
64326544
val codec = pigeonRegistrar.codec

packages/interactive_media_ads/ios/interactive_media_ads/Sources/interactive_media_ads/AdsRequestProxyAPIDelegate.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class AdsRequestProxyAPIDelegate: PigeonApiDelegateIMAAdsRequest {
1313
/// The current version of the `interactive_media_ads` plugin.
1414
///
1515
/// This must match the version in pubspec.yaml.
16-
static let pluginVersion = "0.3.0+7"
16+
static let pluginVersion = "0.3.0+8"
1717

1818
func pigeonDefaultConstructor(
1919
pigeonApi: PigeonApiIMAAdsRequest, adTagUrl: String, adDisplayContainer: IMAAdDisplayContainer,

0 commit comments

Comments
 (0)