Lier des bibliothèques Android Kotlin

Important

Nous étudions actuellement l’utilisation de la liaison personnalisée sur la plateforme Xamarin. S’il vous plaît prendre cette enquête pour informer les efforts de développement futurs.

La plateforme Android, ainsi que ses langages natifs et ses outils, est en constante évolution et il existe de nombreuses bibliothèques tierces qui ont été développées à l’aide des dernières offres. L’optimisation de la réutilisation du code et des composants est l’un des objectifs clés du développement multiplateforme. La possibilité de réutiliser les composants créés avec Kotlin est devenue de plus en plus importante pour les développeurs Xamarin à mesure que leur popularité parmi les développeurs ne cesse de croître. Vous connaissez peut-être déjà le processus de liaison de bibliothèques Java régulières. Une documentation supplémentaire est désormais disponible décrivant le processus de liaison d’une bibliothèque Kotlin, afin qu’elles soient consommables par une application Xamarin de la même manière. L’objectif de ce document est de décrire une approche de haut niveau pour créer une liaison Kotlin pour Xamarin.

Approche de haut niveau

Avec Xamarin, vous pouvez lier n’importe quelle bibliothèque native tierce pour qu’elle soit consommable par une application Xamarin. Kotlin est le nouveau langage et la création d’une liaison pour les bibliothèques créées avec ce langage nécessite des étapes et des outils supplémentaires. Cette approche implique les quatre étapes suivantes :

  1. Générer la bibliothèque native
  2. Préparer les métadonnées Xamarin, ce qui permet aux outils Xamarin de générer des classes C#
  3. Créer une bibliothèque de liaison Xamarin à l’aide de la bibliothèque native et des métadonnées
  4. Utiliser la bibliothèque de liaison Xamarin dans une application Xamarin

Les sections suivantes décrivent ces étapes avec des détails supplémentaires.

Générer la bibliothèque native

La première étape consiste à obtenir une bibliothèque Kotlin native (package AAR, qui est une archive Android). Vous pouvez le demander directement auprès d’un fournisseur ou le créer vous-même.

Préparer les métadonnées Xamarin

La deuxième étape consiste à préparer le fichier de transformation des métadonnées, qui sera utilisé par les outils Xamarin pour générer les classes C# respectives. Dans le meilleur scénario, ce fichier peut être vide, où toutes les classes sont découvertes et générées par les outils Xamarin. Dans certains cas, la transformation des métadonnées doit être appliquée pour générer du code C# correct et/ou souhaité. Dans de nombreux cas, un désassembleur AAR, tel que Java Decompiler (JD), doit être utilisé pour identifier les dépendances masquées et les classes indésirables que vous souhaitez exclure de la liste finale des classes C# à générer. Les métadonnées finales doivent représenter l’interface publique dans laquelle l’application Xamarin.Android référençant interagira.

Créer une bibliothèque de liaison Xamarin.Android

La troisième étape consiste à créer un projet spécial : une bibliothèque de liaison Xamarin.Android. Il inclut les bibliothèques Kotlin en tant que références natives et la transformation des métadonnées définie à l’étape précédente. Au moment de la rédaction, un projet de bibliothèque de liaison Android distinct est requis pour chaque package AAR référencé. La bibliothèque de liaison doit ajouter le package Xamarin.Kotlin.StdLib afin de prendre en charge la bibliothèque Kotlin Standard.

Utiliser la bibliothèque de liaisons Xamarin

La quatrième et dernière étape consiste à référencer la bibliothèque de liaison dans une application Xamarin.Android. L’ajout d’une référence à la bibliothèque de liaison Xamarin.Android permet à votre application Xamarin d’utiliser les classes Kotlin exposées à partir de ce package.

Procédure pas à pas

L’approche ci-dessus décrit les étapes générales requises pour créer une liaison Kotlin pour Xamarin. De nombreuses étapes de niveau inférieur sont impliquées et d’autres détails à prendre en compte lors de la préparation de ces liaisons dans la pratique, y compris l’adaptation aux modifications apportées aux outils et langues natifs. L’objectif est de vous aider à mieux comprendre ce concept et les étapes générales impliquées dans ce processus. Pour obtenir un guide détaillé, reportez-vous à la documentation de Xamarin Kotlin Binding Walkthrough .