L'accès LocationManager/: LocationListener de la classe

Je suis un peu perdu ici: Dans mon activité principale, je m'inscrire à un LocationManager et le connecter à un: LocationListener à utiliser myLocation.getLatitude() et autres.

Maintenant, j'ai besoin d'utiliser les méthodes d'une autre classe.

Je ne peux pas utiliser ces objets d'une autre classe parce que je ne peux pas intantiate l'activité principale.
Je ne peux pas utiliser les méthodes de lecture pour passer le L. Manager ou L. Écouteur autour, car celles-ci sont non - statique de nouveau.

Donc, en général, comment puis-je accéder à des objets que j'ai créé dans l'activité principale?
Tous les conseils sur la façon d'organiser ce mieux? Est le: LocationListener classe au sein de l'activité principale de classe une chose stupide à faire en général?

public class URNavActivity extends Activity

{
    public LocationManager mlocManager;
    public LocationListener mlocListener;
...
}

public void onCreate(Bundle savedInstanceState)
{       
    super.onCreate(savedInstanceState);
    mResourceProxy = new DefaultResourceProxyImpl(getApplicationContext());

    actVar=this;

    initGraph();
    setMap();
    gpsEnable();
    initMyLocation();
    getItems();
    initOverlay();
}

public void gpsEnable ()
{
    mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

    mlocListener = new MyLocationListener();

    mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
}

public class MyLocationListener implements LocationListener

{

@Override

public void onLocationChanged(Location loc)

{

    loc.getLatitude();
    loc.getLongitude();
    myMap.getController().setCenter(new GeoPoint(lati, longi));
}

OriginalL'auteur asco | 2011-10-13