Android Open Source - android-gps- Place J S O N Parser






From Project

Back to project page android-gps-.

License

The source code is released under:

Apache License

If you think the Android project android-gps- listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.droid.waterhub;
/*w w  w  .  ja  va 2s  . co m*/
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
 
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class PlaceJSONParser {

  /** Receives a JSONObject and returns a list */
    public List<HashMap<String,String>> parse(JSONObject jObject){
 
         JSONArray jPlaces = null;
        try {
            /** Retrieves all the elements in the 'places' array */
            //jPlaces = jObject.getJSONArray("results");
          jPlaces = jObject.getJSONArray("result");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        /** Invoking getPlaces with the array of json object
        * where each json object represent a place
        */
        return getPlaces(jPlaces);
    }
 
    private List<HashMap<String, String>> getPlaces(JSONArray jPlaces){
        int placesCount = jPlaces.length();
        List<HashMap<String, String>> placesList = new ArrayList<HashMap<String,String>>();
        HashMap<String, String> place = null;
 
        /** Taking each place, parses and adds to list object */
        for(int i=0; i<placesCount;i++){
            try {
                /** Call getPlace with place JSON object to parse the place */
                place = getPlace((JSONObject)jPlaces.get(i));
                placesList.add(place);
 
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
 
        return placesList;
    }
 
    /** Parsing the Place JSON object */
    private HashMap<String, String> getPlace(JSONObject jPlace){
 
        HashMap<String, String> place = new HashMap<String, String>();
        String placeName = "-NA-";
        String address="-NA-";
        String latitude="";
        String longitude="";
 
        try {
            // Extracting Place name, if available
            if(!jPlace.isNull("name")){
                placeName = jPlace.getString("name");
            }
 
            // Extracting Place Vicinity, if available
            if(!jPlace.isNull("address")){
                address = jPlace.getString("address");
            }
 
           // latitude = jPlace.getJSONObject("geometry").getJSONObject("location").getString("lat");
           // longitude = jPlace.getJSONObject("geometry").getJSONObject("location").getString("lng");
            latitude = jPlace.getString("lat");
            longitude = jPlace.getString("lng");
            place.put("place_name", placeName);
            place.put("address", address);
            place.put("lat", latitude);
            place.put("lng", longitude);
 
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return place;
    }
}




Java Source Code List

com.droid.waterhub.CustomAdapter.java
com.droid.waterhub.InfoStor.java
com.droid.waterhub.JSONParser.java
com.droid.waterhub.LocationActivity.java
com.droid.waterhub.MainActivity.java
com.droid.waterhub.PlaceJSONParser.java