Pregunta

Sé que Android tiene un analizador JSON horneado, pero me preguntaba si valía la pena usar algo que ofreciera un mejor rendimiento (como Jackson, ver http://jackson.codehaus.org/)? ¿Alguien probó eso?

¿Fue útil?

Solución

Bueno, aquí hay un pareja de Enlaces Comparando el rendimiento de Jackson JSON con los buffers existentes de JSON, SAX y Protocol. Según el autor, Jackson es más rápido que SAX o el JSON incorporado y está a la par con los buffers de protocolo. Esa última parte suena un poco sospechosa, pero, independientemente, ciertamente parece que Jackson funciona en Android y puede valer algo de experimentación.

Sin embargo, no he revisado el tamaño del frasco. Si es enorme, a menos que estuvieras muriendo por un rendimiento adicional de JSON, podría no valer la pena el golpe espacial.

Otros consejos

Desde la API 11, hay un transmisión JSON Parser en Android

Respuesta tardía, pero aún podría ayudar. Estoy usando Jackson para analizar a Json de Twitter y persistir Maps a la base de datos. El mapeo de datos en Jackson es simplemente maravilloso. Ser capaz de mapear JSON directamente a un objeto es increíble y hace que todo sea mucho más limpio.

Incluso si solo está analizando las simples respuestas, la asignación de datos podría ayudarlo a hacer que su código sea más limpio (y más eficiente). Para mí es Godsend que no tenga que escribir lógica de análisis para cada tipo de función de API de Twitter.

Solo una perspectiva más sobre estos analizadores. Estaba revisando el Google IO para 2009 y hay muy buena charla sobre el uso eficiente de la batería para los desarrolladores de aplicaciones.

Aquí está el enlace a esa charla: Enlace

Ahora, según la charla, el párroco incorporado para Android está basado en árboles y se supone que son ineficientes cuando se trata de duración de la batería. ¿Alguien realmente ha investigado esto?

Leyendo esta discusión, parece que Jackson Parser parece ser un ganador en todo. Es casi igualmente rápido, si no más que incorporado, y también su evento/corriente basado en el árbol, que es mejor en términos de uso de la batería.

Solo un aunque quería compartir y obtener algunas opiniones sobre esto.

Utilizo Jackson JSON para implementar mi aplicación Android que se comunica con el servidor a través de JSON-RPC. Me gustaría usarlo para serializar/deserializar las solicitudes, respuestas y objetos JSON-RPC para transferir los datos. Utilizo la versión 2.0 de Jackson-Json. He puesto en mi ruta de construcción dos frascos: Jackson-Databind-2.0.0.jar, Jackson-core-2.0.0.jar y Jackson-Annotations-2.0.0.Jar.

En la nota al margen: ¿hay alguna implementación de JSON-RPC para Android? El tráfico separado de JSON-RPC y HTTP sería bueno. He buscado mucho en Google, BU no he encontrado un buen generador JSON-RPC, JSON Serializer / Deserializer y para el transporte iré con Android-Query.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top