File tree Expand file tree Collapse file tree 7 files changed +42
-24
lines changed
Documentation/guides/building-apps
src/Xamarin.Android.Build.Tasks
Microsoft.Android.Sdk/targets
Tests/Xamarin.ProjectTools/Resources/Base Expand file tree Collapse file tree 7 files changed +42
-24
lines changed Original file line number Diff line number Diff line change @@ -430,6 +430,16 @@ documentation on [D8 and R8][d8-r8].
430430[ dex ] : https://source.android.com/devices/tech/dalvik/dalvik-bytecode
431431[ d8-r8 ] : https://github.com/xamarin/xamarin-android/blob/main/Documentation/guides/D8andR8.md
432432
433+ ## AndroidEmitLegacyInterfaceInvokers
434+
435+ A boolean property that determines whether or not "legacy" interface invokers are generated.
436+ This should only be done if using the new optimizerd interface invoker infrastructure results
437+ in build failures.
438+
439+ The default value is ` False ` , and more optimized interface invokers are generated.
440+
441+ Added in .NET 9.0.
442+
433443## AndroidEnableDesugar
434444
435445A boolean property that
Original file line number Diff line number Diff line change @@ -108,6 +108,7 @@ It is shared between "legacy" binding projects and .NET 5 projects.
108108 ToolPath =" $(_BindingsToolsLocation)"
109109 ToolExe =" $(BindingsGeneratorToolExe)"
110110 LangVersion =" $(LangVersion)"
111+ EmitLegacyInterfaceInvokers =" $(AndroidEmitLegacyInterfaceInvokers)"
111112 EnableBindingStaticAndDefaultInterfaceMethods =" $(AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods)"
112113 EnableBindingNestedInterfaceTypes =" $(AndroidBoundInterfacesContainTypes)"
113114 EnableBindingInterfaceConstants =" $(AndroidBoundInterfacesContainConstants)"
Original file line number Diff line number Diff line change 3939 <AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods Condition =" '$(AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods)' == '' " >true</AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods >
4040 <AndroidBoundInterfacesContainTypes Condition =" '$(AndroidBoundInterfacesContainTypes)' == '' " >true</AndroidBoundInterfacesContainTypes >
4141 <AndroidBoundInterfacesContainConstants Condition =" '$(AndroidBoundInterfacesContainConstants)' == '' " >true</AndroidBoundInterfacesContainConstants >
42+ <AndroidEmitLegacyInterfaceInvokers Condition =" '$(AndroidEmitLegacyInterfaceInvokers)' == '' " >false</AndroidEmitLegacyInterfaceInvokers >
4243 <AndroidEnableObsoleteOverrideInheritance Condition =" '$(AndroidEnableObsoleteOverrideInheritance)' == '' " >true</AndroidEnableObsoleteOverrideInheritance >
4344 <AndroidEnableRestrictToAttributes Condition =" '$(AndroidEnableRestrictToAttributes)' == '' " >obsolete</AndroidEnableRestrictToAttributes >
4445
Original file line number Diff line number Diff line change @@ -48,6 +48,8 @@ public class BindingsGenerator : AndroidDotnetToolTask
4848
4949 public string LangVersion { get ; set ; }
5050
51+ public bool EmitLegacyInterfaceInvokers { get ; set ; }
52+
5153 public bool EnableBindingStaticAndDefaultInterfaceMethods { get ; set ; }
5254 public bool EnableBindingNestedInterfaceTypes { get ; set ; }
5355 public bool EnableBindingInterfaceConstants { get ; set ; }
@@ -209,6 +211,10 @@ protected override string GenerateCommandLineCommands ()
209211 if ( SupportsCSharp8 ) {
210212 var features = new List < string > ( ) ;
211213
214+ if ( EmitLegacyInterfaceInvokers ) {
215+ features . Add ( "emit-legacy-interface-invokers" ) ;
216+ }
217+
212218 if ( EnableBindingInterfaceConstants )
213219 features . Add ( "interface-constants" ) ;
214220
Original file line number Diff line number Diff line change 88 "Size": 1024
99 },
1010 "assemblies/Java.Interop.dll": {
11- "Size": 61886
11+ "Size": 61350
1212 },
1313 "assemblies/Mono.Android.dll": {
14- "Size": 88044
14+ "Size": 90818
1515 },
1616 "assemblies/Mono.Android.Runtime.dll": {
17- "Size": 5509
17+ "Size": 5514
1818 },
1919 "assemblies/rc.bin": {
20- "Size": 1395
20+ "Size": 1512
2121 },
2222 "assemblies/System.Console.dll": {
23- "Size": 6400
23+ "Size": 6536
2424 },
2525 "assemblies/System.Linq.dll": {
26- "Size": 9199
26+ "Size": 7118
2727 },
2828 "assemblies/System.Private.CoreLib.dll": {
29- "Size": 550507
29+ "Size": 550324
3030 },
3131 "assemblies/System.Runtime.dll": {
32- "Size": 2621
32+ "Size": 2614
3333 },
3434 "assemblies/System.Runtime.InteropServices.dll": {
35- "Size": 3858
35+ "Size": 3851
3636 },
3737 "assemblies/UnnamedProject.dll": {
38- "Size": 2933
38+ "Size": 2932
3939 },
4040 "classes.dex": {
41- "Size": 377064
41+ "Size": 377956
4242 },
4343 "lib/arm64-v8a/libmono-component-marshal-ilgen.so": {
4444 "Size": 97080
4545 },
4646 "lib/arm64-v8a/libmonodroid.so": {
47- "Size": 325320
47+ "Size": 334784
4848 },
4949 "lib/arm64-v8a/libmonosgen-2.0.so": {
50- "Size": 3189360
50+ "Size": 3193200
5151 },
5252 "lib/arm64-v8a/libSystem.IO.Compression.Native.so": {
5353 "Size": 723560
5454 },
5555 "lib/arm64-v8a/libSystem.Native.so": {
56- "Size": 93920
56+ "Size": 93952
5757 },
5858 "lib/arm64-v8a/libSystem.Security.Cryptography.Native.Android.so": {
5959 "Size": 154904
6060 },
6161 "lib/arm64-v8a/libxamarin-app.so": {
62- "Size": 11576
62+ "Size": 11648
6363 },
6464 "META-INF/BNDLTOOL.RSA": {
65- "Size": 1213
65+ "Size": 1221
6666 },
6767 "META-INF/BNDLTOOL.SF": {
6868 "Size": 3037
Original file line number Diff line number Diff line change 1111 "Size": 7112
1212 },
1313 "assemblies/Java.Interop.dll": {
14- "Size": 70036
14+ "Size": 69472
1515 },
1616 "assemblies/Mono.Android.dll": {
17- "Size": 471216
17+ "Size": 447387
1818 },
1919 "assemblies/Mono.Android.Runtime.dll": {
20- "Size": 5506
20+ "Size": 5514
2121 },
2222 "assemblies/mscorlib.dll": {
2323 "Size": 3852
206206 "Size": 42282
207207 },
208208 "classes.dex": {
209- "Size": 3513140
209+ "Size": 3514468
210210 },
211211 "lib/arm64-v8a/libmono-component-marshal-ilgen.so": {
212212 "Size": 97080
213213 },
214214 "lib/arm64-v8a/libmonodroid.so": {
215- "Size": 325320
215+ "Size": 334784
216216 },
217217 "lib/arm64-v8a/libmonosgen-2.0.so": {
218218 "Size": 3193200
227227 "Size": 154904
228228 },
229229 "lib/arm64-v8a/libxamarin-app.so": {
230- "Size": 102840
230+ "Size": 102888
231231 },
232232 "META-INF/android.support.design_material.version": {
233233 "Size": 12
19161916 "Size": 325240
19171917 }
19181918 },
1919- "PackageSize": 7973902
1919+ "PackageSize": 7949326
19201920}
You can’t perform that action at this time.
0 commit comments