So che Android ha un parser JSON in dotazione ma mi chiedevo se valesse la pena usare qualcosa che offrisse prestazioni migliori (come Jackson - vedi http://jackson.codehaus.org/)? Qualcuno l'ha provato?Sostituisci il parser JSON Android standard per prestazioni migliori?
risposta
Bene, ecco uno couple di links confrontando le prestazioni di Jackson JSON con JSON, SAX e Protocol Buffers esistenti. Secondo l'autore, Jackson è più veloce di SAX o del JSON integrato e circa alla pari con i Protocol Buffers. Quest'ultima parte sembra un po 'sospettosa, ma, a prescindere, sembra che Jackson lavori su Android e potrebbe valere la pena di sperimentare.
Non ho ancora controllato la dimensione del JAR. Se è enorme, a meno che non stia morendo per prestazioni JSON extra, potrebbe non valerne la pena.
Sì, la dimensione del file è sicuramente nella mia lista di possibili vincoli. Immagino che se stessi masticando un sacco di JSON nella mia app, potrebbe valere la pena aggiungere Jackson, ma per ora rimango fedele al JSON standard. – Eno
risposta tardiva ma potrebbe ancora aiutare. Sto usando Jackson per analizzare JSON da Twitter e persistere Maps
nel database. La mappatura dei dati in Jackson è semplicemente meravigliosa. Essere in grado di mappare JSON direttamente su un oggetto è fantastico e rende tutto molto più pulito.
Anche se si stanno solo analizzando risposte semplici, la mappatura dei dati può aiutare a rendere il codice più pulito (e più efficiente). Per me è una manna dal cielo che non devo scrivere la logica di analisi per ogni tipo di funzione API di Twitter.
Grazie per questo feedback: è bello avere un altro strumento nel torace, se necessario. – Eno
Solo un'altra prospettiva su questi parser. Stavo guardando l'IO di Google per il 2009 e si parla molto bene dell'uso efficiente della batteria per gli sviluppatori di app.
Ecco il link a quel discorso: link
Ora come per il discorso Parson integrato per Android è basato albero e questi sono supposti di essere inefficiente quando si tratta di durata della batteria. Qualcuno ha davvero guardato in questo.
Leggendo questa discussione sembra che il parser di Jackson sembra essere un vincitore in tutto. È quasi altrettanto veloce se non più di quello integrato e anche il suo Event/Stream basato su contrapposto a tree based che è migliore in termini di utilizzo della batteria.
Solo un po 'ho voluto condividere e avere alcune opinioni su questo.
Uso jackson json per implementare la mia applicazione Android che comunica con il server tramite json-rpc. Mi piacerebbe usarlo per serializzare/deserializzare richieste e risposte json-rpc e oggetti per trasferire i dati. Uso la versione 2.0 di Jackson-json. Ho inserito nel mio percorso di build due jar: jackson-databind-2.0.0.jar, jackson-core-2.0.0.jar e jackson-annotations-2.0.0.jar.
Sulla nota a margine: Esiste un'implementazione json-rpc per l'androide. json-rpc separato e il traffico http sarebbero buoni. Ho cercato molto su google, bu non ho trovato un buon generatore json-rpc, json serializzatore/deserializzatore e per il trasporto andrò con android-query.
Dal API 11, c'è un stream json parser in Android
Grazie! Non ho notato che era lì dato che non era nel pacchetto JSON – christophercotton
- 1. AdMob: prestazioni migliori nell'attività Android
- 2. Impossibile ottenere miglioramenti delle prestazioni utilizzando il parser OJ JSON
- 3. Benchmark per parser JSON?
- 4. Ulteriori thread, prestazioni migliori?
- 5. migliori prestazioni per jQuery Selettore
- 6. Il miglior parser JSON per Qt?
- 7. android: prestazioni gson
- 8. jsonb e chiavi primarie/esterne: quali prestazioni migliori in PostgreSQL?
- 9. PHP: il parser JSON o XML è più veloce?
- 10. migliori pratiche di progettazione JSON
- 11. parser da JSON a Groovy
- 12. Quale query data mySQL ha prestazioni migliori?
- 13. Riposo contro sapone. REST ha prestazioni migliori?
- 14. Grid e StackPanel, che offre prestazioni migliori?
- 15. Le istruzioni brevi hanno prestazioni migliori?
- 16. DB con le prestazioni migliori inserti/sec?
- 17. Come ottimizzare un servizio WCF per prestazioni migliori utilizzando ServiceThrottling
- 18. Il che ha prestazioni migliori:!! Prova = null o null = test
- 19. Scrittura dell'immagine per risposta servlet con le migliori prestazioni
- 20. Quale metodo di paging (Sql Server 2008) per prestazioni MIGLIORI?
- 21. Perché ArrayList non sovrascrive equals() per prestazioni migliori?
- 22. Rimozione di gestori HTTP inutilizzati per prestazioni e sicurezza migliori
- 23. Confronto di Parser JSON per Objective-C (JSON Framework, YAJL, TouchJSON, ecc.)
- 24. Migliori pratiche Android - visualizzazioni/attività
- 25. parser HTML per GAE
- 26. Strumenti di analisi memoria/prestazioni per Android
- 27. Trova e sostituisci per JSON con sed o awk
- 28. Il framework MVC per le migliori prestazioni JavaScript per lo sviluppo mobile
- 29. Generatore di parser JSON in .NET/WPF?
- 30. L'attività di cetriolo fallisce, incolpa parser JSON
non ho mai avuto problemi con la velocità di JSON parser di Android. Ho persino ottenuto un file JSON a 41kb in una delle mie app, e si carica in un paio di millisecondi su un G1 (che va bene, dato che deve essere eseguito una volta sola all'avvio dell'applicazione). –
La velocità di conversazione assoluta potrebbe essere accettabile. È sempre bene considerare che su normali CPU desktop, la velocità di analisi JSON è dell'ordine di decine di meg - il file di 41 kb dovrebbe essere fatto in millisecondi o giù di lì.Anche dati le CPU più lente che il sistema Android ha spesso, un centinaio di millisecondi è piuttosto lento, rispetto alle alternative veloci. Quindi, strumento giusto per il lavoro. Per uso occasionale (come leggere i file di configurazione all'avvio) i gestori interni di solito sono decenti. È ancora bene sapere che c'è spazio per miglioramenti se i casi d'uso lo richiedono. – StaxMan