구글맵API 연동을 통한 어플리케이션 제작 공부를 하고 있습니다.
P1 Set과 P2 Set을 누르면 화면 중심점에 마커가 찍히는 기능을
구현 하였는데 RUN 버튼을 눌러 이 두 좌표간의 거리를 구해야
하는데 며칠째 구글과 네이버 안드로이드펍과 타 커뮤니티를
뒤져보며 검색해보아도 나오지가 않네요...
Point1 과 Point2 각각의 지도 위도, 경도 좌표를 받아 저장하여
RUN을 눌렀을때 두 거리계산을 하기 위해서 어떻게 해야 할까요..?
혹여나 참고가 되실까 하여 아래 MapsActivity.java 소스 첨부 합니다.

package com.apress.gerber.gmaps;
import android.Manifest;
import android.content.pm.PackageManager;
import android.location.Location;
import android.os.Bundle;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.FragmentActivity;
import android.view.View;
import android.widget.TextView;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.UiSettings;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import static com.apress.gerber.gmaps.R.id.map;
public class MapsActivity extends FragmentActivity implements OnMapReadyCallback
{
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap)
{
mMap = googleMap;
UiSettings uiSettings = mMap.getUiSettings();
uiSettings.setZoomControlsEnabled(true);
mMap.setMyLocationEnabled(true);
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission
(this, Manifest.permission.ACCESS_COARSE_LOCATION)
!= PackageManager.PERMISSION_GRANTED)
{
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return;
}
public void onClick(View view)
{
double distance;
String meter;
Location locationA = new Location("point A");
Location locationB = new Location("point B");
distance = locationA.distanceTo(locationB);
meter = Double.toString(distance);
TextView distanceoutput = (TextView) findViewById(R.id.textView4);
distanceoutput.setText("거리:"+ meter + "m");
}
public void onClickSet1(View v)
{
LatLng center = mMap.getCameraPosition().target;
mMap.addMarker(new MarkerOptions().position(center).title("Point 1"));
}
public void onClickSet2(View v)
{
LatLng center = mMap.getCameraPosition().target;
mMap.addMarker(new MarkerOptions().position(center).title("Point 2"));
}
public void onClickClear1(View v)
{
mMap.clear();
}
public void onClickClear2(View v)
{
mMap.clear();
}
}