Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Cette fonctionnalité est disponible uniquement dans .NET 9+.
<AndroidMavenLibrary> permet à un artefact Maven d’être spécifié, qui sera automatiquement téléchargé et ajouté à un projet de liaison .NET pour Android. Cela peut être utile pour simplifier la maintenance des liaisons .NET pour Android pour les artefacts hébergés dans Maven.
Spécification
Une utilisation de base de <AndroidMavenLibrary> ressemble à ceci :
<!-- Include format is {GroupId}:{ArtifactId} -->
<ItemGroup>
<AndroidMavenLibrary Include="com.squareup.okhttp3:okhttp" Version="4.9.3" />
</ItemGroup>
Cette opération effectuera plusieurs actions au moment de la construction :
- Téléchargez l’artéfact Java avec l’ID du groupe
com.squareup.okhttp3, l’ID de l’artéfactokhttp, et la version4.9.3depuis Maven Central vers un cache local (s’il n’est pas déjà mis en cache). - Ajoutez le package mis en cache à la compilation des liaisons .NET pour Android en tant que
<AndroidLibrary>. - Téléchargez le fichier POM de l’artefact Java (et tous les fichiers POM parent/importés nécessaires) pour activer la vérification des dépendances Java. Pour désactiver cette fonctionnalité, ajoutez-le
VerifyDependencies="false"à l’élément<AndroidMavenLibrary>.
Notez que seul l’artefact Java demandé est ajouté à la compilation des liaisons .NET pour Android. Aucune dépendance d’artefact n’est ajoutée. Si l’artefact demandé a des dépendances, ils doivent être remplis individuellement.
Options
<AndroidMavenLibrary> utilise par défaut Maven Central, mais il doit prendre en charge n’importe quel référentiel Maven qui ne nécessite pas d’authentification. Cela peut être contrôlé avec l’attribut Repository .
Les valeurs prises en charge sont Central (par défaut), Googleou une URL vers un autre référentiel Maven.
<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>
En outre, tous les attributs appliqués à l’élément <AndroidMavenLibrary> sont copiés à l’élément <AndroidLibrary> qu’il crée internement. Ainsi, les attributs comme Bind et Pack peuvent être utilisés pour contrôler le processus de liaison. (La valeur par défaut est true.)
<ItemGroup>
<AndroidMavenLibrary
Include="androidx.core:core"
Version="1.9.0"
Repository="Google"
Bind="false"
Pack="false" />
</ItemGroup>