【问题标题】:get current location获取当前位置
【发布时间】:2010-02-23 13:15:02
【问题描述】:

我已经创建了一个向位置添加标记的 android 程序。 但我需要在地图中显示当前我的位置。我知道这是通过基于位置的服务完成的,但我不知道如何将其合并到我的程序中

这是我的 onCreate 命令


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

    //map
    mapView = (MapView) findViewById(R.id.mapView);

    //zoom
    LinearLayout zoomLayout = (LinearLayout)findViewById(R.id.zoom);  
    View zoomView = mapView.getZoomControls(); 

    zoomLayout.addView(zoomView, 
        new LinearLayout.LayoutParams(
            LayoutParams.WRAP_CONTENT, 
            LayoutParams.WRAP_CONTENT)); 
    mapView.displayZoomControls(true);

    //Philippines coordinate
    mc = mapView.getController();
    String coordinates[] = {"10.952566007", "121.78921587"};
    double lat = Double.parseDouble(coordinates[0]);
    double lng = Double.parseDouble(coordinates[1]);

    p = new GeoPoint((int) (lat * 1E6), (int) (lng * 1E6));

    mc.animateTo(p);
    mc.setZoom(6); 

    mapOverlay = new MapOverlay();
    listOfOverlays = mapView.getOverlays();
    listOfOverlays.clear();
    listOfOverlays.add(mapOverlay);  

    mapView.invalidate();
}

我有一个放置标记的 onTouchEvent。所以那里没有问题, 问题是我需要在程序开始时显示我的位置。它应该在地图上显示一个标记,上面写着“你在这里”或类似的东西。

ps:我想我需要将硬编码点更改为我当前的位置点,但我不知道该怎么做:|

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    为了获取你手机的当前位置,我使用

    LocationManager locationManager = (LocationManager)this.getSystemService(LOCATION_SERVICE);
    标准标准 = 新标准(); 标准.setAccuracy(标准.ACCURACY_COARSE); String bestProvider= locationManager.getBestProvider(criteria, true); 位置 loc = locationManager.getLastKnownLocation(bestProvider);

    在 AndroidManifest.xml 中为这些定义使用权限 (使用其他东西的好位置)

    参考。 http://code.google.com/p/android-bluetooth-on-motion/source/browse/trunk/BluetoothOnMotion/src/com/elsewhat/android/onmotion/BluetoothOnMotionService.java

    在我的应用程序中,我想将一个参数传递给地图意图,以便地图显示标记,但没有找到这样做的方法。按照 Rick(不是 Fred)的建议创建位置叠加层可能是可行的方法

    【讨论】:

    【解决方案2】:

    Hello MapView 展示了如何放置叠加层。我认为您想使用 the google APIS reference 中记录的 MyLocationOverlay 类来获取您当前的位置。

    【讨论】:

    • anddev.org 上的朋友查找器应用程序是另一个比您正在寻找的更好的示例:anddev.org/the_friend_finder_-mapactivity_using_gps-part_i i>-_ii-t93.html
    猜你喜欢
    • 2011-07-15
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-30
    • 2018-12-21
    相关资源
    最近更新 更多