CARVIEW |
Select Language
HTTP/2 200
date: Tue, 29 Jul 2025 21:59:17 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/dotnet/maui.git
etag: W/"ba9a409364c309af0629a120cf6737e5"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=1dzx5Zh%2BaNA%2F58liFQbfzZ7rKQj9yPdHCUnYmaIjZtIBt4Nzw37J2BgGRsC%2BR4YTLRO%2FSA26CJVmmCtclhI%2BV7XlYl4IMmgeE70mT67upq9c9lU5%2BPckYKp7BXoQlrXoHv0mIeFcpzfLrV%2FgstXBYLxbcBt8zjZT9IzY8lhSNCTVfIiouZRc3Z6XegBcA7lbhutsuKCgyyMqqYWNtd6cqVdgnlT%2B%2FV2vbYJFsPHUJuwcY9DNhn1uz7wpSm4ah0sOLmHFNRUhiFt0u9TMmVrmrQ%3D%3D--gvhfuJ9NBCaM42sM--6CfZitb08p%2BF1ZEPyI8pRQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.500679652.1753826357; Path=/; Domain=github.com; Expires=Wed, 29 Jul 2026 21:59:17 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Wed, 29 Jul 2026 21:59:17 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 8A82:1A4ED6:AC9C0:F53BE:68894435
[android] add AOT profile for .NET MAUI (#2496) · dotnet/maui@7dcc01a · GitHub
Copy file name to clipboardExpand all lines: .nuspec/Microsoft.Maui.Controls.targets
Copy file name to clipboardExpand all lines: src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj
Copy file name to clipboard
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Commit 7dcc01a
authored
[android] add AOT profile for .NET MAUI (#2496)
Context: dotnet/android@3e699d6
Context: https://github.com/jonathanpeppers/android-profiled-aot
Add a `maui.aotprofile`, and bundle with .NET MAUI. Recording custom
profiles is not supported by dotnet/runtime, but it can be done
following the instructions in the jonathanpeppers/android-profiled-aot
repo.
To ship an AOT Profile for MAUI:
1. Default `$(AndroidUseDefaultAotProfile)` to `false`, so the plain
Android profile is not used. The default Android profile only
contains methods in AndroidX, Mono.Android.dll, Java.Interop.dll, etc.
2. Default `@(AndroidAotProfile)` to `maui.aotprofile`, unless
`$(MauiUseDefaultAotProfile)` is `false`.
~~ Profile Contents ~~
Modules:
EA3844FC-D728-4D48-9598-1C93505E4623 System.Private.CoreLib
2CC403AF-60DC-48A9-9B69-FF254277AEA0 Mono.Android
92FF7068-2EA9-4681-B340-44E91077417A Java.Interop
3E65EB5C-02E9-4DE5-AC19-B2F2BAF2857B Microsoft.Maui.Essentials
21CF52B7-0256-4838-848C-DA026B2F1789 Xamarin.AndroidX.Core
35358E14-E381-4472-858E-ABFD81B3517C Microsoft.Maui
5A334DAA-789C-421E-9B20-F1B66879BF49 Microsoft.Extensions.Hosting
C3C04DA6-9F0C-48FD-83EA-115CB6076248 Microsoft.Extensions.DependencyInjection
1CC454CF-BE07-4D95-B1E7-3EFC458F943C Microsoft.Extensions.DependencyInjection.Abstractions
229E3EBA-F00D-40DF-BEB8-4C16CB84DE98 Microsoft.Extensions.Configuration.Abstractions
CCAA9BA7-D5D3-47EC-8FBB-DED7D6FC2143 Microsoft.Extensions.Configuration
981BD5D2-69A5-4C0B-A258-50BB28365D5B Microsoft.Extensions.Primitives
C674A867-6352-482C-9A7A-0272480711AC Microsoft.Extensions.Hosting.Abstractions
1D537869-4CC1-4E6D-B0BF-6ABEA40ADF8B Microsoft.Extensions.Configuration.FileExtensions
3C68719B-EA9F-48EC-86D7-2EE85CDA2272 Microsoft.Extensions.FileProviders.Physical
0D1C05F9-FFB8-4A75-A24E-6C17893B53F7 System.Linq
DCE2ADDD-008E-43B4-B1D6-3CCA222678FF Microsoft.Extensions.Logging
C9E0059C-3CE2-4B91-BE1D-808EF93495C3 Microsoft.Extensions.Options
8A3A36B0-0D51-4CF6-A5F0-2E1EF0A01648 Microsoft.Extensions.Logging.Abstractions
DDC70C0B-3BAA-4844-8401-65EA77FBDDDC Microsoft.Extensions.Logging.Configuration
28AB2955-BA00-4EAC-90B6-4E31F4826D75 Microsoft.Extensions.Options.ConfigurationExtensions
BC607A7F-080C-424F-8A37-011B30F6DE55 Microsoft.Extensions.Logging.Console
1BDE760B-6269-47BC-9BF5-6B44DC9CC032 Microsoft.Extensions.Logging.Debug
9D7AA4B2-70B7-4329-A099-BE5F3B8FE0A4 Microsoft.Extensions.Logging.EventSource
DF5F5616-FA06-46C0-8025-6DA20BB34CEC Microsoft.Maui.Controls.Compatibility
63B89754-AAED-4092-9FDE-E50EB969DE1B MauiApp1
1F1E6C61-F9BC-488D-9EC4-335D0D5A0800 Microsoft.Maui.Graphics
38104510-26A0-4B40-8542-80153806B860 System.Diagnostics.DiagnosticSource
F7E05AD1-4195-4539-B3AD-487030D94748 System.Collections.Concurrent
2795C489-C1E7-40BC-ACF2-B84C11F67B47 Microsoft.Extensions.Configuration.Binder
F26C0583-5BFE-4B78-BC65-84547BAA9F75 System.Runtime.InteropServices.RuntimeInformation
404F6169-7356-4D95-BD9A-3A5C7D88BD6E System.Console
CD148B87-3553-48A2-8853-CEC72437F2A2 Microsoft.Maui.Controls
99F9B89D-EF4E-4F6B-B785-56AFD6E37113 Microsoft.Maui.Controls.Xaml
1B55562C-5DD7-4779-8473-8B4558C8D065 System.ComponentModel.TypeConverter
43402C13-3212-4B9C-8A1C-0BA8C6AC6F29 System.ObjectModel
8766384A-BB06-42DA-810C-B5B2B0D7C971 System.Private.Xml
82E0E2F3-002E-4780-BEC2-E230299A5ED2 System.Private.Uri
7CEE6098-BE9F-4043-B35A-B8B0684EF0CB Xamarin.AndroidX.AppCompat
20D1FBB8-829A-4618-8E82-8047C8827EA8 Xamarin.AndroidX.Fragment
CC363D7A-9CDB-4999-9E10-279412B14A1B Xamarin.AndroidX.Activity
008C0F24-5014-4D41-AAB9-DDFCEA59E171 Xamarin.Google.Android.Material
Summary:
Modules: 42
Types: 1,234
Methods: 5,030
~~ Results ~~
All tests:
1. Were running on a [Google Pixel 5][0], and
2. Enabled two architectures, arm64 and x86, and
3. **JIT time** was average of 10 runs with `-c Release`, no AOT
4. **AOT time** was average of 10 runs with `-c Release
-p:RunAOTCompilation=true`, with the`Activity: Displayed` time
5. **Profiled AOT time** was average of 10 runs with `-c Release
-p:RunAOTCompilation=true -p:AndroidEnableProfiledAot=true` with
the `Activity: Displayed` time.
| | [AndroidApp1][1] | [MauiApp1][2] |
| ----------------------------------: | ------------------: | ----------------: |
| JIT startup time (s) | 00:00.4387 | 00:01.4205 |
| AOT startup time (vs. JIT) | 00:00.3317 ( 76%) | 00:00.7285 ( 51%) |
| Profiled AOT startup time (vs. JIT) | 00:00.3093 ( 71%) | 00:00.7098 ( 50%) |
| JIT `.apk` size (B) | 9,155,954 | 17,435,225 |
| AOT `.apk` size (vs. JIT) | 12,755,672 (139%) | 44,751,651 (257%) |
| Profiled AOT `.apk` size (vs. JIT) | 9,777,880 (107%) | 23,210,787 (133%) |
[0]: store.google.com/us/product/pixel_5_specs?hl=en-US
[1]: jonathanpeppers/android-profiled-aot@e48c6df/AndroidApp1
[2]: jonathanpeppers/android-profiled-aot@e48c6df/MauiApp11 parent 66cc324 commit 7dcc01aCopy full SHA for 7dcc01a
File tree
Expand file treeCollapse file tree
3 files changed
+6
-0
lines changedFilter options
- .nuspec
- src/Controls/src/Build.Tasks
Expand file treeCollapse file tree
3 files changed
+6
-0
lines changed.nuspec/Microsoft.Maui.Controls.targets
Copy file name to clipboardExpand all lines: .nuspec/Microsoft.Maui.Controls.targets+5Lines changed: 5 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
10 | 10 |
| |
11 | 11 |
| |
12 | 12 |
| |
| 13 | + | |
13 | 14 |
| |
14 | 15 |
| |
15 | 16 |
| |
| |||
24 | 25 |
| |
25 | 26 |
| |
26 | 27 |
| |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
27 | 32 |
| |
28 | 33 |
| |
29 | 34 |
| |
|
src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj
Copy file name to clipboardExpand all lines: src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj+1Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
65 | 65 |
| |
66 | 66 |
| |
67 | 67 |
| |
| 68 | + | |
68 | 69 |
| |
69 | 70 |
| |
70 | 71 |
| |
|
src/Controls/src/Build.Tasks/maui.aotprofile
Copy file name to clipboard478 KB
Binary file not shown.
You can’t perform that action at this time.
0 commit comments