Android JSONObject vs GSON
Je ne suis pas en mesure de comprendre la différence entre JSONObject et GSON pour l'analyse de chaînes JSON dans Android.
Quelqu'un peut-il m'expliquer?
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas en mesure de comprendre la différence entre JSONObject et GSON pour l'analyse de chaînes JSON dans Android.
Quelqu'un peut-il m'expliquer?
Vous devez vous connecter pour publier un commentaire.
GSON pouvez utiliser la définition de l'Objet à créer directement un objet du type désiré. JSONObject doit être analysée manuellement. C'est la principale différence.
comme les autres ont dit,
GSON
devrait faire de la cartographieJSON
àPOJO
beaucoup plus facile, MAIS, la dernièreGSON
version (que j'écris, 2.2.2) a de sérieux problèmes avec la dernière API Android 17 (Android 4.2).Vérifier cette information: http://code.google.com/p/google-gson/issues/detail?id=496
Si vous faites un nouveau projet maintenant, et que vous voulez qu'il soit compatible avec Android 4.2, soit utiliser une ancienne
GSON
(1.7.1 fonctionne très bien avec Android 4.2, mais est plus lente), ou de trouver une autre solution.Ce que Tim est dit correct aussi,
Gson est la meilleure API JSON analyse sur Android. Il a une très petite
binaire de taille (moins de 200 Ko), n'rapide de la liaison de données, et a une simple
facile-à-utilisation de l'API. Android intégré dans JSON bibliothèques sont également bonnes. Vous
devez les utiliser si vous ne faites pas beaucoup de JSON et n'ont pas besoin
la liaison de données.
Il y a deux JSON Api sur Android:
org.json est un simple arbre à l'API de style. Elle est plus grande faiblesse, c'est qu'il
nécessite le chargement de l'ensemble du document JSON dans une chaîne de caractères avant de vous
peut l'analyser. Pour les grands documents JSON cela peut être inefficace.
http://developer.android.com/reference/org/json/package-summary.html
android.util.JsonReader/JsonWriter sont de faible niveau de streaming Api.
Ils sont efficaces mais ne fais pas la liaison de données, alors vous devez écrire
code réutilisable à les utiliser. Ils ne sont disponibles que dans Android 3+.
Pour les versions antérieures d'Android de la même API est disponible séparément
dans Gson du flux de paquet.
http://developer.android.com/reference/android/util/JsonReader.html
Gson de JsonReader et JsonWriter sont dérivées à partir de Android JsonReader
et JsonWriter. J'ai littéralement copié et collé à partir de Android en
Gson un jour, et essayer de les garder synchronisés comme je l'optimiser un ou l'
d'autres.
org.json
mise en œuvre estJSONException
. C'est juste pas pour placer untry/catch
bloc autour de l'ensemble de votre JSON choses.