2015-04-06 3 views
2

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

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

ответ

3

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

Обратите внимание, что «Google Play Services для Froyo» на самом деле является последней версией сервисов Google Play, которая поддерживает Froyo - 3.2.65 (это было Google Play services 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 services 6.5 предлагает возможность selectively include APIs, поэтому ваше приложение включает только используемые вами API.

+0

Мне нужно попробовать поставить версию в файле build.gradle. Извините, я новичок в Gradle и Android Studio и не знал, что смогу это сделать. – jzapata

+0

Нет проблем! Eclipse никогда не давала понять, что существуют разные версии сервисов Google Play - это было самое последнее, что поддерживало Froyo и самую последнюю версию. Gradle дает вам возможность выбрать именно ту версию, которая вам нужна, и с тех пор она будет работать (обновление вашего SDK не изменяет вашу зависимость) - дает вам контроль над тем, когда вы переходите к более новой версии. – ianhanniballake

+0

Я должен сказать, что это, к сожалению, не так. Я обновил «com.google.android.gms: play-services: 7.5.0» до «com.google.android.gms: play-services: 9.4.0», и мой эмулятор остановил поддержку приложения. Пришлось отменить это, чтобы обеспечить обратную совместимость с эмулятором, все реальные устройства, казалось, были в порядке, но они подвержены обновлениям. – HopefullyHelpful