Почему зависимость play-services-analytics не включает классы GooglePlayServicesUtil или GoogleApiAvailability?

Я включил библиотеку play-services-analytics, например:

dependencies {
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:support-v4:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:recyclerview-v7:23.1.1'
    compile 'com.google.android.gms:play-services-analytics:8.4.0'
}

Однако, когда я перехожу на фактический импорт класса GoogleApiAvailability, например, следующее: Android Studio скажет мне, что он не может разрешить символ GoogleApiAvailability. Я пробовал импортировать теперь устаревший класс GooglePlayServicesUtil безрезультатно.

import com.google.android.gms.common.GoogleApiAvailability;

Мой второй вопрос: что мне нужно включить в файл build.gradle в качестве зависимости, чтобы я мог импортировать и использовать класс GoogleApiAvailability без необходимости импортировать всю библиотеку игровых сервисов Google?

Я мог ошибаться в этом, но все указания моего проекта указывают на проблему игровых сервисов-аналитиков, не считая класс GoogleApiAvailability или устаревший GooglePlayServicesUtil.

Спасибо заранее!

Ответ 1

Здесь вы можете найти список зависимостей сервисов Google Play: https://developers.google.com/android/guides/setup

Если вы запустите gradlew dependencies в своем проекте, вы увидите следующее:

+--- com.google.android.gms:play-services-analytics:8.4.0
|    \--- com.google.android.gms:play-services-basement:8.4.0
|         \--- com.android.support:support-v4:23.0.0 -> 23.1.1 (*)
\--- com.google.android.gms:play-services-base:8.4.0
     \--- com.google.android.gms:play-services-basement:8.4.0 (*)

Зависимость, compile 'com.google.android.gms:play-services-analytics:8.4.0' зависит от compile 'com.google.android.gms:play-services-basement:8.4.0'.

Для ConnectionResult и GoogleApiAvailability вам также потребуется: compile 'com.google.android.gms:play-services-base:8.4.0'.

Кроме того, new HitBuilders.AppViewBuilder().build() устарел в пользу new HitBuilders.ScreenViewBuilder().build().

Ответ 2

Мне также не удалось найти файлы GooglePlayServicesUtil и GoogleApiAvailability, но без добавления какой-либо другой зависимости моя проблема была решена этим.

Может помочь кому-то