-
Notifications
You must be signed in to change notification settings - Fork 555
[workload] Add Microsoft.Android.Runtimes framework #10038
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
Conversation
A new "architecture-less" runtime pack has been added to distribute Mono.Android.dll and other assets that are not architecture specific. To support this, a new `Microsoft.Android.Runtimes` FrameworkReference has been added to include our architecture specific runtime packs. The existing `Microsoft.Android` FrameworkReference will bring in the new runtime pack.
@jonathanpeppers I haven't yet sorted out why |
...ndroid.Build.Tasks/Microsoft.Android.Sdk/in/Microsoft.Android.Sdk.BundledVersions.in.targets
Outdated
Show resolved
Hide resolved
Assuming the latest tests look good I think this should mostly be good to go |
Rough workload pack compressed size change summary with changes to ship only one Mono.Android.dll:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With the size saving, could we just put the NativeAOT/CoreCLR packs in the workload:
android/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.json
Lines 6 to 16 in d3483bc
"packs": [ | |
"Microsoft.Android.Sdk.net10", | |
"Microsoft.Android.Sdk.net9", | |
"Microsoft.Android.Ref.36", | |
"Microsoft.Android.Runtime.36.android", | |
"Microsoft.Android.Runtime.Mono.36.android-arm", | |
"Microsoft.Android.Runtime.Mono.36.android-arm64", | |
"Microsoft.Android.Runtime.Mono.36.android-x86", | |
"Microsoft.Android.Runtime.Mono.36.android-x64", | |
"Microsoft.Android.Templates" | |
], |
These were restoring on the first build, but if they are so small now let's just install them to avoid messing with feeds for nightly builds?
Otherwise, this looks good to me, can it be taken out of draft? 😄
One other thing worth noting for our future selves, when .NET 11 comes around I think we'll need to update this section to also include this new android/src/Xamarin.Android.Build.Tasks/Microsoft.NET.Sdk.Android/WorkloadManifest.in.targets Lines 13 to 19 in aa0485f
|
Context: dotnet/sdk#24077
A new "architecture-less" runtime pack has been added to distribute
Mono.Android.dll and other assemblies that are not architecture specific.
To support this, a new
Microsoft.Android.Runtimes
FrameworkReferencehas been added to include our architecture specific runtime packs. The
existing
Microsoft.Android
FrameworkReference has been updated tobring in the new runtime pack instead.
Shipping only one copy of Mono.Android.dll should cut down our workload
size by nearly 100MB compressed, and even more on disk.
With the size reductions the CoreCLR and NativeAOT runtime packs will
now be installed by the workload by default to avoid the need to
configure custom feeds to get these packs.