Android 台灣中文網

標題: 【求助】怎麼使用資料庫的地址轉換成google座標 [打印本頁]

作者: edo13489    時間: 2012-12-17 12:30
標題: 【求助】怎麼使用資料庫的地址轉換成google座標
本帖最後由 edo13489 於 2012-12-17 13:01 編輯

因為專題裡頭用到的資料庫是access,轉換成座標方式
不曉得怎麼轉換,請各位大大幫忙!

以下是程式碼

package tw.edu.foodmap;



import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

import android.location.Criteria;
import android.location.Geocoder;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.MyLocationOverlay;
import com.google.android.maps.Overlay;
import com.google.android.maps.OverlayItem;



public class map extends MapActivity {
               

                private MapView map;
                private MapController mapController;
                private MyLocationOverlay locmgr;
                private LocationManager mgr;
                private String bestProvider = LocationManager.GPS_PROVIDER;
                private GeoPoint fromGeoPoint, toGeoPoint;
                private Location location;
               
               
               
                private void locationServiceInitial() {
                        mgr = (LocationManager) getSystemService(LOCATION_SERVICE);        //取得系統定位服務
                        Criteria criteria = new Criteria();        //資訊提供者選取標準
                        bestProvider = mgr.getBestProvider(criteria, true);        //選擇精準度最高的提供者
                        Location location = mgr.getLastKnownLocation(bestProvider);
                        getLocation(location);
                }


               
                private void getLocation(Location location) {
                        // TODO Auto-generated method stub
                        Double longitude = location.getLongitude();        //取得經度
                        Double latitude = location.getLatitude();        //取得緯度
                }



                @Override
                public void onCreate(Bundle savedInstanceState){
                        super.onCreate(savedInstanceState);
                        setContentView(R.layout.map);
                                               
                        map = (MapView) findViewById(R.id.map);
                       
                        //設定一般地圖與衛星地圖
                        map.setBuiltInZoomControls(true);
                        map.setSatellite(true);
                        //縮放設定
                        mapController =map.getController();
                        mapController.setZoom(17);
                        //設定放大倍率1(地球)-21(街道)

                        //定義經緯度
                        //GeoPoint point = new GeoPoint(lat.intValue(), lng.intValue());  
                        //OverlayItem overlayitem = new OverlayItem(point, "康家正門", "安安");  
                       
                        List<Overlay> mapOverlays = map.getOverlays();
                        locmgr = new MyLocationOverlay(this, map);
                        locmgr.enableMyLocation();
                       
                       
                       
                        locmgr.runOnFirstFix(new Runnable() {
                                        private String address;
                                        public void run() {
                                        // TODO Auto-generated method stub
                                       
                                        mapController.animateTo(locmgr.getMyLocation());
                                       
                                        try{
                                                  HttpClient client = new DefaultHttpClient();
                                            String cmd = "http://163.17.76.16/1/food1.jsp?address" + address;
                                          
                                            String mapAPI = "http://maps.google.com/maps/api/directions/json?origin={0}&destination={1}&language=zh-TW&sensor=true";
                                                HttpGet get = new HttpGet(cmd);
                                                HttpResponse response = client.execute(get);
                                                HttpEntity entity = response.getEntity();
                                                BufferedReader reader = new BufferedReader(        new InputStreamReader(entity.getContent()));
                                                String raw,msg="";
                                         
                                                 
                                                  while ((raw = reader.readLine()) != null){
                                                         
                                                          }
                                                  }catch (Exception ee){
                                                         
                                                    }
                                }
                        });
                       
                        mapOverlays.add(locmgr);//將定位圖層的圖示加入清單中
               
                }

                @Override
                protected void onResume() {
                        // TODO Auto-generated method stub
                        super.onResume();
                        Double longitude = location.getLongitude();        //取得經度
                        Double latitude = location.getLatitude();        //取得緯度
                       
               
                         
                       
                       
                }
               
                @Override
                protected void onPause() {
                        // TODO Auto-generated method stub
                        super.onPause();
                        mgr.removeUpdates((LocationListener) this);
                }



                @Override
                protected boolean isRouteDisplayed() {
                        // TODO Auto-generated method stub
                        return false;
                }

       
               
        }
作者: ploglin    時間: 2012-12-17 13:47
把地址丟到 google api 去查詢就好了。
請參考
https://developers.google.com/maps/documentation/geocoding/#JSON




歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1