Uso de librerías Java en Xamarin.Android

Post on 06-Apr-2017

212 views 7 download

Transcript of Uso de librerías Java en Xamarin.Android

Alejandro RuizXamarin MVP & CTO @ Los Xamarinosalejandro@alejandroruizvarela.com

Uso de Librerías Nativas en Xamarin.Android

Binding• Es un tipo de proyecto mediante el cual podremos exponer codigo

Java embebido en un .jar o .aar

Arquitectura• MCW: Managed Callable Wrappers• ACW: Android Callable Wrappers

Java vs C#Código Java

Implementación C#

Puntos a tener en mente al crear un binding:• ¿La librería tiene alguna dependencia externa?• ¿Para que API Android fue compilada la librería?• ¿Qué versión de JDK fue utilizada para compilar la librería?

Build Actions• EmbeddedJar:Incrusta en nuestra DLL el archivo .JAR

• InputJarPreviene incrustar el archivo .JAR en nuestra DLL

• LibraryProjectZipIncrusta en nuestra DLL el archivo .AAR

• ReferenceJarEspecifica una referencia .JAR de nuestro .JAR/.AAR no genera definiciones C# para las referencias.

• EmbeddedReferenceJarEspecifica una referencia .JAR de nuestro .JAR/.AAR y genera definiciones C# para las referencias.

Ejemplo Lib + Native Impl(.SO C/C++)

https://goo.gl/gTjdzP

Referencias

Binding a Java Library:https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/

Customizing Bindings:https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/customizing-bindings/Errors:https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/troubleshooting-bindings/

https://gist.github.com/JonDouglas/dda6d8ace7d071b0e8cb

Gracias, ¿Preguntas?Alejandro RuizXamarin MVP & CTO @ Los XamarinosUso de Librerías Nativas en Xamarin.Android

alejandro@alejandroruizvarela.com

@alejandroruizvahttp://alejandroruizvarela.blogspot.comhttps://github.com/alejandroruiz