-2

如何获取您在 android 中的当前位置并在您当前位置和您被触摸的位置之间绘制路径或线。

4

1 回答 1

1

要知道您当前的位置,您需要获取当前位置的纬度和经度。

 public void getLatiLongi()
 {
     LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);   
        Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
        if (location != null) {
               flati = location.getLatitude();
               flongi = location.getLongitude();
               System.out.println("Hello....................+lati+longi");
           }
     }

    @Override
    protected void onStart() {
        super.onStart();

        LocationManager locationManager =
                (LocationManager) getSystemService(Context.LOCATION_SERVICE);
        final boolean gpsEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);

        if (!gpsEnabled) {
            gpsAlert();

        }
    }

    public void gpsAlert(){
        AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);

            alertDialogBuilder.setTitle("Enable GPS");  
            alertDialogBuilder
                .setMessage("Yes")      
                .setCancelable(false)
                .setPositiveButton("Yes",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {

                        enableLocationSettings();
                        dialog.cancel();
                    }
                  })
                .setNegativeButton("No",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {        
                        dialog.cancel();
                    }
                });
                AlertDialog alertDialog = alertDialogBuilder.create(); 
                alertDialog.show();
    }
    private void enableLocationSettings() {
        Intent settingsIntent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
        startActivity(settingsIntent);
    }

之后使用标记

https://developers.google.com/maps/documentation/android/marker

您需要目的地的纬度和经度。

https://developers.google.com/maps/documentation/android/shapes#polylines

使用折线绘制从您所在位置到目的地的路径

答案:使用 Google Maps Android API v2 在两点之间绘制路径。此链接对该主题有很好的解释。

于 2013-04-01T12:12:54.923 回答