0

我目前正在我的应用程序中检索当前位置,但我还需要该位置的文本,或者至少我所在的城市,类似的东西。

有什么已知的方法可以做到这一点吗?

这是我到目前为止所拥有的:

package ro.gebs.captoom.activities;

import android.app.Activity;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.Window;

import com.example.captoom.R;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;

public class LocationActivity extends Activity {

    private GoogleMap map;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
        getActionBar().hide();
        setContentView(R.layout.preview_location);

        map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
                .getMap();

        LocationManager service = (LocationManager) getSystemService(LOCATION_SERVICE);
        Criteria criteria = new Criteria();
        String provider = service.getBestProvider(criteria, false);
        Location location = service.getLastKnownLocation(provider);
        LatLng userLocation = new LatLng(location.getLatitude(),location.getLongitude());


        if (map != null) {
            Marker current_location_marker = map.addMarker(new MarkerOptions().position(userLocation)
                      .title("Current Location"));
        } else {

        }

        map.moveCamera(
                CameraUpdateFactory.newLatLngZoom(userLocation, 10));

        // Zoom in, animating the camera.
        map.animateCamera(
                CameraUpdateFactory.zoomTo(10), 2000, null);

    }

}
4

1 回答 1

1

首先,您必须获取当前地址latitudelongitude然后才能使用google api获取当前地址组件。请参阅我对这个问题的回答以address获取lat long

使用纬度和经度获取特定地址

于 2013-07-31T08:21:34.560 回答