안녕하세요 gps 관련드립니다

Main.class 와 GPS를 구연한 Agps.class 를 구연하였습니다.

Main에서 Agps를  요청 하여 Agps에 Toast로 값을 출력 위,경도가 잘 출력됩니다

제가 알고싶은 것은

위도경도가 변할시 즉 onLocationChanged() 이  호출될시
경,위도를    positionXY() 를 이용하여   Main.class 에서 그배열의 값을 출력 하고싶습니다.

이걸 어떻게 해야 Main에서 리턴 받을 수있을까요?

간단한 로직 이나 힌트 부탁 드립니다.

Agps.class 소스입니다

package Module.GPS;
import java.util.HashMap;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;
public class MGps {
  
 LocationManager lmanager;
 Context con;
 String BestProvider;
 double setLatitude ; //위도 
    double setLongitude; //경도
 double setAltitude ; //고도
 
 
 
 HashMap<String,Double> map;
 
 public MGps(Context con){
  this.con = con;
  locationMg();
 }
 
 
 public void locationMg(){
  
    lmanager = (LocationManager)con.getSystemService(Context.LOCATION_SERVICE);
  
  //최상의 제공자 
    Criteria criteria = new Criteria();
    criteria.setAccuracy(Criteria.NO_REQUIREMENT);
    criteria.setPowerRequirement(Criteria.NO_REQUIREMENT);
    criteria.setAltitudeRequired(false);
    criteria.setCostAllowed(false);

    boolean gps_Status = lmanager.isProviderEnabled(LocationManager.GPS_PROVIDER);
    boolean nwk_Status = lmanager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
    
    if(gps_Status == false && nwk_Status == false ){
     Toast.makeText(con, "위치 공급자에  연결 되어있지 않습니다.", 0).show();
    }else{
     Toast.makeText(con, "위치 공급자에 연결 되어습니다.", 0).show();
        BestProvider = lmanager.getBestProvider(criteria, true);
        lmanager.requestLocationUpdates(BestProvider, 0, 0, loListener);
 
    }
          
 }
    LocationListener loListener = new LocationListener(){

  @Override
  public void onLocationChanged(Location location) {
             
 
    setLatitude  = location.getLatitude();  //위도 
       setLongitude = location.getLongitude(); //경도
    setAltitude  = location.getAltitude();  //고도
    Toast.makeText(con, ""+setLatitude, 0).show();
  }
 @Override
  public void onProviderDisabled(String provider) {
   // TODO Auto-generated method stub
   
  }
  @Override
  public void onProviderEnabled(String provider) {
   // TODO Auto-generated method stub
   
  }

  @Override
  public void onStatusChanged(String provider, int status, Bundle extras) {
   } 
  };
    
   public HashMap<String,Double> positionXY(){
 
 //     HashMap<String,Double> map = new HashMap<String,Double>();
//     map.put("latitude"  , setLatitude);
//     map.put("longitudee", setLongitude);
//     map.put("altitude"  , setAltitude);
     
      return map;
    }
 
    
}