最後の既知の場所を取得できません。 GoogleコンソールでGeocoding APIとGoogle Places API for Androidを有効にしました。マニフェストファイルにAPIキーを追加しました:
<meta-data
Android:name="com.google.Android.gms.version"
Android:value="@integer/google_play_services_version" />
<meta-data
Android:name="com.google.Android.geo.API_KEY"
Android:value="@string/google_api_key" />
しかし、コンソールに「Google APIクライアントに接続できませんでした:ConnectionResult {statusCode = API_UNAVAILABLE、resolution = null}」というメッセージが表示され続けます。
[〜#〜]更新[〜#〜]
protected synchronized void buildGoogleApiClient() {
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(LocationServices.API)
.build();
}
@Override
public void onConnected(Bundle connectionHint) {
Location mLastLocation = LocationServices.FusedLocationApi.getLastLocation(
mGoogleApiClient);
if (mLastLocation != null) {
Toast.makeText(this, "Latitude = " + mLastLocation.getLatitude() + "\n" +
"Longitude = " + mLastLocation.getLongitude(), Toast.LENGTH_LONG).show();
}
}
@Override
public void onConnectionFailed(ConnectionResult connectionResult) {
Toast.makeText(this, connectionResult.toString(), Toast.LENGTH_LONG).show();
}
onConnectedおよびonConnectionFailedは呼び出しません。
また、 Android-ReactiveLocation を使用しますが、両方のメソッドがコンソールに出力されます:Google APIクライアントに接続できませんでした:ConnectionResult {statusCode = API_UNAVAILABLE、resolution = null }
私は同じ問題を抱えていました
Couldn't connect to Google API client: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null}
なぜならGoogle Places API for Android
はAPIコンソールで有効になっていませんでした。
私はここで同様の問題を抱えていました。特にGoogleAPIを使用していませんでしたが、このエラーも発生していました。
私のシナリオは次のとおりです。ウェアラブルアプリを作成していて、DataItemを電話からウェアラブルに送信したいと考えていました。そのために、私はGoogleApiClientとWearable.DataApiを使用していました。
問題を解決するのに何時間も苦労した後、私はこの投稿に行きました: https://Android-developers.googleblog.com/2014/10/tips-for-error-handling-with-Android.html =。
私にとって重要な記事の部分は次のとおりです。
Android Wearコンパニオンアプリケーションまたはデバイスが利用できない場合にWearable.APIをリクエストする場合。
だから、私は電話にコンパニオンアプリをインストールする問題を解決しました: https://play.google.com/store/apps/details?id=com.google.Android.wearable.app
それをインストールした後、ResultCallbackは成功を返し始めました。
import com.google.auth.oauth2.{GoogleCredentials, ServiceAccountCredentials}
import com.google.cloud.bigquery._
class XYZRawDataIngestion {
def run(): Unit = {
var credentials: GoogleCredentials = null
val client_id: String = "10754111315596"
val client_email: String = "[email protected]"
val private_key = "-----BEGIN PRIVATE KEY-----\nMII9xE9wTn68bxG8W60yU4O+JdullsTX\naOCrYTyVsTK+U78ElELXSqKn+Mqqka/IAS9ETCutLXhMNbTHbDUoN6POzU1c7GGz\nxSAmSXzVz6ejoJ9zoZXCB+cEI/CCne+GoGzg+CUCgYEAuGFxjuFNEAJbOamo6zWu\n/MobrYwqg4W4akwe4bgFE9lbpb3qs5pKhxGz0Utn3fNyhsTwQvgJ5oCBVIRxZwzv\nM8+4aHXGMJLNMf6EpUeoOCWOcp+6kLFNZZF9erUU1d3m+ID4Df4AUijIIG6lUQa1\nLP4eCwDeNpJGFcTQuz18u+U=\n-----END PRIVATE KEY-----\n"
val private_key_id: String = "79072ec47cc5a70bb4f2da1ccd4a"
val project_id = "xyz-mgmt"
val token_uri = new URI("https://oauth2.googleapis.com/token")
credentials = ServiceAccountCredentials.fromPkcs8(client_id, client_email, private_key, private_key_id,
null, null, token_uri)
val bigquery: BigQuery = BigQueryOptions.newBuilder.setCredentials(credentials).setProjectId(project_id).build().getService()
}
}
コンソールでGoogle + Apiを有効にしていません。
他のAPIを使用したいが、ユーザーがGoogle+アカウントでログインする必要がある場合は、それを有効にする必要があります。
それがうまくいくことを願っています。
Google FitAPIの利用で同じ問題が発生しました。あなたが説明したものと非常によく似た設定で、私は同じエラーメッセージを受け取りました:
Google APIクライアントに接続できませんでした:ConnectionResult {statusCode = API_UNAVAILABLE、resolution = null}
問題は、Googleサインインサービスとの通信の構成になりました。 Googleのドキュメントを見つけた後、この問題を解決しました: GoogleサインインのAndroidアプリへの統合を開始 。キーストアのSHA1ハッシュを取得する手順については、「構成ファイルの取得」セクションを使用し、次に「構成ファイルの取得」ボタンを使用してGoogle Developer Consoleプロセスを開始し、「/」に配置されたJSONファイルを作成しました。 Androidアプリケーションのapp "ディレクトリ。
Google ConsoleデベロッパーでPlaceAPIを有効にしましたか? ([APIと認証]メニュー内)。 Android APIキーを選択しましたか?
それは私にとってはうまくいくので、そうでなければ何ができるのかわかりません。
私のアプリはGoogleドライブAPIを使用していますが、同じ問題が発生しました "Google APIクライアントに接続できませんでした:ConnectionResult {statusCode = API_UNAVAILABLE、resolution = null}一部のデバイスで。通過するアドバイス GoogleサインインをあなたのAndroidアプリ に統合し始める)は役に立ちましたが、私は本当に混乱しました:
google-services.jsonは結果のapkにどのように影響しますか?リリース証明書などについても同じことをする必要がありますか?...
最終的に私は舞台裏にあるものを見つけました 別の答え はgoogle-services.jsonが単なるオプションであることを明らかにしました。
したがって、これらの手順は私を助けました:
また、対応するAPIがプロジェクトで有効になっていることを確認することを忘れないでください(ステップ#1を参照)
Googleサインインの統合の開始Android App を介してgoogle-services.jsonを生成している間、同じ「OAuth2.0クライアントID」が暗黙的に作成されます。