Hello,
what you are running into is a classic NuGet dependency resolution conflict in Xamarin projects when using <PackageReference> instead of the older packages.config. The Play plugin you are trying to integrate likely depends on specific versions of Xamarin.AndroidX or Google Play Services libraries, while your corporate Xamarin baseline already pins different versions of those same assemblies. When MSBuild restores with <PackageReference>, it enforces a single version per package across the solution, so mismatches immediately break the build.
The first step is to inspect the exact error messages in your build output. They will usually show something like “Version conflict detected for Xamarin.AndroidX.Core. Installed: 1.9.0. Requested: 1.8.0 by Play.Plugin.” That tells you which package is pulling in the conflicting version. You can confirm by running dotnet restore --force-evaluate or checking the obj/project.assets.json file, which lists the resolved dependency graph.
Once you identify the conflict, the correct approach is to unify the versions across your solution. In practice, you add explicit <PackageReference> entries in your main project for the conflicting libraries, pinned to the highest version that satisfies all dependencies. For example:
xml
<ItemGroup>
<PackageReference Include="Xamarin.AndroidX.Core" Version="1.9.0" />
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="118.0.3" />
</ItemGroup>
This forces NuGet to resolve to those versions, and downstream packages will align. If the Play plugin is hard‑coded to an older version, you may need to update to a newer release of the plugin that supports the current AndroidX baseline. If no update exists, you can use a BindingRedirect equivalent in Xamarin by editing the .csproj and ensuring the AndroidXMigration tooling is enabled, but the cleanest solution is always to standardize on the latest supported versions.
Also, make sure your corporate Xamarin environment is using the latest Visual Studio and Xamarin workload updates. Older Xamarin.Android builds had incomplete support for <PackageReference> and would throw false conflicts. Updating to Visual Studio 2022 with the latest Xamarin.Android SDK resolves many of these issues.
In short: check the project.assets.json to see which packages are clashing, pin the versions explicitly in your .csproj, and update the Play plugin if necessary. That will stabilize your build and allow you to move forward with the proof‑of‑concept.
I hope you've found something useful here. If it helps you get more insight into the issue, it's appreciated to accept the answer. Should you have more questions, feel free to leave a message. Have a nice day!
Domic Vo.