2015-10-23 2 views
0

Мне нужна помощь в принятии решения о разборе. Мне нужно провести разбор JSON. То, как я это делал, было с одним универсальным сетевым вызовом с использованием Volley и 1 массивным корпусом коммутатора, который переходил бы на соответствующий синтаксический анализ. Я бы добавил String к методу, названному source, поэтому я знал, что нужно сделать синтаксический анализ.Несколько разбор JSON

Начальный вызов

private void getHomeScreen(){ 
    networkCall(
      url,   //Url used to make the call 
      homeScreen); //The source of the parsing 
} 

Отклик раз сетевого вызова завершил отправку его в анализатор

onResponse{ 
    parser(
     jsonFile, //Response JSON file 
     source); //passing the String that had the source of the parser 
} 

Метод Parser, который посылает правильный ответ на правильный синтаксический анализатор

private void parser(JSONObject, String source){ 
// the one massive switch case sending the HomeScreen to the relevant parser 
} 

Есть ли лучший способ сделать это? должно быть!

Благодаря

+0

пройти уникальный 'Response.Listener' для каждого типа запроса – pskink

ответ

2

Если бы я тебя, я хотел бы посмотреть на Gson для андроида. Gson - это библиотека, которая может легко разобрать JSON. Поэтому нет необходимости создавать собственные парсеры. С помощью Gson вы можете создавать классы моделей, и весь синтаксический анализ будет сделан для вас.

Взгляните на этом учебнике:

http://www.javacodegeeks.com/2011/01/android-json-parsing-gson-tutorial.html

Надеется, что это помогает.

+0

Я не знал, что он делает свой собственный анализ. Это сделает его намного лучше и проще! – x10sion