首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

高德舆图GPS定位

2012-07-03 
高德地图GPS定位package com.cjy.mapimport com.autonavi.mapapi.GeoPointimport com.autonavi.mapapi.L

高德地图GPS定位

package com.cjy.map;

import com.autonavi.mapapi.GeoPoint;
import com.autonavi.mapapi.LocationManagerProxy;
import com.autonavi.mapapi.LocationProviderProxy;
import com.autonavi.mapapi.MapActivity;
import com.autonavi.mapapi.MapController;
import com.autonavi.mapapi.MapView;
import com.autonavi.mapapi.MyLocationOverlay;

import android.content.Context;
//
//import android.location.Location;
//import android.location.LocationListener;
//import android.location.LocationManager;
import android.location.Location;
import android.location.LocationListener;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;

public class MapGdActivity extends MapActivity {
?/** Called when the activity is first created. */
?MapView map = null;
?MapController ctrlMap = null;
?MyLocationOverlay mylocTest;
?GeoPoint point;

?@Override
?public void onCreate(Bundle savedInstanceState) {
??super.onCreate(savedInstanceState);
??setContentView(R.layout.main);

??map = (MapView) findViewById(R.id.mylocationview);
??map.setBuiltInZoomControls(true); //
??ctrlMap = map.getController();
??// 得到mMapView的控制权,可以用它控制和驱动平移和缩放
??point = new GeoPoint((int) (34.299999 * 1E6),// 西安的经纬度
????(int) (108.930000 * 1E6)); // 用给定的经纬度构造一个GeoPoint,单位是微度 (度 * //
???????????// 1E6)
??ctrlMap.setCenter(point); // 设置地图中心点
??ctrlMap.setZoom(12); // 设置地图zoom级别
??//map.setTraffic(true);//设置地图为交通模式
??//map.setStreetView(true);
??//设置为卫星模式
??map.setSatellite(true);
??ctrlMap = map.getController();
??mylocTest = new MyLocationOverlay(MapGdActivity.this, map);
??mylocTest.enableMyLocation();
??mylocTest.enableCompass(); // 打开指南针
??map.getOverlays().add(mylocTest);
??LocationManagerProxy managerProxy = new LocationManagerProxy(this);
??managerProxy.requestLocationUpdates(LocationProviderProxy.AutonaviCellProvider,
????2000, 0, locationListener);

?}

?private void getLocationInfo(Location location) {
??String latLongInfo;
??TextView locationText = (TextView) findViewById(R.id.tv);
??if (location != null) {
???double lat = location.getLatitude();
???double lng = location.getLongitude();
???latLongInfo = "Lat: " + lat + "\nLong: " + lng;
??} else {
???latLongInfo = "No location found";
??}
??locationText.setText("Your Current Position is:\n" + latLongInfo);
?}

?private final LocationListener locationListener = new LocationListener() {
??public void onLocationChanged(Location location) {
???Log.e(MapGdActivity.class.getName(), "onLocationChanged");
???getLocationInfo(location);
???Toast.makeText(
?????MapGdActivity.this,
?????location.getAltitude() + "---" + location.getLatitude()
???????+ "---" + location.getLongitude(),
?????Toast.LENGTH_LONG).show();
??}

??public void onProviderDisabled(String provider) {
???// TODO Auto-generated method stub
???Log.e(MapGdActivity.class.getName(), "onProviderDisabled=="
?????+ provider);
??}

??public void onProviderEnabled(String provider) {
???// TODO Auto-generated method stub
???Log.e(MapGdActivity.class.getName(), "onProviderEnabled=="
?????+ provider);
??}

??public void onStatusChanged(String provider, int status, Bundle extras) {
???// TODO Auto-generated method stub
???Log.e(MapGdActivity.class.getName(), "onStatusChanged==" + provider);
??}

?};
}

class LocactionM extends LocationManagerProxy {

?public LocactionM(Context arg0, String arg1) {
??super(arg0, arg1);
??// TODO Auto-generated constructor stub
?}

}

热点排行