在Android中的谷歌地图中获取地名

voi*_*Adi 6 android google-maps google-places-api

我要求每当我拖动/浏览Google地图并在其上放置标记时,它应该在AutocompleteTextview中显示地点的名称(放置标记的位置).我已经查看了Places API和Geocoder类,但我最不了解它.我需要执行与life360应用程序中"位置"选项卡相同的任务.我怎样才能实现它?

Ani*_*mar 8

试试这可能对你有所帮助......

当你标记一个地方时,尝试用标记捕获纬度和经度并使用此代码获取位置名称

public String getAddress(Context context, double lat, double lng) {
    Geocoder geocoder = new Geocoder(context, Locale.getDefault());
    try {
        List<Address> addresses = geocoder.getFromLocation(lat, lng, 1);
        Address obj = addresses.get(0);

        String add = obj.getAddressLine(0);
        add = add + "\n" + obj.getCountryName();
        add = add + "\n" + obj.getCountryCode();
        add = add + "\n" + obj.getAdminArea();
        add = add + "\n" + obj.getPostalCode();
        add = add + "\n" + obj.getSubAdminArea();
        add = add + "\n" + obj.getLocality();
        add = add + "\n" + obj.getSubThoroughfare();

        return add;
    } catch (IOException e) {
        e.printStackTrace();
        Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)