Моя библиотека Android не предлагает обновить новую версию в gradle после того, как я опубликовал новую версию в jcenter

изображение

Я успешно опубликовал одну библиотеку под названием SmartToolbar для jcenter.
Но у меня возникла одна проблема при обновлении его на новую версию и опубликовать снова, он не показывает сообщение с предложением обновить до новой версии в gradle.

В настоящее время последней версией этой библиотеки является 1.0.12, но, как вы можете видеть на снимке экрана, в ней не отображается сообщение с предложением обновиться до версии 1.0.12 в качестве библиотеки над ней.

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

ПРИМЕЧАНИЕ. Не отображается предложение о наличии новой версии, но мы по-прежнему получаем последнее обновление, если знаем последнюю версию. Так что только я знаю о последней версии.n

Когда я публикую новую версию, я обновляю versionName, для которого я создаю пользовательскую переменную как PUBLISH_VERSION для использования с моим publish-android-library-plugin, как показано ниже.

изображение2

Итак, я хочу узнать больше, какую часть я пропустил, когда публикую новую версию? или в моем publish-android-library-plugin что-то не так? Возможно, вам нужно просмотреть необработанный код. за проверку моей ошибки.

ПРИМЕЧАНИЕ. Эта библиотека синхронизирована с maven Central.


person Chivorn    schedule 10.09.2018    source источник


Ответы (1)


*ОБНОВЛЕНИЕ*

По словам нашего дорогого друга Дж. Баруха, он сказал:

Проблема в том, что вне зависимости от того, из какого репозитория разрешена ваша библиотека (будь то jcenter(), mavenCentral() или любой другой репозиторий), проверка последней версии жестко запрограммирована на идите в Maven Central.

Вы можете узнать больше о его мыслях, отвечая на вопросы, аналогичные вашим, здесь: for-custom-library/43724109#43724109">Добавить предупреждение Для пользовательской библиотеки доступна более новая версия .....

Итак, следуя его предложению, вы можете попробовать синхронизировать библиотека с maven

* ПРЕДЫДУЩИЙ ОТВЕТ: я оставляю это здесь, так как все еще считаю, что по-прежнему важно понимать мыслительный процесс, стоящий за неприятием Android Studio получения последних обновлений *

Всплывающее уведомление об обновлении версии связано с правилом Lint в Android Studio, которое называется Newer Library Versions Available. В соответствии с Как проверить, есть ли новая зависимость gradle версии, последние несколько обновлений Android Studio изменили это правило lint, поэтому пользователи больше не будут получать уведомления о новых версиях библиотек, отличных от Google.

Ответ JBaruch в Как проверить, какая последняя версия зависимости для использования в gradle дает вескую причину, по которой Google пошел на это изменение:

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

Google предпочитает, чтобы разработчики придерживались определенной версии библиотеки и обновляли ее при необходимости. Таким образом, проверка обновлений стала процессом вручную.

Итак, как вы можете двигаться дальше? Если вы просто хотите убедиться, что Android Studio уведомлена о вашем новом обновлении библиотеки, вы можете использовать соответствующий метод Android Studio для проверки обновлений. Вы можете посмотреть ответ Адама С (принятый) в Как проверить, есть ли у зависимости Gradle новая версия, чтобы получить инструкции по проверке обновлений.

person bunbun    schedule 13.09.2018
comment
Я думаю, что ваш ответ приемлем после того, как я протестировал другие библиотеки, которые не являются самыми популярными, но мне интересно, почему такие библиотеки, как onesignal, retrofit, okhttp и другие популярные, которые не являются Google library version, могут предупреждать это сообщение, когда доступна более новая версия ? - person Chivorn; 13.09.2018
comment
Я обновил свой ответ для объяснения вашего конкретного случая. Я думал, вы хотите, чтобы у пользователей всегда была последняя версия вашей библиотеки. - person bunbun; 13.09.2018
comment
Конечно, я всегда синхронизирую свою библиотеку с maven после успешной публикации в jcenter. Вот почему я пытаюсь найти решение здесь, братан. - person Chivorn; 13.09.2018
comment
Вы можете проверить здесь, чтобы увидеть мою библиотеку на Maven Central bro. - person Chivorn; 13.09.2018
comment
К сожалению, это не сработало. Вероятно, URL-адрес Maven изменился (( Все еще ищу решение... - person Onik; 08.03.2020