Embeddinator-4000 es una herramienta para convertir bibliotecas .NET existentes en bibliotecas que pueden ser consumidas por otros lenguajes.
Es una herramienta que toma un ensamblaje .NET y genera el pegamento necesario para mostrar la API .NET como una API nativa. El objetivo es mostrar las bibliotecas .NET en todos los ecosistemas donde se ejecuta Mono/Xamarin, y para cada plataforma proporcionamos una interfaz nativa de esa plataforma, así como las herramientas necesarias para convertir una biblioteca .NET en algo que se pueda consumir. esa plataforma.
Actualmente hay soporte para .NET a C, Objective-C (en las distintas plataformas Apple) y Java (Android y Java normal), en plataformas Windows, Linux y macOS.
Consulte nuestra documentación para comenzar.
No dude en unirse a nosotros en nuestro canal de debate Gitter #managed-interop.
git submodule update --recursive --init
Embeddinator-4000.sln
con Visual Studio o Visual Studio para MacSi prefiere compilar desde la línea de comandos, puede usar Cake o Make para compilar en lugar de Visual Studio para Mac.
Las partes de Android/C del proyecto también se pueden construir con Cake usando los scripts build.ps1/build.sh.
En OS X, puedes configurar tu entorno para Android ejecutando un script de shell:
./build.sh -t Generate-Android -v diagnostic
En Windows, en Powershell:
.build.ps1 -t Generate-Android -v diagnostic
Esto descargará una compilación maestra de Xamarin.Android y la extraerá en /external/Xamarin.Android
.
Embeddinator-4000.exe
se compilará en build/lib/Release
. El script de Cake también ejecutará Embeddinator en un ensamblaje de prueba, por lo que puede estar seguro de que su sistema está configurado correctamente.
Las partes de Objective-C del proyecto se pueden construir con make
en objcgen
.
Para generar el nuget se puede utilizar cualquiera de los dos (ambos invocan el mismo proceso de compilación):
make nuget
en objcgen
./build.sh -t Create-Package
La documentación de introducción explica el uso básico de Embeddinator.
Puede encontrar más detalles sobre las invocaciones específicas de la plataforma aquí.
La guía de contribución cubre una serie de áreas a considerar al contribuir con Embeddinator-4000.
Existen varios archivos de documentación interna que describen el proyecto y la estructura interna de Embeddinator: