トラブルシューティング

一般的な問題のトラブルシューティングに関するヒントを以下にご紹介します。

精度半径が非常に大きいのはなぜですか?

位置情報のレスポンスの精度が精度フィールドに非常に高い値を示している場合、サービスは Wi-Fi ポイントや基地局ではなく、リクエスト IP に基づいて位置情報を取得している可能性があります。このようなレスポンスは、サービスが基地局やアクセス ポイントを認識しない場合にも発生することがあります。

サービスがアクセス ポイントの位置情報を取得できなかったことを確認するには、リクエストで considerIp を false に設定します。レスポンスが 404 の場合、wifiAccessPoints オブジェクトと cellTowers オブジェクトが位置情報を特定できなかったことが確認できます。

レスポンス エラーをトラブルシューティングするにはどうすればよいですか?

リクエストでエラーが発生した場合、標準形式のエラー レスポンスの本文が返され、HTTP ステータス コードがエラー ステータスに設定されます。

エラー レスポンスには、次のキーを持つ 1 つのエラー オブジェクトを含むオブジェクトが含まれています。

  • code: レスポンスの HTTP ステータスと同じです。
  • message: エラーの簡単な説明。
  • errors: 発生したエラーのリスト。各エラーには、エラーのタイプの識別子(理由)と簡単な説明(メッセージ)が含まれています。

たとえば、無効な JSON を送信すると、次のエラーが返されます。

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "parseError",
    "message": "Parse Error",
   }
  ],
  "code": 400,
  "message": "Parse Error"
 }
}

デバイスからテスト情報を収集する

追加のテストとして、次の SDK と API を使用してデバイスから情報を収集できます。

エラーの説明

発生する可能性のあるエラーとその説明は次のとおりです。

理由 ドメイン HTTP ステータス コード 説明
dailyLimitExceeded usageLimits 403 1 日の上限を超えました。
keyInvalid usageLimits 400 API キーが Geolocation API で有効ではありません。キー全体を指定していることを確認してください。また、API の購入を行っている、または課金を有効にして API のアクティベーションを行っていることを確認してください。これにより、割り当てを無料で取得できます。
userRateLimitExceeded usageLimits 403 Google Cloud コンソールで構成したリクエストの上限を超えています。この上限は通常、1 日あたりのリクエスト数、100 秒あたりのリクエスト数、ユーザーごとの 100 秒あたりのリクエスト数として設定されます。すべてのユーザーに妥当な範囲でアクセスを許可しつつ、1 人または少数のユーザーが 1 日あたりの割り当て量を使い切ってしまうのを防ぐように、上限を構成する必要があります。これらの上限を構成する方法については、API 使用量の上限設定をご覧ください。
notFound geolocation 404 リクエストは有効ですが、結果が返されませんでした。
parseError global 400 リクエスト本文が有効な JSON ではありません。各フィールドの詳細については、リクエスト本文のセクションをご覧ください。