AndroidMavenLibrary

Uyarı

Bu özellik yalnızca .NET 9+ ile kullanılabilir.

<AndroidMavenLibrary> Otomatik olarak indirilecek ve Android için .NET bağlama projesine eklenecek bir Maven yapıtı belirtilmesine izin verir. Bu, Maven'da barındırılan yapıtlar için Android bağlamaları için .NET'in bakımını basitleştirmek için yararlı olabilir.

Specification

Temel kullanım şöyle görünür: <AndroidMavenLibrary>

<!-- Include format is {GroupId}:{ArtifactId} -->
<ItemGroup>
  <AndroidMavenLibrary Include="com.squareup.okhttp3:okhttp" Version="4.9.3" />
</ItemGroup>

Derleme zamanında birçok işlem gerçekleştirilmesini sağlar:

  • Maven Central'dan grup kimliği com.squareup.okhttp3, yapıt kimliği okhttpve sürümüne 4.9.3 sahip Java yapıtını yerel önbelleğe indirin (önceden önbelleğe alınmadıysa).
  • Önbelleğe alınan paketi Android için .NET bağlamaları derlemesine bir <AndroidLibrary> olarak ekleyin.
  • Java Bağımlılık Doğrulaması'nı etkinleştirmek için Java yapıtının POM dosyasını (ve gerekli tüm üst/içeri aktarılan POM dosyalarını) indirin. Bu özelliği geri çevirmek için öğeye VerifyDependencies="false" ekleyin<AndroidMavenLibrary>.

.NET for Android bağlamaları derlemesine yalnızca istenen Java yapıtının eklendiğini unutmayın. Artefakt bağımlılıkları eklenmez. İstenen yapıtın bağımlılıkları varsa, bunların tek tek yerine getirilmesi gerekir.

Options

<AndroidMavenLibrary> varsayılan olarak Maven Central'ı kullanır, ancak kimlik doğrulaması gerektirmeyen herhangi bir Maven deposunu desteklemelidir. Bu, özniteliğiyle Repository denetlenebilir.

Desteklenen değerler (varsayılan), Centralveya başka bir Maven deposunun URL'sidir Google .

<ItemGroup>
  <AndroidMavenLibrary 
    Include="androidx.core:core" 
    Version="1.9.0" 
    Repository="Google" />
</ItemGroup>
<ItemGroup>
  <AndroidMavenLibrary 
    Include="com.github.chrisbanes:PhotoView" 
    Version="2.3.0" 
    Repository="https://repository.mulesoft.org/nexus/content/repositories/public" />
</ItemGroup>

Ayrıca, <AndroidMavenLibrary> öğesine uygulanan tüm öznitelikler, dahili olarak oluşturduğu <AndroidLibrary> öğesine kopyalanır. Bu nedenle, özniteliklerBind ve Pack gibi bağlama işlemini denetlemek için kullanılabilir. (Her ikisi de varsayılan olarak true.)

<ItemGroup>
  <AndroidMavenLibrary 
    Include="androidx.core:core" 
    Version="1.9.0" 
    Repository="Google"
    Bind="false"
    Pack="false" />
</ItemGroup>