Google Place API for Android:无法选择地方选择器

时间:2016-11-16 13:35:56

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

我添加到我的Android应用程序Place Picker。当您知道要挑选的地点的地址并填写研究栏时,它就有效。 但我希望用户可以选择使用红色选择器的选择位置,这部分不起作用。

当您选择带有红色选择器的地点并点击“选择此位置”时,如here

我们无法选择这个地方。 “选择”按钮显示为灰色。就像你可以观察here一样。

当然,我已在Google Developer Console上启用了Google Place Android API和Google Maps Android API。

我在stackoverflow上搜索了原因(和解决方案)。我发现一些帖子说要把我们可以在google开发者控制台上找到的API密钥放在里面:

<meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/google_maps_key" />

我做到了但没有积极的结果。

然后我尝试从头开始再次执行Place Picker,但没有成功。

这是我使用Place Picker的代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_edit_location);
    Button chooseLocationButton = (Button) findViewById(R.id.choose_location);
    PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder();
    try {
        final Intent intent = intentBuilder.build(this);
        chooseLocationButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivityForResult(intent, REQUEST_PLACE_PICKER);
            }
        });

    } catch (GooglePlayServicesRepairableException e) {
        e.printStackTrace();
        // TODO handle exception!
    } catch (GooglePlayServicesNotAvailableException e) {
        e.printStackTrace();
        // TODO handle exception!
    }


@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_PLACE_PICKER) {
        if (resultCode == RESULT_OK) {
            Place place = PlacePicker.getPlace(data, this);
            String toast = String.format("Place: %s", place.getName());
            longitude = place.getLatLng().longitude;
            latitude = place.getLatLng().latitude;
            Toast.makeText(this, toast, Toast.LENGTH_LONG).show();
        }
    }
}

我没有找到在互联网上尝试的解决方案。这就是我写这个问题的原因。有没有人知道为什么这不起作用?

谢谢。

1 个答案:

答案 0 :(得分:1)

我认为您尚未在API控制台中启用“Google Places API for Android”,启用它。我曾遇到过同样的问题。我使用上面的解决方案解决了。