如何从 Google Places API 将地图类型从简单更改为 PlacePicker 的卫星?

Posted

技术标签:

【中文标题】如何从 Google Places API 将地图类型从简单更改为 PlacePicker 的卫星?【英文标题】:How to change map type from simple to satellite of PlacePicker from Google Places API? 【发布时间】:2017-04-08 05:05:03 【问题描述】:

我在我的应用程序中使用PlacePicker API,并希望将其地图类型从简单更改为卫星。

PlacePicker 是 Google 提供的 API。

这是我的使用方法:

// Construct an intent for the place picker
                try 
                    PlacePicker.IntentBuilder intentBuilder =
                            new PlacePicker.IntentBuilder();
                    Intent intent = intentBuilder.build(this);
                    // Start the intent by requesting a result,
                    // identified by a request code.
                    startActivityForResult(intent, PLACE_PICKER_REQUEST);

                 catch (GooglePlayServicesRepairableException e) 
                    Snackbar snackbar = Snackbar
                            .make(coordinatorLayout, e.getMessage(), Snackbar.LENGTH_SHORT);
                    snackbar.show();
                    // ...
                 catch (GooglePlayServicesNotAvailableException e) 
                    Snackbar snackbar = Snackbar
                            .make(coordinatorLayout, e.getMessage(), Snackbar.LENGTH_SHORT);
                    snackbar.show();
                    // ...
                

然后在onActivityResult():

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
        if (requestCode == PLACE_PICKER_REQUEST
                && resultCode == Activity.RESULT_OK) 

            // The user has selected a place. Extract the name and address.
            final Place place = PlacePicker.getPlace(data, this);

            final CharSequence name = place.getName();
            final CharSequence address = place.getAddress();
            LatLng latLng = place.getLatLng();
            final double lat = latLng.latitude;
            final double lng = latLng.longitude;
            String attributions = PlacePicker.getAttributions(data);
            if (attributions == null) 
                attributions = "";
            

//            mViewName.setText(name);
//            mViewAddress.setText(address);
//            mViewAttributions.setText(html.fromHtml(attributions));

         else 
            super.onActivityResult(requestCode, resultCode, data);
        
    

它只显示简单的地图类型。我想显示卫星类型的地图。

请告诉我怎么做?

【问题讨论】:

我认为没有给出这样的选项。因为如果您看到有关此的文档,则在任何地方都没有提到有关地点 api 的地图类型。知道这是否可能很有趣。 【参考方案1】:

目前无法在 Place Picker 中更改地图类型。您可以在 Place API 的 public issue tracker 上添加功能请求。

【讨论】:

完成code.google.com/p/gmaps-api-issues/issues/… :)

以上是关于如何从 Google Places API 将地图类型从简单更改为 PlacePicker 的卫星?的主要内容,如果未能解决你的问题,请参考以下文章

如何让 Google 地图“Places API”返回邮政编码信息?

如何使用 Google 地图搜索我自己的位置数据(与 Places 搜索 API 的功能相同,但用于我自己的“地点”)

Google Places API - 附近搜索不如地图准确?

使用Javascript从Google Places搜索api获取纬度和经度

Google Maps Places API - 如何获取地名? [复制]

适用于 Android 的 Google Places API:地图立即消失