|
3 | 3 | <SupportedOSPlatformVersion>33.0</SupportedOSPlatformVersion> |
4 | 4 | <RuntimeIdentifiers>android-arm64</RuntimeIdentifiers> |
5 | 5 | <AndroidPackageFormat>apk</AndroidPackageFormat> |
6 | | - <MandroidI18n>CJK;West;</MandroidI18n> |
| 6 | + <MandroidI18n>CJK;Mideast;Rare;West;Other;</MandroidI18n> |
7 | 7 | <AndroidHttpClientHandlerType>Xamarin.Android.Net.AndroidMessageHandler</AndroidHttpClientHandlerType> |
8 | 8 | <!-- NullabilityInfoContextSupport is disabled by default for Android --> |
9 | 9 | <NullabilityInfoContextSupport>true</NullabilityInfoContextSupport> |
|
15 | 15 | </PropertyGroup> |
16 | 16 | <!-- Patch NuGet-provided .so files that ship with 4 KB ELF alignment to 16 KB. |
17 | 17 | See build/PatchElfPageSize.targets for details. |
| 18 | + TODO: Remove once ppy.Veldrid.SPIRV ships 16 KB-aligned native libraries. --> |
18 | 19 | <Import Project="$(MSBuildThisFileDirectory)build\PatchElfPageSize.targets" /> |
19 | 20 | <!-- Release-only optimisations: AOT for low-latency gameplay, trimming for smaller APK. |
20 | 21 | Suppress trim analysis warnings because the project uses reflection extensively |
21 | 22 | (Newtonsoft.Json, Realm, AutoMapper, RuntimeBinder). --> |
22 | 23 | <PropertyGroup Condition="'$(Configuration)' == 'Release'"> |
23 | 24 | <RunAOTCompilation>true</RunAOTCompilation> |
24 | 25 | <AndroidEnableProfiledAot>true</AndroidEnableProfiledAot> |
| 26 | + <SuppressTrimAnalysisWarnings>true</SuppressTrimAnalysisWarnings> |
25 | 27 | <PublishTrimmed>true</PublishTrimmed> |
26 | | - <TrimMode>partial</TrimMode> |
| 28 | + <TrimMode>link</TrimMode> |
27 | 29 | <AndroidLinkMode>SdkOnly</AndroidLinkMode> |
28 | 30 | <AndroidEnableResourceShrinking>true</AndroidEnableResourceShrinking> |
29 | | - <SuppressTrimAnalysisWarnings>true</SuppressTrimAnalysisWarnings> |
30 | 31 | </PropertyGroup> |
31 | 32 | <ItemGroup> |
32 | 33 | <!-- IMPORTANT: ppy.osu.Framework.Android v2026.318.0 only ships net8.0-android34.0 assets. |
|
41 | 42 | Since Realm objects are not declared directly in Android projects, simply disable Fody. --> |
42 | 43 | <DisableFody>true</DisableFody> |
43 | 44 | </PropertyGroup> |
44 | | - |
45 | | - <!-- WORKAROUND: Fix NativeAOT ILC failure on .NET 10 Android (early 2026 regression). |
46 | | - The SDK incorrectly stamps AssetType="runtime" on non-DLL files (pdb, so, dbg) |
47 | | - in the runtime pack, causing the AOT compiler to fail with BadImageFormatException. |
48 | | - This target fixes the metadata before the SDK uses it. |
49 | | - See: https://github.com/dotnet/runtime/pull/126214 --> |
50 | | - <Target Name="FixRuntimePackAssetTypes" AfterTargets="_AddRuntimeLibsToPublishAssets" BeforeTargets="ComputeManagedAssembliesToCompileToNative"> |
51 | | - <ItemGroup> |
52 | | - <RuntimePackAsset Condition="'%(Extension)' != '.dll'"> |
53 | | - <AssetType>native</AssetType> |
54 | | - </RuntimePackAsset> |
55 | | - </ItemGroup> |
56 | | - </Target> |
57 | 45 | </Project> |
0 commit comments