2017-04-19 6 views
-3

Google Map APIを使用して都市名を取得しようとしていますが、取得しないようにしようとしています。 私はGoogle APIを使用してLat、Lngを取得しました。今は10km離れた都市名を取得したいと考えています。Google MAP APIを使用してlat、lngによってNearest Cityを見つける方法

Lat,を取得するには、下のURLを使用しています。 https://maps.googleapis.com/maps/api/geocode/json?address=Coburg,Austrelia&key= ""

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=".$lat.",".$long."&radius=10000&type=administrative_area_level_2&key="" 

答えて

0
You can try this 
ProgressDialog dialog=null; 
    @Override 
    public void onClick(View v) { 
      dialog = ProgressDialog.show(context, "", "Please! Wait...", true); 
      GetCurrentAddress result = new GetCurrentAddress(); 
      result.execute(""); 
     } 



    // getting address task 
    private class GetCurrentAddress extends AsyncTask<String, Void, String> { 

     @Override 
     protected String doInBackground(String... urls) { 
      String responseText = null; 
      String googleurl = "http://maps.google.com/maps/geo?"; 
      String latitude="38.89"; 
      String longitude ="-77.03"; 
     StringBuilder sbuilder=new StringBuilder(); 
     sbuilder.append(googleurl); 

     sbuilder.append("q="+latitude+","+longitude); 
     sbuilder.append("&amp;output=responseText&amp;sensor=true"); 
     String url=sbuilder.toString(); 

     try { 
      DefaultHttpClient httpclient=new DefaultHttpClient(); 
      HttpPost httppost=new HttpPost(url); 
      HttpResponse httpresponse=httpclient.execute(httppost); 
      HttpEntity httpentity=httpresponse.getEntity(); 
      InputStream is=httpentity.getContent(); 
      BufferedReader reader=new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8); 
      StringBuilder sb=new StringBuilder(); 
      String line=null; 
     while((line=reader.readLine())!=null) 
     { 
      sb.append(line+"\n"); 

     } 
     is.close(); 
     responseText=sb.toString(); 
     } 
     catch(ClientProtocolException e) 
     { 
      e.printStackTrace(); 
     } 
     catch (IOException e) 
     { 
      e.printStackTrace(); 
     } 
     return responseText; 
     } 

     @Override 
     protected void onPostExecute(String resultString) { 
      dialog.dismiss(); 

      String response= resultString; 

      if (responseText != null) { 
       Log.v(TAG, "json response is:" + response); 
       try { 
        jObj = new JSONObject(response); 
        jsonarray = jObj.getJSONArray("Placemark"); 
        for (int i = 0; i < jsonarray.length(); i++) { 
         JSONObject innerJsonobject = jsonarray.getJSONObject(i); 
         String jsonaddress = innerJsonobject 
           .getString("address"); 


        } 

       } catch (Exception e) { 
        e.printStackTrace(); 
       } 
      } 
     } 
関連する問題