Intereting Posts
Предоставление услуги на переднем плане Документация разработчика для Android: скачать? Как реализовать onConnectionFailed () и onDisconnected () для службы определения местоположения Установление паритета с помощью метода управления передачей Android listview с проблемой флажка Обнаружить, имеет ли гарнитура микрофон Android-библиотека не перетягивает свои ресурсы в другие проекты Будет ли работать служба Android в другом процессе, вносить вклад в один и тот же предел кучи? ОШИБКА Отсутствует идентификатор пакета при получении значения для номера ресурса Не удалось загрузить lept из загрузчика findLibrary возвращается null? Обновление пользовательского интерфейса при работе на фоне Как перенаправлять вызовы на голосовую почту в программном обеспечении Android ArrayIndexOutOfBoundsException при отключении Snackbar / ViewDragHelper Изменить значок ActionBar Home / Up Arrow Как можно реализовать Feed Dialog из Facebook в приложении Android?

Как проверить, какая последняя версия зависимости используется в gradle

Я всегда добавлял такие зависимости:

dependencies { compile 'com.android.support:mediarouter-v7:19.+' } 

Но в последних версиях Android Studio они рекомендуют не использовать + поскольку это может привести к ошибкам. Как узнать, что такое последняя версия? Я могу попробовать каждую комбинацию 19.yx до тех пор, пока не начнет жаловаться град, но каков реальный способ проверить?

Edit: иногда эта страница помогает мне понять это.

Solutions Collecting From Web of "Как проверить, какая последняя версия зависимости используется в gradle"

Могут быть и другие способы, но вот что я использую:

Вы можете узнать последнюю версию с помощью Android Studio, заменив номер версии вашей библиотеки в строке build.gradle для компиляции, просто + , и нажмите « Sync Now в правом верхнем углу окна.

В вашем случае, например

dependencies { compile 'com.android.support:mediarouter-v7:+' }

Android Studio выведет подсказку / лампу, в которой есть варианты Replace with specific version вы можете щелкнуть, которая заполнит последнюю версию вместо + . См. Ниже screeshot:

Андроидная студийная подсказка

Если это не сработает в первый раз, позвольте градиенту завершить его синхронизацию, и повторите попытку (замените + на + или любую модификацию файла, снова нажмите синхронизацию, и появится индикатор подсказки).

Например, для вашей библиотеки я просто вставлял эту строку в compile 'com.android.support:mediarouter-v7:+' под моими зависимостями и следил за описанным выше процессом, Android Studio заполнен ниже

,

Опираясь на последнюю версию, действительно опасно. Ваша сборка может сломаться, если вы ничего не измените, просто потому, что некоторая библиотека нарушила обратную совместимость.

Самый простой способ узнать, когда выходит новая версия библиотеки, – это подписаться на уведомления о новой версии в Bintray .

Просто нажмите кнопку «Смотреть» на странице пакета, и вы получите электронное письмо каждый раз, когда будет выпущена новая версия. Затем вы сможете обновить зависимость, протестировать ее и только затем перенести скрипт сборки с новой версией.

Смотреть пакет в Bintray

Как уже упоминалось в некоторых других ответах, вы не должны использовать + в зависимостях, потому что это может привести к непредсказуемым сборкам, поэтому всегда лучше, если вы сначала проверите свои сборки, как только появится новое обновление.

С Android-версией 2.2 и выше Структура проекта покажет вам последние доступные зависимости.

  1. Активируйте его, перейдя в Android Studio> Настройки> Сборка, выполнение, Развертывание> Gradle> Экспериментальные и установите флажок Использовать новую структуру проекта
  2. Затем откройте его, выбрав File> Project Structure> Диалоговое окно обновления изображения Сообщения

Оригинальный ответ

Избегайте использования + в объявлении версии.

Вы можете попытаться проверить, устарели ли устаревшие данные, а также версию инструмента сборки и версию sdk.

Простой трехступенчатый:

1. установить:

  $ sudo pip install andle 

2. set sdk:

  $ andle setsdk -p <sdk_path> 

3. обновить статус:

  $ andle update -p <project_path> [--dryrun] [--remote] 

–dryrun: только результат печати в консоли

–remote: проверить версию в jcenter и mavenCentral

Ответ ashoke правильный, если вы хотите получить последнюю версию.

Но если вы просто хотите заменить «+» на версию, которую вы используете в настоящее время (чтобы защитить себя от ошибок в будущем обновлении)

например:

  compile 'com.android.support:appcompat-v7:21.0.+' 

в

  compile 'com.android.support:appcompat-v7:21.0.3' 

(Но не используя 23.0.1)

Это самый простой способ, не требуется программное обеспечение :

бег

 $ ./gradlew clean tasks --debug > ~/whatever.txt 

Затем найдите «com.android.support:appcompat-v7:21.0».

Несколько строк ниже вы увидите

«Использование com.android.support:appcompat-v7:21.0.3 из репозитория Maven»