小编har*_*ouf的帖子

确定osm地图上的用户位置

我正在开发一个确定osm地图中用户位置的android应用程序.我能够在地图上显示用户位置,但如果位置改变整个地图重新加载,那有什么问题?另外我如何才能提高用户位置的准确性?如何根据准确度制作一个增加和减少的圆圈(如Google中所示)?

代码:

public class OsmDemoActivity extends Activity implements LocationListener, 
    MapViewConstants 
{  
private MapView mMapView; 
private MapController mapController; 
private LocationManager mLocMgr; 
private ItemizedOverlay<OverlayItem> mMyLocationOverlay; 
private ResourceProxy mResourceProxy; 

ArrayList<OverlayItem> items;

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    mResourceProxy = new DefaultResourceProxyImpl(getApplicationContext()); 
    setContentView(R.layout.main); 
    //mMapView.setUseDataConnection(false);
    initilaizeMap();
    //addOverlay(); 
    mLocMgr = (LocationManager) getSystemService(LOCATION_SERVICE); 
    mLocMgr.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);      
} 

public void initilaizeMap()
{
    mMapView = (MapView) this.findViewById(R.id.mapView); 
    mMapView.setTileSource(TileSourceFactory.MAPNIK); 



    //mMapView.setUseDataConnection(false);



    mMapView.setBuiltInZoomControls(true); 
    mMapView.setMultiTouchControls(true); 
    mapController = this.mMapView.getController(); 
    mapController.setZoom(15); 
    mapController.setCenter(new GeoPoint(15.610762,32.540345));


    /*
    final MyLocationOverlay myLocationOverlay = new MyLocationOverlay(this, mMapView, 
            mResourceProxy); 
    myLocationOverlay.enableMyLocation(); …
Run Code Online (Sandbox Code Playgroud)

maps android location osmdroid

6
推荐指数
1
解决办法
5193
查看次数

使用 MyLocationOverlay 绘制精度圆

我正在开发一个 Android 应用程序,该应用程序显示带有用户位置的地图,到目前为止我能够在线和离线显示地图。现在我想知道如何使用 osmdroid 中的标记绘制一个精度圆MylocationOverlay

这是我的代码:

public class AhmedActivity extends Activity 
{
    /** Called when the activity is first created. */
    private MapView mapView;
    private MapController mapController;
    private ScaleBarOverlay mScaleBarOverlay; 
    MyLocationOverlay myLocationOverlay = null;
    private LocationManager locationManager;

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

        // Initialize the location:
        locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);

        initializemap();

        /* My location overlay */
        /* Create a static Overlay showing a the current location and a compass */                  
        myLocationOverlay = new MyLocationOverlay(this, mapView); …
Run Code Online (Sandbox Code Playgroud)

maps gps android mylocationoverlay osmdroid

3
推荐指数
1
解决办法
4429
查看次数

标签 统计

android ×2

maps ×2

osmdroid ×2

gps ×1

location ×1

mylocationoverlay ×1