2017-12-27 18 views
2

が欠落しているときに私がプレイサービスは、いつものように利用可能であるかどうかをチェックするコードを実装しているConnectionResult.SUCCESSを返します。isGooglePlayServicesAvailableは()サービスが

mGooglePlayServicesAvailable = false; 
GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance(); 
int resultCode = apiAvailability.isGooglePlayServicesAvailable(this); 
if (resultCode == ConnectionResult.SUCCESS) { 
    mGooglePlayServicesAvailable = true; 
} 
else if (apiAvailability.isUserResolvableError(resultCode)) { 
    apiAvailability.getErrorDialog(this, resultCode, RC_AVAILABILITY).show(); 
} 

私の問題は、resultCodeががあってもConnectionResult.SUCCESSのようだということですサービスは欠落しています。これは、多くのデバイスでAndroidアプリをクラッシュさせます。

P.S.私はlogcatで次の行を見ることができます。これはむしろ変です。

E/GooglePlayServicesUtil(12419): The Google Play services resources were not found. Check your project configuration to ensure that the resources are included. 

プレイサービスが利用可能かどうかを確認するためのより良い方法がある場合は、この動作を引き起こしたりすることができるもの上の任意のアイデア?

前もって感謝します。

答えて

0

調査の結果、ConnectionResult.SUCCESSの背後にある理由は、「Google Playサービス」が実際に利用可能であり、最新のものであることが分かりました。無効化されたアプリは「Googleがゲームをプレイ」だったので、私はちょうど私のコード、より良い、このような状況を処理するためのビットを拡張する必要がありました:

mGooglePlayGamesAvailable = false; 
try { 
    int status = getPackageManager().getApplicationEnabledSetting("com.google.android.play.games"); 
    switch(status) { 
     case PackageManager.COMPONENT_ENABLED_STATE_DEFAULT: 
     case PackageManager.COMPONENT_ENABLED_STATE_ENABLED: 
      // check if play services are up to date 
      GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance(); 
      int resultCode = apiAvailability.isGooglePlayServicesAvailable(this); 
      if (resultCode == ConnectionResult.SUCCESS) { 
       mGooglePlayGamesAvailable = true; 
      } 
      else if (apiAvailability.isUserResolvableError(resultCode)) { 
       apiAvailability.getErrorDialog(this, resultCode, RC_AVAILABILITY).show(); 
      } 
      break; 
    } 

} catch(IllegalArgumentException e) {} 

私は、これは誰か、あなたの注意のための多くの感謝とコーディング幸せに役立ちます願っています。

P.S.この解決策が十分にエレガントではないと思うなら、コメントをしてください。

関連する問題