Bind projektets MSBuild-objekt

Anmärkning

I .NET för Android finns det tekniskt sett ingen skillnad mellan ett program och ett bindningsprojekt, så dessa objekt fungerar i båda. I praktiken rekommenderar vi starkt att du skapar separata program- och bindningsprojekt. Byggobjekt som främst används i programprojekt dokumenteras i referensguiden för MSBuild-objekt .

Skapa objekt

Objekt Beskrivning
AndroidAdditionalJavaManifest
Har lagts till i .NET 9
Representerar ytterligare POM-filer som behövs för att verifiera Java-beroenden.

Dokumentation
AndroidIgnoredJavaDependency
Har lagts till i .NET 9
Representerar ett visst Java-beroende som ska ignoreras vid verifiering av Java-beroenden.

Dokumentation
AndroidJavaSource Representerar Java-källfiler (.java) som ska kompileras och inkluderas i projektet.

Dokumentation
AndroidLibrary Representerar en .jar/.aar fil som ska bindas av bindningsprojektet.

Dokumentation
AndroidMavenLibrary
Har lagts till i .NET 9
Representerar en .jar/.aar fil som ska laddas ned från en Maven-lagringsplats och bindas av bindningsprojektet.

Dokumentation
AndroidNamespaceReplacement Representerar en transformering som ska tillämpas på ett Java-paketnamn för att göra det resulterande hanterade namnområdet bättre anpassat efter .NET-konventioner.

Dokumentation
JavaSourceJar Representerar en Java-källkod.jar som API-dokumentationen ska importeras från.

Dokumentation

Inaktuella byggobjekt

Dessa MSBuild-objekt har blivit inaktuella. Även om de fortsätter att fungera rekommenderar vi att du migrerar till de nyare objekten i listan.

Objekt Beskrivning
AndroidAarLibrary
Inaktuell
Representerar en Android-fil .aar som ska ingå i projektutdata.

Dokumentation
AndroidJavaLibrary
Inaktuell
Representerar en Android-fil .jar som ska ingå i projektutdata.

Dokumentation
EmbeddedJar
Inaktuell
Representerar en Android-fil .jar som ska bindas och inkluderas i projektutdata.

Dokumentation
EmbeddedReferenceJar
Inaktuell
Representerar en Android-fil .jar som ska ingå i projektutdata.

Dokumentation
LibraryProjectZip
Inaktuell
Representerar en Android-fil .aar som ska ingå i projektutdata.

Dokumentation

AndroidAarLibrary

Det här byggobjektet är inaktuellt och ersätts av AndroidLibrary-objektet .

<!-- Deprecated -->
<AndroidAarLibrary Include="mylib.aar" />

<!-- Recommended -->
<AndroidLibrary Include="mylib.aar" />

Build-åtgärden AndroidAarLibrary bör användas för att direkt referera till .aar-filer. Den här byggåtgärden används oftast av Xamarin-komponenter. Det vill säga att inkludera referenser till .aar filer som krävs för att få Google Play och andra tjänster att fungera.

Filer med den här build-åtgärden behandlas på ett liknande sätt som de inbäddade resurserna som finns i biblioteksprojekt. .aar kommer att extraheras till den mellanliggande katalogen. Sedan inkluderas alla tillgångar, resurser och .jar filer i lämpliga objektgrupper.

AndroidAdditionalJavaManifest

<AndroidAdditionalJavaManifest> används tillsammans med Java Dependency Resolution.

Den används för att ange ytterligare POM-filer som behövs för att verifiera beroenden. Dessa är ofta överordnade eller importerade POM-filer som refereras av ett Java-biblioteks POM-fil.

<ItemGroup>
  <AndroidAdditionalJavaManifest Include="mylib-parent.pom" JavaArtifact="com.example:mylib-parent" JavaVersion="1.0.0" />
</ItemGroup>
Objektmetadatanamn Beskrivning
JavaArtifact Obligatorisk sträng. Grupp- och artefakt-ID för Java-biblioteket som matchar den specificerade POM-filen i formuläret {GroupId}:{ArtifactId}.
JavaVersion Obligatorisk sträng. Versionen av Java-biblioteket som matchar den angivna POM-filen.

Mer information finns i dokumentationen om Java-beroendehantering.

Stöd för det här byggobjektet introducerades i .NET 9.

AndroidIgnoredJavaDependency

<AndroidIgnoredJavaDependency> används tillsammans med Java Dependency Resolution.

Den används för att ange ett Java-beroende som ska ignoreras. Detta kan användas om ett beroende uppfylls på ett sätt som Java-beroendematchning inte kan identifiera.

<!-- Include format is {GroupId}:{ArtifactId} -->
<ItemGroup>
  <AndroidIgnoredJavaDependency Include="com.google.errorprone:error_prone_annotations" Version="2.15.0" />
</ItemGroup>
Objektmetadatanamn Beskrivning
Utgåva Obligatorisk sträng. Versionen av Java-biblioteket som matchar det angivna beroendet.

Mer information finns i dokumentationen om Java-beroendehantering.

Stöd för det här byggobjektet introducerades i .NET 9.

AndroidJavaLibrary

Det här byggobjektet är inaktuellt och ersätts av AndroidLibrary-objektet .

<!-- Deprecated -->
<AndroidJavaLibrary Include="mylib.jar" />

<!-- Recommended -->
<AndroidLibrary Include="mylib.jar" />

Filer med en Build-åtgärd av AndroidJavaLibrary är Java Archives ( .jar filer) som kommer att ingå i det slutliga Android-paketet.

