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

Build fails when install Xamarin.GooglePlayServices.Ads.Lite in .NET MAUI RC1 #603

Closed
Sergtek opened this issue Apr 20, 2022 · 9 comments
Closed

Comments

@Sergtek
Copy link

Sergtek commented Apr 20, 2022

Android application type:

Android for .NET (net6.0-android)

Google Play Services Version

  • Xamarin.GooglePlayServices.Ads.Lite 120.3.0.5

Describe your Issue

After installing Xamarin.GooglePlayServices.Ads.Lite 120.3.0.5 in a .NET MAUI (RC1) project and building the project I get the following errors:

1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000: error: package com.google.android.ump.ConsentForm does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000: com.google.android.ump.ConsentForm.OnConsentFormDismissedListener 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000: public void onConsentFormDismissed (com.google.android.ump.FormError p0) 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000: private native void n_onConsentFormDismissed (com.google.android.ump.FormError p0); 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000: error: package com.google.android.ump.ConsentInformation does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000: com.google.android.ump.ConsentInformation.OnConsentInfoUpdateFailureListener 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000: public void onConsentInfoUpdateFailure (com.google.android.ump.FormError p0) 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000: private native void n_onConsentInfoUpdateFailure (com.google.android.ump.FormError p0); 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000: error: package com.google.android.ump.ConsentInformation does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000: com.google.android.ump.ConsentInformation.OnConsentInfoUpdateSuccessListener 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000: error: package com.google.android.ump.UserMessagingPlatform does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000: com.google.android.ump.UserMessagingPlatform.OnConsentFormLoadFailureListener 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000: public void onConsentFormLoadFailure (com.google.android.ump.FormError p0) 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000: private native void n_onConsentFormLoadFailure (com.google.android.ump.FormError p0); 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000: error: package com.google.android.ump.UserMessagingPlatform does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000: com.google.android.ump.UserMessagingPlatform.OnConsentFormLoadSuccessListener 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000: public void onConsentFormLoadSuccess (com.google.android.ump.ConsentForm p0) 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000: 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000: error: package com.google.android.ump does not exist 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000: private native void n_onConsentFormLoadSuccess (com.google.android.ump.ConsentForm p0); 1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000

Minimal Repro Code Sample

I have created a repository on GitHub to be able to reproduce the errors:
https://github.com/nacompllo/AdsLiteIssue

Steps to Reproduce:

Download the attached repository and compile the project. Or create a new .NET Maui project and install the Xamarin.GooglePlayServices.Ads.Lite 120.3.0.5 nuget.

@dtaylorus
Copy link

I get the same errors but with a plain net6.0-android project (no MAUI) and Xamarin.GooglePlayServices.Ads package.

I tried adding the Xamarin.Google.UserMessagingPlatform package but still get the same compile errors.

@dtaylorus
Copy link

I was able to work around this issue by adding the following to my csproj file:

    <ItemGroup>
        <AndroidLibrary Include="Dependencies\user-messaging-platform-2.0.0.aar" Bind="false" />
    </ItemGroup>

I got the file user-messaging-platform-2.0.0.aar from the Maven repository using gradle, but you could probably download it manually.

Unfortunately, the app crashes at runtime now with Failed resolution of: Lcom/google/android/datatransport/Transformer but that's a separate problem.

@moljac
Copy link
Member

moljac commented Apr 23, 2022

Xamarin.Google.UserMessagingPlatform 2.0.0 is bound in

#575

https://github.com/xamarin/GooglePlayServicesComponents/blob/mu-20220215/config.json#L549-L555

@Sergtek
Copy link
Author

Sergtek commented Apr 23, 2022

I get the same errors when installing Xamarin.Google.UserMessagingPlatform and building the project:

1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000:  error: package com.google.android.ump.ConsentForm does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000: 		com.google.android.ump.ConsentForm.OnConsentFormDismissedListener
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(8,37): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000: 	public void onConsentFormDismissed (com.google.android.ump.FormError p0)
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(28,60): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000: 	private native void n_onConsentFormDismissed (com.google.android.ump.FormError p0);
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentForm_OnConsentFormDismissedListenerImplementor.java(33,70): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000:  error: package com.google.android.ump.ConsentInformation does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000: 		com.google.android.ump.ConsentInformation.OnConsentInfoUpdateFailureListener
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(8,44): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000: 	public void onConsentInfoUpdateFailure (com.google.android.ump.FormError p0)
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(28,64): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000: 	private native void n_onConsentInfoUpdateFailure (com.google.android.ump.FormError p0);
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateFailureListenerImplementor.java(33,74): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000:  error: package com.google.android.ump.ConsentInformation does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000: 		com.google.android.ump.ConsentInformation.OnConsentInfoUpdateSuccessListener
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\ConsentInformation_OnConsentInfoUpdateSuccessListenerImplementor.java(8,44): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000:  error: package com.google.android.ump.UserMessagingPlatform does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000: 		com.google.android.ump.UserMessagingPlatform.OnConsentFormLoadFailureListener
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(8,47): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000: 	public void onConsentFormLoadFailure (com.google.android.ump.FormError p0)
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(28,62): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000: 	private native void n_onConsentFormLoadFailure (com.google.android.ump.FormError p0);
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadFailureListenerImplementor.java(33,72): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000:  error: package com.google.android.ump.UserMessagingPlatform does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000: 		com.google.android.ump.UserMessagingPlatform.OnConsentFormLoadSuccessListener
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(8,47): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000: 	public void onConsentFormLoadSuccess (com.google.android.ump.ConsentForm p0)
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(28,62): javac.exe error JAVAC0000:
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000:  error: package com.google.android.ump does not exist
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000: 	private native void n_onConsentFormLoadSuccess (com.google.android.ump.ConsentForm p0);
1>obj\Debug\net6.0-android\android\src\mono\com\google\android\ump\UserMessagingPlatform_OnConsentFormLoadSuccessListenerImplementor.java(33,72): javac.exe error JAVAC0000

@tipa
Copy link
Contributor

tipa commented Jun 15, 2022

Hitting the same issue, would appreciate a fix :)

@tipa
Copy link
Contributor

tipa commented Jun 25, 2022

I was able to work around this issue by adding the following to my csproj file:

    <ItemGroup>
        <AndroidLibrary Include="Dependencies\user-messaging-platform-2.0.0.aar" Bind="false" />
    </ItemGroup>

I got the file user-messaging-platform-2.0.0.aar from the Maven repository using gradle, but you could probably download it manually.

Unfortunately, the app crashes at runtime now with Failed resolution of: Lcom/google/android/datatransport/Transformer but that's a separate problem.

This is not working for me unfortunately, I still get these build errors:
image

@moljac
Copy link
Member

moljac commented Aug 10, 2022

Try updating to latest package versions and please report here if the new packages fixed the issue.

Thanks.

@tipa
Copy link
Contributor

tipa commented Aug 10, 2022

It appears to have fixed the issue, thank you!

@moljac
Copy link
Member

moljac commented Aug 10, 2022

It appears to have fixed the issue, thank you!

Thanks to other team members. BuildActions caused issues with packaging for net6.

@moljac moljac closed this as completed Sep 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants