Безопасно ли компилировать старую версию Сервисов Google Play?

Мне нравится быть в курсе как можно больше о библиотеках, но в проекте, который я начал год назад, я был на Eclipse и использовал сервис Google Play для Froyo. Я недавно начал использовать Android Studio и, конечно, теперь у меня много неработающего кода, потому что я изначально использовал самую последнюю версию Google Play Services.

Чтобы исправить это, я импортировал старый сервис Google Play для проекта Froyo Eclipse и сделал его модулем в Android Studio, на который я ссылался. Мне не обязательно нужны новые функции библиотеки, и она работает. Вот мой вопрос: безопасно ли это делать? Я не хочу, чтобы это кусало меня на новых устройствах.

1 ответ

Решение

Все новые версии сервисов Google Play (приложение) обратно совместимы со всеми предыдущими версиями SDK, что означает, что код, скомпилированный с более старым SDK, будет продолжать работать даже после обновления сервисов Google Play на каждом устройстве.

Обратите внимание, что "Сервисы Google Play для Froyo" на самом деле являются последней версией сервисов Google Play, которые поддерживают Froyo. 3.2.65 (это были сервисы Google Play 4.0, которые отказались от поддержки Froyo). Если вы используете Gradle, вы все равно можете сослаться на это в своем build.gradle файл без необходимости импортировать его как модуль:

dependencies {
  compile 'com.google.android.gms:play-services:3.2.65'

}

Вы можете увидеть полный список версий сервисов Google Play, доступных через Gradle, посмотрев в {android-sdk}/extras/google/m2repository/com/google/android/gms/play-services каталог, в котором в настоящее время перечислены следующие версии: 3.1.36, 3.1.59, 3.2.25, 3.2.65, 4.0.30, 4.1.32, 4.2.42, 4.3.23, 4.4.52, 5.0.89, 6.1.11, 6.1.71, 6.5.87, а также 7.0.0,

Вы должны строго рассмотреть пошаговое решение проблем каждой версии, так как они появляются, поскольку каждый выпуск имеет значительное количество исправлений. В частности, сервисы Google Play 6.5 предоставляют возможность выборочно включать API-интерфейсы, поэтому ваше приложение включает только те API-интерфейсы, которые вы фактически используете.

Другие вопросы по тегам