Максимальная обратная совместимость сервисов Google Play

Каковы рекомендуемые методы для обеспечения самой широкой обратной совместимости приложения Android, в то время как в зависимости от Сервисов Google Play?

Документация по реализации разработчика для использования Android Studio указывает на компиляцию под v5. +compile 'com.google.android.gms:play-services:5.+' который с доступными загрузками, которые я использую, кажется, в конечном итоге использует версию 5208000. В этот момент я получаю ошибки и предупреждения, возвращаемые при тестировании приложения:

W/GooglePlayServicesUtil Google Play services out of date. Requires 5208000 but found 5089036
E/GooglePlayServicesUtil GooglePlayServices not available due to error 2

Admob, моя зависимость от Google Play Services, похоже, работает нормально. Если вы будете следовать рекомендации Google, чтобы позвонитьisGooglePlayServicesAvailable() а такжеGooglePlayServicesUtil.getErrorDialog()пользователю сообщают, что для работы приложения требуется обновление, и отправляют в магазин, где нет доступных обновлений.

В других местах поддержание обратной совместимости означает компиляцию с самой старой версией API, которая поддерживает необходимые вам функции. Так я пробовал с v4compile 'com.google.android.gms:play-services:4.+' который породил еще одну ошибку:

E/GooglePlayServicesUtil﹕ The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.

Поиск вокруг указывает, что это ложный отчет и его можно игнорировать.

Если я скомпилирую против более новой версии API, а ее нет на устройстве, все будет работать? Или я должен уговорить пользователей на обновление? Лучше ли скомпилировать более старую версию API и предположить, что все обратно совместимо с более новыми версиями, работающими на устройствах?

Ответы на вопрос(1)

Ваш ответ на вопрос