Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

com.google.android.gms:play-services-ads-lite (AdMob) improvements #1086

Merged
merged 3 commits into from
Feb 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions published-namespaces.txt
Original file line number Diff line number Diff line change
Expand Up @@ -979,6 +979,7 @@ Google.Ads.InteractiveMedia.V3.Impl.Data
Google.Ads.Mediation
Google.Ads.Mediation.Admob
Google.Ads.Nonagon.Util.Logging.Csi
Google.Android.Gms.Ads.Internal.Offline.Buffering
Google.Android.Gms.Ads.Nonagon.SignalGeneration
Google.Android.Libraries.AppActions.Service
Google.Android.Libraries.Places.Api.Auth
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -30,24 +30,6 @@
<attr path="/api/package[@name='com.google.android.gms.ads.purchase']/interface[@name='PlayStorePurchaseListener']/method[@name='onInAppPurchaseFinished']/parameter[1]" name="managedName">inAppPurchaseResult</attr>


<!-- Remove some internal namespaces -->
<remove-node path="/api/package[@name='com.google.android.gms.ads.internal.offline.buffering']" />

<!--
<remove-node path="/api/package[contains(@name, 'android.gms.internal')]" />
<remove-node path="/api/package[contains(@name, 'com.google.android.gms.ads.internal')]" />
-->
<!-- Remove *zz* obfuscated items -->
<!--
<remove-node path="/api/package/class[contains(@name, 'zz')]" />
<remove-node path="/api/package/interface[contains(@name, 'zz')]" />
<remove-node path="/api/*/*[@name != 'interface']/method[contains(@name, 'zz')]" />
-->
<!--
<remove-node path="/api/*/*/field[contains(@name, 'zz')]" />
-->


<!-- Some classes are private that need to be public to subclass -->
<attr path="/api/package[@name='com.google.android.gms.ads']/class[@name='BaseAdView']" name="visibility">public</attr>

Expand Down Expand Up @@ -124,13 +106,6 @@
<!-- <attr path="/api/package[@name='com.google.ads.doubleclick']/interface[@name='OnCustomRenderedAdLoadedListener']/method[@name='onCustomRenderedAdLoaded']/parameter[1]" name="managedName">ad</attr>-->


<remove-node path="/api/package[@name='com.google.android.gms.ads']/class[@name='AdSize']/field[@name='zzako']" />

<!--
<remove-node path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationBannerListener']" />
<remove-node path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']" />
-->

<attr path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']/method[@name='zza']" name="obfuscated">false</attr>
<attr path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationBannerListener']/method[@name='zza']" name="obfuscated">false</attr>

Expand Down Expand Up @@ -229,148 +204,6 @@
</attr>


<!--
causing ACW errors:
./samples/com.google.android.gms/play-services-ads-lite/AdsLiteSample/obj/Debug/android/src/crc6449ab38c9a8eed94c/MainActivity.java(36,36):
Error JAVAC0000: error: cannot inherit from final AdActivity
extends com.google.android.gms.ads.AdActivity
(JAVAC0000) (AdsLiteSample) javac
<attr
path="/api/package[@name='com.google.android.gms.ads']/class[@name='AdActivity']"
name="final"
>
false
</attr>

<attr
path="/api/package[@name='com.google.android.gms.ads.appopen']"
name="managedName"
>
Android.Gms.Ads.AppOpen
</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.instream']"
name="managedName"
>
Android.Gms.Ads.InStream
</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.query']"
name="managedName"
>
Android.Gms.Ads.Query
</attr>
-->

<!--
https://github.com/xamarin/GooglePlayServicesComponents/issues/334

error: ShouldDelayBannerRenderingListenerImplementor is not abstract and does not override abstract method zzb(Runnable) in ShouldDelayBannerRenderingListener
-->
<!--
Attempt 01:

<remove-node
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']"
/>
<remove-node
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
/>
-->
<!--
Additions.cs for tweaking
-->
<remove-node
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']"
/>

<!--
Attempt 02:
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']"
name="abstract"
>
false
</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="obfuscated"
>
false
</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="abstract"
>
false
</attr>
-->

<!--
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="obfuscated"
>
false
</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="final"
>
true
</attr>
-->
<!--
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']"
name="abstract"
>true</attr>
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="abstract"
>true</attr>
-->

<!--
TODO: issue in java.interop why was this necessary?

<add-node
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']"
>
<method
visibility="public" static="false" abstract="false" return="boolean" name="zzb"
jni-signature="(Ljava/lang/Runnable;)Z" jni-return="Z"
bridge="false" native="false" deprecated="not deprecated" synchronized="false" synthetic="false"
obfuscated="false" final="true"
>
<parameter type="java.lang.Runnable" name="runnable" >
</parameter>
</method>
</add-node>
-->






<remove-node
path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']"
/>
<!--
<attr
path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']/method[@name='onAdLoaded' and count(parameter)=2 and parameter[1][@type='com.google.android.gms.ads.mediation.MediationNativeAdapter'] and parameter[2][@type='com.google.android.gms.ads.mediation.NativeAdMapper']]"
name="managedName"
>
OnNativeAdLoaded
</attr>
<remove-node
path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']/method[@name='zza' and count(parameter)=2 and parameter[1][@type='com.google.android.gms.ads.mediation.MediationNativeAdapter'] and parameter[2][@type='com.google.android.gms.ads.formats.NativeCustomTemplateAd']]"
/>
<remove-node
path="/api/package[@name='com.google.android.gms.ads.mediation']/interface[@name='MediationNativeListener']/method[@name='zza' and count(parameter)=3 and parameter[1][@type='com.google.android.gms.ads.mediation.MediationNativeAdapter'] and parameter[2][@type='com.google.android.gms.ads.formats.NativeCustomTemplateAd'] and parameter[3][@type='java.lang.String']]"
/>
-->
<attr
path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb']"
name="abstract"
Expand Down Expand Up @@ -606,4 +439,5 @@
Android.Gms.Ads.Preload
</attr>


</metadata>