端末にGoogle Play Servicesがインストールされているか確認する方法


こんにちは、@9ensanです。

gps

2012年12月にAndroidの「Google Mapがversion2」になって、「Google Play Services」を利用するようになりました。
となるとここで問題が1つ、端末にGoogle Play Servicesが入っているかどうか確認が必要になるのでは?と言う事です。

 

色々とGoogleのサイトを見ているとLocation API関連のサンプルコードに「Google Play Services」のインストールチェックについて説明が記載されていました。
Googleの対象のドキュメントページはこちらです。

それでは、その内容について解説していきます。

コード解説

  1. まず「Google Play Services」は、Android 2.2から利用できるので、サポートライブラリの「android.support.v4.app.FragmentActivity」を継承します。
    public class MainActivity extends FragmentActivity implements
            LocationListener,
            GooglePlayServicesClient.ConnectionCallbacks,
            GooglePlayServicesClient.OnConnectionFailedListener {
  2. GooglePlayServicesUtil.isGooglePlayServicesAvailable」を呼び出してGoogle Play Servicesが使えるかどうか確認します。
            // Check that Google Play services is available
            int resultCode =
                    GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
  3. 戻り値は、intで戻ってきます。戻り値の内容は「ConnectionResult型のコンスタント値」で設定されてきます。
    エラーがない場合は、「ConnectionResult.SUCCESS」で戻って来ます。
    エラーが発生した場合は、上記以外のコンスタント値が設定されて戻ってきます。

            // If Google Play services is available
            if (ConnectionResult.SUCCESS == resultCode) {
  4. エラーの値が戻ってきた場合、「GooglePlayServicesUtil.getErrorDialog」の第1引数に戻り値を設定して呼び出します。
    そうするとDialogのインスタンスが戻ってくるので、DialogFragmentを利用してダイアログを表示します。

                // Display an error dialog
                Dialog dialog = GooglePlayServicesUtil.getErrorDialog(resultCode, this, 0);
                if (dialog != null) {
                    ErrorDialogFragment errorFragment = new ErrorDialogFragment();
                    errorFragment.setDialog(dialog);
                    errorFragment.show(getSupportFragmentManager(), LocationUtils.APPTAG);
                }

この手順で、アプリを操作している端末が「Google Play Services」が使えるかどうかチェックできます
しかもエラーがあった場合のダイアログの内容もAndroid側でなんとかしてくれるみたい、すごく便利です。

 

今回「Google Play Services」のエラーチェック方法をまとめてみて面倒な事はGoogleもなるべくさせないように頑張ってるんだなと驚きました。
このサービスの利用者が増えると色々な情報が集まるから(??どんな情報抜かれてるか全くしりませんが…)Googleとしても頑張っているのではと憶測してしまいます。

Google Play Services」を利用する場合は是非入れてみて下さい。

 

今回紹介したソースコードは、「Retrieving the Current Location」からダウンロードできますので、気になる方はダウンロードして参考にしてください。

.

関連する記事:

Facebookでコメント

コメント

  1. コメント 0

  1. トラックバック 0

*

return top