Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在谷歌地图上找到我的位置_Android_Google Maps_Location - Fatal编程技术网

Android 在谷歌地图上找到我的位置

Android 在谷歌地图上找到我的位置,android,google-maps,location,Android,Google Maps,Location,我试图让应用程序在谷歌地图上显示我的位置,但在我的手机上打开应用程序时,它总是打开相同的位置,这是我在代码中添加的值,作为编译器测试的初始值。 如何使其显示我的位置(使其根据我的位置更改纬度和经度) 代码如下: 公共类AndroidGoogleMapsActivity扩展了MapActivity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

我试图让应用程序在谷歌地图上显示我的位置,但在我的手机上打开应用程序时,它总是打开相同的位置,这是我在代码中添加的值,作为编译器测试的初始值。 如何使其显示我的位置(使其根据我的位置更改纬度和经度)

代码如下:

公共类AndroidGoogleMapsActivity扩展了MapActivity{

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

    // Displaying Zooming controls
    MapView mapView = (MapView) findViewById(R.id.mapView);
    mapView.setBuiltInZoomControls(true);

    /**
     * Changing Map Type
     * */
     mapView.setSatellite(true); // Satellite View
    // mapView.setStreetView(true); // Street View
     mapView.setTraffic(true); // Traffic view

    /**
     * showing location by Latitude and Longitude
     * */        
    MapController mc = mapView.getController();
    double lat = Double.parseDouble("31.894178");
    double lon = Double.parseDouble("35.872694");
    GeoPoint geoPoint = new GeoPoint((int)(lat * 1E6), (int)(lon * 1E6));
    mc.animateTo(geoPoint);
    mc.setZoom(15);
    mapView.invalidate(); 



    /**
     * Placing Marker
     * */
    List<Overlay> mapOverlays = mapView.getOverlays();
    Drawable drawable = this.getResources().getDrawable(R.drawable.mark_red);
    AddItemizedOverlay itemizedOverlay = 
         new AddItemizedOverlay(drawable, this);


    OverlayItem overlayitem = new OverlayItem(geoPoint, "Hello", "Sample Overlay item");

    itemizedOverlay.addOverlay(overlayitem);
    mapOverlays.add(itemizedOverlay);

}

@Override
protected boolean isRouteDisplayed() {
    return false;
}
@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//显示缩放控件
MapView MapView=(MapView)findViewById(R.id.MapView);
mapView.SetBuilTinZoomControl(真);
/**
*更改地图类型
* */
mapView.setSatellite(true);//卫星视图
//mapView.setStreetView(true);//街景
setTraffic(true);//流量视图
/**
*通过纬度和经度显示位置
* */        
MapController mc=mapView.getController();
双lat=double.parseDouble(“31.894178”);
double lon=double.parseDouble(“35.872694”);
地质点地质点=新的地质点((int)(lat*1E6),(int)(lon*1E6));
司仪(地点);;
mc.setZoom(15);
mapView.invalidate();
/**
*放置标记
* */
List mapOverlays=mapView.getOverlays();
Drawable Drawable=this.getResources().getDrawable(R.Drawable.mark_red);
AddItemizedOverlay项IzedOverlay=
新添加物(可拉伸,本);
OverlayItem OverlayItem=新的OverlayItem(地质点,“你好”,“样本覆盖项”);
itemizedOverlay.addOverlay(overlayitem);
添加(itemizedOverlay);
}
@凌驾
受保护的布尔值isRouteDisplayed(){
返回false;
}

}

您从未调用实际的GPS,这就是为什么它会恢复为您编程的GPS。这在其他地方有很好的记录,但这里有一个很好的起点:

参见;这是一个简单的方法,对我来说很有效。干杯