2016-06-30 3 views
11

私のプロジェクトにFirebase Analyticsを統合したいと思います。AndroidでFirebase Analyticsを使用してSERVICE_VERSION_UPDATE_REQUIREDエラーが発生しました

私はGuideに続くが、それは私にこの警告与える:

06-30 18:38:30.514 W/FA  (2091): Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null} 
06-30 18:38:30.888 W/FA  (2091): Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null} 
06-30 18:38:32.306 W/FA  (2091): Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null} 
06-30 18:38:32.338 W/FA  (2091): Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null} 
06-30 18:38:32.661 W/FA  (2091): Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null} 
06-30 18:39:32.680 W/FA  (2091): Tasks have been queued for a long time 

マイプロジェクトのバージョンをされています。ログは

adb shell setprop log.tag.FA VERBOSE 
adb shell setprop log.tag.FA-SVC VERBOSE 
adb logcat -v time -s FA FA-SVC 

てプリントアウトされ

ext { 
minSdkVersion = 17 
targetSdkVersion = 23 
compileSdkVersion = 23 
compileSdkVersionS = 'Google Inc.:Google APIs:23' 
supportVersion = '24.0.0' 
buildToolsVersion = '23.0.2' 
sourceCompatibilityVersion = JavaVersion.VERSION_1_7 
targetCompatibilityVersion = JavaVersion.VERSION_1_7 
gradleVersion = '2.1.2' 
playServicesVersion = '9.2.0' 
gsonVersion = '2.3'} 

私は思います私は今使用しているバージョンは十分ですが、まだエラーメッセージが表示されています。私にそれについてのヒントはありますか?

+0

Google Playサービスに更新が必要であることを示す警告が表示されることがあります。 _Google Playサービスが古くなった_という警告メッセージも表示されていませんか?あなたはエミュレータで走っていますか?私のデバイス上のGPSのバージョンは9.2.56です。 –

+0

1.警告メッセージが表示されませんでした。 2.実際のデバイスで動作しています。携帯電話でGoogle Playサービスを更新するにはどうすればよいですか? –

+0

設定/アプリケーションマネージャでGoogle Playサービスを検索すると、インストールされているバージョン番号を確認できます。現在のバージョンは9.2.56です。インストールされているバージョン番号をコードから取得するには、[GoogleApiAvalability.GOOGLE_PLAY_SERVICES_VERSION_CODE](https://developers.google.com/android/reference/com/google/android/gms/common/GoogleApiAvailability)を呼び出します。インストールされているバージョンが最新でない場合は、[Google Playストア](https://play.google.com/store/apps/details?id=com.google.android.gms&hl=ja)からアップデートできます。 –

答えて

9

質問(上記参照)にコメントを投稿した後、私は古いバージョンのGoogle Playサービスを搭載したエミュレータでFirebase 9.2.0で構築されたアプリケーションを実行してみました。質問に投稿されたコマンドadbを使用して、質問に含まれている警告と同じ警告を見ました。

W/GooglePlayServicesUtil: Google Play services out of date. Requires 9256000 but found 9080030 

あなたは、Googleがあなたのデバイス上のサービスを再生する更新する必要があります。また、通常logcat出力内のメッセージでした。 Firebase 9.2.0を実行している場合、必要なPlay Servicesのバージョンは9.2.56です。

+0

プロダクションデバイスで実行中にこのエラーをキャッチ/検出する方法はありますか? Google PlayサービスAPIに手動で接続するときは、[https://developers.google.com/android/reference/com/google/android/gms/common/api/GoogleApiClient.OnConnectionFailedListener#onConnectionFailed(com.google.android .gms.common.ConnectionResult))]この目的のために、Firebaseは舞台裏でconnの試みをしているようです。現場の多くの端末で古いGoogle Playサービスが実行されているため、このエラーをプログラムでキャッチしてユーザーに更新を促すことが重要です。 – CCJ

+1

@CCJ:[GoogleApiAvailability](https://developers.google.com/android/reference/com/google/android/gms/common/GoogleApiAvailability)のメソッド、特にisGooglePlayServicesAvailable()を使用します。 –

+0

ああ。このメソッドのテキストには、「この端末にGoogle Playのサービスがインストールされて有効になっていることを確認し、この端末にインストールされているバージョンはこのクライアントで必要なバージョンより古い」というメッセージが表示されます。必要なバージョンを特定のGoogle PlayサービスAPIに固有のものにする必要はありませんか?もしそうなら、FirebaseのAPI接続試行がSERVICE_VERSION_UPDATE_REQUIRED状態にならないようFirebase Analyticsが要求するAPIにこのメソッドをどのように適用できますか? – CCJ

関連する問題