Analysieren von Google Places-JSON-Daten in Android?

Ich versuche, Google Places-JSON-Daten in Android zu analysieren. Ich kenne die URL, die ich in Arbeiten übergebe (aber ich nahm meinen Schlüssel aus dem folgenden Code). Ich kann die JSON-Daten in einer Textansicht anzeigen lassen, aber jetzt möchte ich sie analysieren und (zu diesem Zeitpunkt) den Namen des ersten anzuzeigenden Elements ermitteln. Ich habe ein Tutorial geändert, das einen Twitter-Feed analysiert hat, und dieses Twittwr-Tutorial wurde korrekt angezeigt, aber mein geänderter Code zeigt nichts an. Es stürzt nicht ab und ich bekomme keine Fehler, also weiß ich nicht, was los ist. Also hier ist mein Code:

    public class GetPort extends Activity {

TextView showJSdata;
HttpClient client;
JSONObject json;

final static String pURL = "https://maps.googleapis.com/maps/api/place/search/json? location=30.487263,-97.970799&radius=25000&types=airport&sensor=false&key=MY_KEY";

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mn_test3);
    showJSdata = (TextView)findViewById(R.id.http_tv);
    client = new DefaultHttpClient();
    new ReadURL().execute("name");
}

public JSONObject showPorts() 
throws ClientProtocolException, IOException, JSONException{

    StringBuilder portURL = new StringBuilder(pURL);        
    HttpGet get = new HttpGet(portURL.toString());
    HttpResponse r = client.execute(get);
    int status = r.getStatusLine().getStatusCode();
    if(status == 200){
        HttpEntity e = r.getEntity();
        String data = EntityUtils.toString(e);
        JSONArray timeline = new JSONArray(data);
        JSONObject lastport = timeline.getJSONObject(0);
        return lastport;
    }else{
        Toast.makeText(GetPort.this, "oops", Toast.LENGTH_SHORT);
        return null;
    }

}

public class ReadURL extends AsyncTask<String, Integer, String>{

    @Override
    protected void onPostExecute(String result) {
        showJSdata.setText(result);
    }

    @Override
    protected String doInBackground(String... params) {
        try {
            json = showPorts();
            return json.getString(params[0]);
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }


        return null;
    }

}

}

Kann jemand sehen, wo der Code fehlschlägt oder wo ich einen Fehler gemacht habe?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage