Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
En .NET para Android no hay técnicamente ninguna distinción entre una aplicación y un proyecto de enlaces, por lo que estas propiedades funcionarán en ambos. En la práctica, se recomienda crear proyectos de aplicación y enlaces independientes. Las propiedades de compilación que se usan principalmente en los proyectos de aplicación se documentan en la guía de referencia de propiedades de MSBuild.
Propiedades de compilación
| Propiedad | Valor predeterminado | Descripción |
|---|---|---|
AndroidBoundInterfacesContainConstants |
true |
Propiedad booleana que especifica si se admitirán constantes de enlace en interfaces o si se usará la solución alternativa heredada para crear una IMyInterfaceConsts clase.Documentación |
AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods |
true |
Una propiedad booleana que especifica si se admitirán miembros predeterminados y estáticos en interfaces, o bien se usará la solución alternativa heredada para crear una clase del mismo nivel que contenga miembros estáticos como abstract class MyInterface .Documentación |
AndroidBoundInterfacesContainTypes |
true |
Propiedad booleana que especifica si se admitirán tipos anidados en interfaces o la solución alternativa heredada de crear un tipo no anidado como IMyInterfaceMyNestedClass se usará.Documentación |
AndroidEnableObsoleteOverrideInheritanceAgregado en .NET 8 |
true |
Propiedad booleana que especifica si los métodos enlazados que invalidan @Deprecated los métodos de Java se marcan automáticamente como @Deprecated.Documentación |
AndroidEnableRestrictToAttributesAgregado en .NET 8 |
obsolete |
Propiedad de estilo de enumeración con valores válidos de obsolete y disable que especifica si el atributo .NET [Obsolete] se agrega a la API enlazada marcada con @RestrictTo en una biblioteca de Java.Documentación |
AndroidJavadocVerbosity |
intellisense |
Una propiedad de estilo de enumeración con valores intellisense válidos y full que especifica cómo deben ser comentarios de documentación XML de C# "detallados" al importar documentación de Javadoc en proyectos de enlace mediante la @(JavaSourceJar) acción de compilación.Documentación |
AndroidBoundInterfacesContainConstants
Propiedad booleana que especifica si se admitirán constantes de enlace en interfaces o si se usará la solución alternativa heredada para crear una IMyInterfaceConsts clase.
El valor predeterminado es true.
Esto solo se recomienda si se intenta mantener la compatibilidad de api pública con una biblioteca de enlaces heredada creada antes de que se publicara C# 8.
AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods
Una propiedad booleana que especifica si se admitirán los miembros predeterminados y estáticos en las interfaces, o si se usará la solución alternativa heredada para crear una clase del mismo nivel que contenga miembros estáticos como abstract class MyInterface .
El valor predeterminado es true.
Esto solo se recomienda si se intenta mantener la compatibilidad de api pública con una biblioteca de enlaces heredada creada antes de que se publicara C# 8.
AndroidBoundInterfacesContainTypes
Una propiedad booleana que especifica si se admitirán tipos anidados en interfaces o si se usará la solución alternativa heredada para crear un tipo no anidado como IMyInterfaceMyNestedClass .
El valor predeterminado es true.
Esto solo se recomienda si se intenta mantener la compatibilidad de api pública con una biblioteca de enlaces heredada creada antes de que se publicara C# 8.
AndroidEnableRestrictToAttributes
Propiedad de estilo de enumeración con valores válidos de obsolete y disable que controla si el atributo .NET [Obsolete] se agrega a la API enlazada marcada con @RestrictTo en una biblioteca de Java.
Esta propiedad se establece obsolete en de forma predeterminada.
Cuando se establece obsoleteen , los tipos y los miembros marcados con la anotación androidx.annotation.RestrictTo de Java o que están en paquetes de Java no exportados se marcarán con un [Obsolete] atributo en el enlace de C#.
Este [Obsolete] atributo tiene un mensaje descriptivo que explica que el propietario del paquete de Java considera que la API es "interna" y advierte sobre su uso.
Este atributo también tiene un código XAOBS001 de advertencia personalizado para que se pueda suprimir independientemente de la API obsoleta "normal".
Cuando se establece disableen , la API se generará como normal sin atributos adicionales. (Este es el mismo comportamiento que antes de .NET 8).
La adición [Obsolete] de atributos en lugar de quitar automáticamente la API se ha realizado para conservar la compatibilidad de api con los paquetes existentes. Si prefiere quitar miembros que tienen la @RestrictTo anotación o están en paquetes java no exportados, puede usar metadatos además de esta propiedad para evitar que estos tipos se enlacen:
<remove-node path="//*[@annotated-visibility]" />
Se ha agregado compatibilidad con esta propiedad en .NET 8.
AndroidEnableObsoleteOverrideInheritance
Propiedad booleana que especifica si los métodos enlazados que invalidan @Deprecated los métodos de Java se marcan automáticamente como @Deprecated.
Es muy poco frecuente que necesite cambiar esta propiedad.
Se ha agregado compatibilidad con esta propiedad en .NET 8.
AndroidJavadocVerbosity
Una propiedad de estilo de enumeración con valores intellisense válidos y full que especifica cómo deben ser comentarios de documentación XML de C# "detallados" al importar documentación de Javadoc en proyectos de enlace mediante la @(JavaSourceJar) acción de compilación.
Esta propiedad se establece intellisense en de forma predeterminada.
intellisense: solo emite los comentarios XML:<exception/>,<param/>,<returns/>,<summary/>.full: emita elementos enumeradosintellisense, así como<remarks/>,<seealso/>y cualquier otra cosa que sea compatible.