[android] fix Android
namespace conflicts
#28771
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context: dotnet/android#9973
We introduced a new
internal
type inMono.Android.dll
:Causes various C# compiler errors in dotnet/maui:
At some point in .NET 10 (or future), we will likely introduce a public type in
Microsoft.Android
namespace.This means MAUI's codebase will need to be fixed in a .NET 10 timeframe, so instead of:
This works:
Because the
using Android.Content;
directive is scoped outside of aMicrosoft.*
namespace.We don't anticipate this to be a problem with customers, because they aren't writing code in
Microsoft.*
namespaces.I generally took the approach:
Use
using Android.Content;
if possible.Use
global::
if that caused other conflicts.Use
using AView = Android.Views.View;
in Microsoft.Maui.Controls or other places this is commonly used.Update
#if __ANDROID__
to#if ANDROID
in a few places.