使用FusedLocationApi搜索位置

时间:2017-04-05 13:16:49

标签: android google-maps google-places-api fusedlocationproviderapi

实际上我正在使用FusedLocationApi来获取用户当前位置,之后我将在地图上添加标记并且它正常工作.. 现在我在MapFragment上添加一个EditText,如果用户输入的另一个位置比我的标记移动到新位置,则为editText的目的...

所以我的问题是:

是否有可能通过FusedLocationApi找到地点或地址,因为someOne建议我使用Google Places Api

3 个答案:

答案 0 :(得分:2)

使用Google地方自动填充功能获取地图上的搜索地址位置。 Place Autocomplete

答案 1 :(得分:2)

我想你想搜索google places api中的地方,你可以使用PlaceAutocompleteFragment获取位置并通过Latlong搜索它。

在添加Edittext时您将面临的问题是当谷歌地图api无法识别该位置时,它将显示没有位置并让您考虑确切的名称而不是PlaceAutocompleteFragment将帮助您猜测确切的位置。 / p>

实施 - PlaceSelectionListener 并添加以下代码

PlaceAutocompleteFragment autocompleteFragment;
    PlaceSelectionListener ps;
autocompleteFragment = (PlaceAutocompleteFragment)
                getFragmentManager().findFragmentById(R.id.search1);

set listner -   autocompleteFragment.setOnPlaceSelectedListener(this);


public void onPlaceSelected(Place place) {
        if (m_map == null) {
            return;
        }
        g = place.getName().toString();

        final LatLng latLng = place.getLatLng();
        m_map.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 21));


    }

XML-

<fragment
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:name="com.google.android.gms.location.places.ui.PlaceAutocompleteFragment"
    android:id="@+id/search1"

    >

答案 2 :(得分:1)

  

是否可以通过FusedLocationApi查找地点或地址,因为someOne建议我使用Google Places Api

您必须使用Google places Api将坐标转换为地址,反之亦然。 FusedLocationApi只能帮助您找到手机的GPS坐标。