2010-10-29 13 views

Respuesta

5

No creo que puedas usar SnakeYaml en Android sin modificaciones (al menos ahora).

De forma predeterminada, SnakeYaml usa Introspector para obtener PropertyDescriptors para las clases, y como puedo ver java.beans.Introspector no está disponible en Android. Pero existe el modo BeanAccess.FEILD en SnakeYaml que usa campos para volcar/cargar beans. Ese modo solo usa java.lang.reflect clases disponibles en Android.

Por lo tanto, con algunas modificaciones podría funcionar. Pero tengo que intentarlo para estar seguro.

Agregado

versión compatible Ahora androide de SnakeYaml se pueden construir usando:

mvn -Pandroid clean package

actualización (marzo de 2017):

A partir de 1.18 compilación de Android está en central. Puede agregar la dependencia en su pom.xml como este

<dependency> 
    <groupId>org.yaml</groupId> 
    <artifactId>snakeyaml</artifactId> 
    <version> VERSION </version> 
    <classifier>android</classifier> 
</dependency> 
+0

Gracias. Eso es útil para saber Si lo intenta, actualice aquí. Esperaré a que lo pruebes primero porque estoy comenzando con cero experiencia. – MountainX

+1

Sí. No construyó sin modificaciones. Pero ... este debería funcionar: http://code.google.com/p/snakeyaml/downloads/detail?name=snakeyaml-android-1.8-SNAPSHOT.jar ¡Recuerde que utiliza Fields en clases, no en setters y getters! !! No importa el modo 'BeanAccess.xxx' que establezca, siempre es' BeanAccess.FIELD'. Por favor pruebalo. He creado un problema sobre Android http://code.google.com/p/snakeyaml/issues/detail?id=92 Siéntase libre de poner comentarios allí. – maslovalex

+0

¡Gracias por hacer que la versión modificada esté disponible! – MountainX

0

Creo que al menos debería intentar directamente snakeyaml. Para este tipo de biblioteca, es muy probable que el conjunto API de Java necesario esté disponible en Android.

Si no funciona, puede intentar importar el código fuente de snakeyaml en un proyecto de Android y ver qué no compila. Con un poco de suerte, será posible evitar las API que faltan.

+0

Gracias por su aliento. Con mi experiencia limitada (sin desarrollo de Android todavía), esperaba que alguien más ya hubiera intentado esto. Pero me gusta Snakeyaml, por lo que sería genial si funciona en Android. – MountainX

Cuestiones relacionadas