※Setting Up Google Play Servicesより一部抜粋。
Google Play サービスのバージョン6.5以前は全てのAPIのパッケージをアプリに組み込む必要がありました。場合によってはこれはアプリのメソッド数の制限にひっかかる原因になります。Androidでは一つのアプリあたり最大65536個のメソッドしか持つことができず、これにはあなたが書いたコード以外にフレームワークAPI、ライブラリのメソッドも含まれます。
バージョン6.5から、Google Play サービスAPIのうち必要なものだけを選択してコンパイルすることができるようになりました。たとえば、Google Fit と Android Wear APIだけを使用する場合は次のようにbuild.gradle
を書き換えます。
compile 'com.google.android.gms:play-services:10.2.0'
をこうします。
compile 'com.google.android.gms:play-services-fitness:10.2.0'
compile 'com.google.android.gms:play-services-wearable:10.2.0'
次の表は利用目的に応じたそれぞれのAPIを記載しています。いくつかのAPIはここに記載されていませんが、それらはbaseライブラリに含まれます(これはいずれかのライブラリを読み込んだ時に自動的に組み込まれます)。
Google Play services API | Description in build.gradle |
---|---|
Google+ | com.google.android.gms:play-services-plus:10.2.0 |
Google Account Login | com.google.android.gms:play-services-auth:10.2.0 |
Google Actions, Base Client Library | com.google.android.gms:play-services-base:10.2.0 |
Google Address API | com.google.android.gms:play-services-identity:10.2.0 |
Google Analytics | com.google.android.gms:play-services-analytics:10.2.0 |
Google Awareness | com.google.android.gms:play-services-awareness:10.2.0 |
Google Cast | com.google.android.gms:play-services-cast:10.2.0 |
Google Cloud Messaging | com.google.android.gms:play-services-gcm:10.2.0 |
Google Drive | com.google.android.gms:play-services-drive:10.2.0 |
Google Fit | com.google.android.gms:play-services-fitness:10.2.0 |
Google Location and Activity Recognition | com.google.android.gms:play-services-location:10.2.0 |
Google Maps | com.google.android.gms:play-services-maps:10.2.0 |
Google Mobile Ads | com.google.android.gms:play-services-ads:10.2.0 |
Google Places | com.google.android.gms:play-services-places:10.2.0 |
Mobile Vision | com.google.android.gms:play-services-vision:10.2.0 |
Google Nearby | com.google.android.gms:play-services-nearby:10.2.0 |
Google Panorama Viewer | com.google.android.gms:play-services-panorama:10.2.0 |
Google Play Game services | com.google.android.gms:play-services-games:10.2.0 |
SafetyNet | com.google.android.gms:play-services-safetynet:10.2.0 |
Android Pay | com.google.android.gms:play-services-wallet:10.2.0 |
Android Wear | com.google.android.gms:play-services-wearable:10.2.0 |
注意: 必要なクラスを保護するためにProGuardディレクティブがPlayサービスライブラリに含まれています。GradleのAndroidプラグインは自動的にProGuard設定を追記します。プロジェクトを作成するとき、Android Studioは自動的にProGuard設定ファイルとbuild.gradleプロパティをProGuardのために設定します。Android StudioでProGuardを使用するためには、build.gradle buildTypes
で有効にしなければいけません。詳しくはProGuardのトピックを参照してください。