AndroidJavaSource

AndroidJavaSource filer är Java-källkod som kommer att kompileras och ingå i det slutliga Android-paketet.

Från och med .NET 7 har alla **\*.java-filer i projektkatalogen automatiskt en åtgärd för byggnad på AndroidJavaSource, och kommer att bindas före assembly-byggandet. Gör att C#-kod enkelt kan använda typer och medlemmar som finns i **\*.java filerna.

Objektmetadatanamn Beskrivning
Bind Valfritt booleskt värde. Anger om Java-källfilen ska ha en C#-bindning genererad för den. Standardinställningen är true.

Stöd för det här byggobjektet introducerades i .NET 7.

Android-bibliotek

Representerar en .jar/.aar fil som ska bindas och inkluderas i projektet.

<ItemGroup>
  <AndroidLibrary Include="foo.jar" />
  <AndroidLibrary Include="bar.aar" />
</ItemGroup>
Objektmetadatanamn Beskrivning
Bind Valfritt booleskt värde. Anger om Java-biblioteket ska ha en C#-bindning genererad för den. Standardinställningen är true.
Packa Valfritt booleskt värde. Anger om Java-biblioteket ska ingå i projektutdata. Standardinställningen är true.

AndroidMavenLibrary

Representerar en .jar/.aar fil som ska laddas ned från en Maven-lagringsplats och bindas av bindningsprojektet.

Detta kan vara användbart för att förenkla underhållet av .NET för Android-bindningar för artefakter som finns i Maven.

<!-- Include format is {GroupId}:{ArtifactId} -->
<ItemGroup>
  <AndroidMavenLibrary Include="com.squareup.okhttp3:okhttp" Version="4.9.3" />
</ItemGroup>
Objektmetadatanamn Beskrivning
Utgåva Obligatorisk sträng. Den version av Java-biblioteket som ska laddas ned från Maven. Standardinställningen är true.
Lagringsplats Valfri sträng. Anger den Maven-lagringsplats som ska användas. Värden som stöds är Central, Googleeller en https URL till en Maven-lagringsplats. Standardinställningen är Central.
Bind Valfritt booleskt värde. Anger om Java-biblioteket ska ha en C#-bindning genererad för den. Standardinställningen är true.
Packa Valfritt booleskt värde. Anger om Java-biblioteket ska ingå i projektutdata. Standardinställningen är true.

Mer information finns i Dokumentationen om AndroidMavenLibrary .

Stöd för det här byggobjektet introducerades i .NET 9.

EmbeddedJar

Det här byggobjektet är inaktuellt och ersätts av AndroidLibrary-objektet .

<!-- Deprecated -->
<EmbeddedJar Include="mylib.jar" />

<!-- Recommended -->
<AndroidLibrary Include="mylib.jar" />

I ett .NET för Android-bindningsprojekt binder build-åtgärden EmbeddedJar Java/Kotlin-biblioteket och bäddar .jar in filen i biblioteket. När ett .NET för Android-programprojekt använder biblioteket har det åtkomst till Java/Kotlin-API:erna från C# samt inkluderar Java/Kotlin-koden i det slutliga Android-programmet.

EmbeddedReferenceJar

Det här byggobjektet är inaktuellt och ersätts av AndroidLibrary-objektet med bindningsmetadata inställt på false.

<!-- Deprecated -->
<EmbeddedReferenceJar Include="mylib.jar" />

<!-- Recommended -->
<AndroidLibrary Include="mylib.jar" Bind="false" />

I ett .NET för Android-bindningsprojekt bäddar embeddedReferenceJar-byggåtgärden.jar in filen i biblioteket men skapar inte en C#-bindning som EmbeddedJar gör. När ett .NET för Android-programprojekt använder biblioteket kommer det att innehålla Java/Kotlin-koden i det slutliga Android-programmet.

JavaSourceJar

Representerar en Java-källkod.jar som innehåller javadoc-dokumentationskommentarer som API-dokumentationen ska importeras från.

Javadoc konverteras till C# XML-dokumentationskommentarer i den genererade bindkodkällan.

$(AndroidJavadocVerbosity) styr hur "utförlig" eller "fullständig" den importerade Javadoc är.

Objektmetadatanamn Beskrivning
Upphovsrättsfil Valfri sträng. En sökväg till en fil som innehåller upphovsrättsinformation för Javadoc-innehållet, som läggs till i all importerad dokumentation.
UrlPrefix Valfri sträng. Ett URL-prefix som stöder länkning till onlinedokumentation i importerad dokumentation.
UrlStyle Valfri sträng. Formatet för URL:er som ska genereras när du länkar till onlinedokumentationen. För närvarande stöds endast ett format: developer.android.com/reference@2020-Nov.
DocRootUrl Valfri sträng. Ett URL-prefix som ska användas i stället för alla {@docroot} instanser i den importerade dokumentationen.

LibraryProjectZip

Det här byggobjektet är inaktuellt och ersätts av AndroidLibrary-byggobjektet .

<!-- Deprecated -->
<LibraryProjectZip Include="mylib.aar" />

<!-- Recommended -->
<AndroidLibrary Include="mylib.aar" />

Build-åtgärden LibraryProjectZip binder Java/Kotlin-biblioteket och inbäddar filen .zip eller .aar i biblioteket. När ett .NET för Android-programprojekt använder biblioteket har det åtkomst till Java/Kotlin-API:erna från C# samt inkluderar Java/Kotlin-koden i det slutliga Android-programmet.