Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
In .NET für Android gibt es technisch keinen Unterschied zwischen einer Anwendung und einem Bindungsprojekt, sodass diese Eigenschaften in beiden funktionieren. In der Praxis wird dringend empfohlen, separate Anwendungs- und Bindungsprojekte zu erstellen. Buildeigenschaften, die in erster Linie in Anwendungsprojekten verwendet werden, werden im Referenzhandbuch für MSBuild-Eigenschaften dokumentiert.
Build-Eigenschaften
| Eigenschaft | Voreinstellung | Beschreibung |
|---|---|---|
AndroidBoundInterfacesContainConstants |
true |
Eine boolesche Eigenschaft, die angibt, ob Bindungskonstanten für Schnittstellen unterstützt werden oder ob die Legacy-Problemumgehung zum Erstellen einer IMyInterfaceConsts-Klasse verwendet wird.Dokumentation |
AndroidBoundInterfacesContainStaticAndDefaultInterfaceMethods |
true |
Eine boolesche Eigenschaft, die angibt, ob Standard- und statische Member in Schnittstellen unterstützt werden oder ob die herkömmliche Problemumgehung zum Erstellen einer gleichgeordneten Klasse, die statische Member wie abstract class MyInterface enthält, verwendet wird.Dokumentation |
AndroidBoundInterfacesContainTypes |
true |
Eine boolesche Eigenschaft, die angibt, ob typen, die in Schnittstellen geschachtelt sind, unterstützt werden, oder die legacy-Problemumgehung zum Erstellen eines nicht geschachtelten Typs, der IMyInterfaceMyNestedClass verwendet wird.Dokumentation |
AndroidEnableObsoleteOverrideInheritanceHinzugefügt in .NET 8 |
true |
Eine boolesche Eigenschaft, die angibt, ob gebundene Methoden, die Java-Methoden überschreiben@Deprecated, automatisch als @Deprecated gekennzeichnet werden.Dokumentation |
AndroidEnableRestrictToAttributesHinzugefügt in .NET 8 |
obsolete |
Eine Enumerationseigenschaft mit den gültigen Werten obsolete und disable, die angibt, ob das .NET-Attribut [Obsolete] zur API hinzugefügt wird, die mit @RestrictTo in einer Java-Bibliothek markiert ist.Dokumentation |
AndroidJavadocVerbosity |
intellisense |
Eine Enumerationseigenschaft mit gültigen Werten intellisense und full, die angibt, wie ausführlich die C#-XML-Dokumentationskommentare beim Importieren der Javadoc-Dokumentation innerhalb von Bindungsprojekten mithilfe der @(JavaSourceJar) Build-Aktion sein sollen.Dokumentation |
AndroidBoundInterfacesContainConstants
Eine boolesche Eigenschaft, die angibt, ob Bindungskonstanten für Schnittstellen unterstützt werden oder ob die veraltete Problemlösung verwendet wird, eine IMyInterfaceConsts Klasse zu erstellen.
Der Standardwert ist true.
Dies wird nur empfohlen, wenn Sie versuchen, die Kompatibilität der öffentlichen API mit einer Legacybindungsbibliothek zu verwalten, die vor der Veröffentlichung von C# 8 erstellt wurde.
Android-gebundene Schnittstellen enthalten statische und Standardmethoden in Schnittstellen
Eine boolesche Eigenschaft, die angibt, ob Standard- und statische Member auf Schnittstellen unterstützt werden oder ob die veraltete Problemumgehung verwendet wird, bei der eine gleichgeordnete Klasse mit statischen Mitgliedern wie abstract class MyInterface erstellt wird.
Der Standardwert ist true.
Dies wird nur empfohlen, wenn Sie versuchen, die Kompatibilität der öffentlichen API mit einer Legacybindungsbibliothek zu verwalten, die vor der Veröffentlichung von C# 8 erstellt wurde.
AndroidBoundInterfacesContainTypes
Eine boolean-Eigenschaft, die spezifiziert, ob Typen, die in Schnittstellen geschachtelt sind, unterstützt werden, oder ob die Legacy-Problemumgehung zum Erstellen eines nicht geschachtelten Typs wie IMyInterfaceMyNestedClass verwendet werden soll.
Der Standardwert ist true.
Dies wird nur empfohlen, wenn Sie versuchen, die Kompatibilität der öffentlichen API mit einer Legacybindungsbibliothek zu verwalten, die vor der Veröffentlichung von C# 8 erstellt wurde.
AndroidEnableRestrictToAttributes
Eine Eigenschaft im Enum-Stil mit den gültigen Werten obsolete und disable, die steuert, ob das .NET-Attribut [Obsolete] der gebundenen API hinzugefügt wird, das mit @RestrictTo in einer Java-Bibliothek gekennzeichnet ist.
Diese Eigenschaft ist auf obsolete standardmäßig festgelegt.
Bei Festlegung auf obsolete, werden Typen und Member, die mit der Java-Anmerkung androidx.annotation.RestrictTogekennzeichnet sind oder sich in nicht exportierten Java-Paketen befinden, mit einem [Obsolete] Attribut in der C#-Bindung gekennzeichnet.
Dieses [Obsolete] Attribut enthält eine beschreibende Meldung, in der erläutert wird, dass der Java-Paketbesitzer die API als "intern" betrachtet und warnt gegen die Verwendung.
Dieses Attribut verfügt auch über einen benutzerdefinierten Warnungscode XAOBS001 , sodass es unabhängig von der "normalen" veralteten API unterdrückt werden kann.
Bei Festlegung auf disable" wird die API ohne zusätzliche Attribute als normal generiert. (Dies ist das gleiche Verhalten wie vor .NET 8.)
Das Hinzufügen von [Obsolete] Attributen anstelle der automatischen Entfernung der API wurde durchgeführt, um die API-Kompatibilität mit vorhandenen Paketen beizubehalten. Wenn Sie stattdessen Elemente entfernen möchten, die über die @RestrictTo Anmerkung verfügen oder sich in nicht exportierten Java-Paketen befinden, können Sie zusätzlich zu dieser Eigenschaft Metadaten verwenden, um zu verhindern, dass diese Typen gebunden werden:
<remove-node path="//*[@annotated-visibility]" />
Unterstützung für diese Eigenschaft wurde in .NET 8 hinzugefügt.
AndroidEnableObsoleteOverrideInheritance
Eine boolesche Eigenschaft, die angibt, ob gebundene Methoden, die Java-Methoden überschreiben@Deprecated, automatisch als @Deprecated gekennzeichnet werden.
Es ist äußerst selten, diese Eigenschaft zu ändern.
Unterstützung für diese Eigenschaft wurde in .NET 8 hinzugefügt.
AndroidJavadocVerbosity
Eine Enumerationseigenschaft mit gültigen Werten intellisense und full, die angibt, wie ausführlich die C#-XML-Dokumentationskommentare beim Importieren der Javadoc-Dokumentation innerhalb von Bindungsprojekten mithilfe der @(JavaSourceJar) Build-Aktion sein sollen.
Diese Eigenschaft ist auf intellisense standardmäßig festgelegt.
-
intellisense: Geben Sie nur die XML-Kommentare aus:<exception/>,<param/>,<returns/>, .<summary/> -
full: Emittieren Sie aufgelisteteintellisense-Elemente sowie<remarks/>,<seealso/>und alles andere, was unterstützt werden kann.