Android Google地方选择器:地图平移

时间:2016-09-25 20:20:33

标签: google-places-api picker google-places gmsplacepicker

当地点选择器启动时,附近的地点列表应该出现在旁边的3-5秒长的加载圆动画。加载圈消失后,列表中没有显示附近的地方,并且地图上没有显示附近的地方别针。

现在,如果在任何方向上平移地图(放大并没有做任何事情),那么附近的地方就可以正常加载。

下面的第一张图片是在地点选择器启动后拍摄的,它将保持这种方式而不加载任何附近的地方,直到我平移地图。

在我平移地图后拍摄第二张图片,附近的地方正确加载。

在底部是我的相关代码,如果您需要更多,请告诉我。

Before panning the map After panning the map

<manifest
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
    <application
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="MY_API_KEY" />
        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
    </application>
</manifest>

// Emulator is using google play services version 9.4.52
dependencies {    
    compile 'com.google.android.gms:play-services-maps:9.4+'
    compile 'com.google.android.gms:play-services-places:9.4+'
    compile 'com.google.android.gms:play-services-location:9.4+'
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    mGoogleApiClient = new GoogleApiClient
            .Builder(this)
            .addApi(Places.GEO_DATA_API)
            .addApi(Places.PLACE_DETECTION_API)
            .enableAutoManage(this, this)
            .build();
}

public void choosePlace() {
    try {
        PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder();
        Intent intent = intentBuilder.build(this);
        startActivityForResult(intent, PLACE_PICKER_REQUEST);
    } catch (GooglePlayServicesRepairableException e) {
        // This is not being thrown
    } catch (GooglePlayServicesNotAvailableException e) {
        // This is not being thrown
    }
}

@Override
public void onConnectionFailed(ConnectionResult result) {
    // This is not being called
}

1 个答案:

答案 0 :(得分:0)

你添加了吗?

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

我遇到了同样的问题,因为我忘了将元数据添加到我的清单