在一个意图中询问android位置并在另一个意图上获取它

时间:2014-05-29 20:24:35

标签: android android-intent gps

我知道如何获得GPS位置,那里有很多教程。

有足够的时间我可以获得GPS位置,但时间至关重要。我想询问AP打开时的当前位置,并准备好使用另一个意图;在新意图中只需要一次更新但位置已经设​​置。

现在我正在做的很简单:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.settings);

    locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}
@Override
public void onLocationChanged(Location location) {
    AlertDialog alertDialog = new AlertDialog.Builder(this).create();
    alertDialog.setTitle("GPS Location");
    alertDialog.setMessage("Latitude:" + location.getLatitude() + ", Longitude:" + location.getLongitude());
    alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
        }
    });
    alertDialog.setIcon(R.drawable.ic_launcher);
    alertDialog.show();
    super.onPause();
    locationManager.removeUpdates(locationListener);
}

1 个答案:

答案 0 :(得分:0)

更好的方法是使用服务获取位置。该服务可以在您需要扩展的应用程序对象的“oncreate”上启动。位置详细信息也可以作为成员变量存储在应用程序对象上,这样任何活动或服务都可以获得它。

但是如果你已经在那时收到了位置信息,你也可以通过意图传递位置信息。