如何获取您在 android 中的当前位置并在您当前位置和您被触摸的位置之间绘制路径或线。
问问题
602 次
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 回答