Google 个地方 API 个超出配额

Google Places API quota exceed

我一直在尝试使用 google 个地点 api 来获得相似类型的地点。 这是代码

/**
     * Method to search certain type of place using Places API
     * Uses latitude and longitude from global variable
     */
    private void getPlaces() {
        apiList = getResources().getStringArray(R.array.apiList);
        int randomIndex = new Random().nextInt(apiList.length);
        String api = apiList[randomIndex];
        String url = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=" +
                latitude + "," + longitude + "&rankby=distance&type=" + type + "&key=" + api;

        Log.i("PlaceList", "url: " + url);

        final RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
        final JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
                (Request.Method.GET, url, null, new com.android.volley.Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {
                        Places place;
                        Log.i("PlaceList", "onResponse: response: " + response.toString());
                        try {
                            JSONArray jsonArray = response.getJSONArray("results");
                            for (int i = 0; i < jsonArray.length(); i++) {
                                JSONObject jsonObject = jsonArray.getJSONObject(i);
                                JSONObject geometry = jsonObject.getJSONObject("geometry");
                                JSONObject location = geometry.getJSONObject("location");
                                double lat = location.getDouble("lat");
                                double lng = location.getDouble("lng");
                                String id = jsonObject.getString("id");
                                String name = jsonObject.getString("name");
                                String placeId = jsonObject.getString("place_id");
                                double rating = 0.0;
                                if (jsonObject.has("rating")) {
                                    rating = jsonObject.getDouble("rating");
                                }
                                String vicinity = jsonObject.getString("vicinity");

                                String photoReference = "null";
                                if (jsonObject.has("photos")) {
                                    JSONArray photos = jsonObject.getJSONArray("photos");
                                    JSONObject photosObject = photos.getJSONObject(0);
                                    photoReference = photosObject.getString("photo_reference");
                                }

                                place = new Places(lat, lng, id, name, placeId, rating, photoReference, vicinity);
                                placeArrayList.add(place);
                                Log.i(TAG, "onResponse: palceArrayList: " + placeArrayList.toString());

                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }

                        placeListAdapter.notifyDataSetChanged();
                        dialog.dismiss();
                    }
                }, new com.android.volley.Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Log.e(TAG, "onErrorResponse: error: " + error.toString());
                    }
                });
        requestQueue.add(jsonObjectRequest);
    }

我总是收到 api quote exceeds 错误,所以我尝试使用多个 api using string-array .无论我无法获取数据,我都尝试创建新的 gmail 和 api,但这不起作用。那我做错了什么?

请帮忙。初学者,如有错误请指出错误,我会改正。

谢谢。

尝试在同一开发者帐户中创建一个新项目并启用 PLACES API 和 MAP JAVASCRIPT API。然后它应该可以工作。

您已超出此 API 的 Google API 配额。

我看到您正在使用地点 - 附近 API (https://developers.google.com/places/web-service/search#PlaceSearchRequests)。

可在此处找到当前限制和费率:https://developers.google.com/places/web-service/usage-and-billing