Google Places API for Android getCurrentPlaces返回空的possiblePlaces,错误代码为13

时间:2017-06-02 22:08:36

标签: android google-places-api

我确信我的API设置可以与Google客户端API成功连接,但似乎Google Places API for Android存在一些问题,它永远不会返回可能性位置以及getCurrentPlace()

public void getLikelihoods() {

        if (ContextCompat.checkSelfPermission(this,
                Manifest.permission.ACCESS_FINE_LOCATION)
                == PackageManager.PERMISSION_GRANTED) {
            PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
                    .getCurrentPlace(mGoogleApiClient, null);
            result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
                @Override
                public void onResult(PlaceLikelihoodBuffer likelyPlaces) {

                    Log.v(TAG, likelyPlaces.getStatus().getStatusMessage() + " " + likelyPlaces.getStatus().getStatusCode());


                    for (PlaceLikelihood placeLikelihood : likelyPlaces) {
                        Log.i(TAG, String.format("Place '%s' has likelihood: %g",
                                placeLikelihood.getPlace().getName(),
                                placeLikelihood.getLikelihood()));
                    }
                    likelyPlaces.release();
                }
            });
        }
    }

相反,

的状态
Log.v(TAG, likelyPlaces.getStatus().getStatusMessage() + " " + likelyPlaces.getStatus().getStatusCode());

总是返回 错误13 ,这意味着它会被取消,我会得到一个空的可能的

我可以毫无问题地运行Google Places Picker或getPlaceById等。但是当涉及到getCurrentPlace()时,我总是得到这13个错误代码

正如我所说,我确信我的许可,应用程序设置等。 我想知道谷歌的事情还是我还在这里遗失一些东西?

2 个答案:

答案 0 :(得分:0)

看起来,模拟器是无用的,它可以在真实设备中运行。

答案 1 :(得分:0)

示例GitHub问题论坛上还提供了各种建议的解决方案:https://github.com/googlemaps/android-samples/issues/73

主要:

  • 确保已为给定密钥启用了Android的Google Places API
  • 确保已为给定密钥启用Google Maps Android API
  • 确保该应用在支持Play商店的模拟器上运行
  • 检查在真实设备上运行的应用程序
  • 确保清单中定义了以下代码:

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    

此外,the docs suggest的错误代码表示:

  

操作失败,没有更多详细信息。