Невозможно собрать приложение при добавлении реагирующих нативных адмобов. - PullRequest
0 голосов
/ 15 мая 2019

Я работаю над существующим приложением, которое имеет более старые зависимости.Это мой app / build.gradle

implementation "com.google.android.gms:play-services-base:12.0.1"
implementation "com.google.firebase:firebase-core:12.0.1"
implementation "com.google.firebase:firebase-analytics:12.0.1"
implementation "com.google.firebase:firebase-messaging:12.0.1"
implementation 'me.leolin:ShortcutBadger:1.1.21@aar'
implementation 'com.google.android.gms:play-services-maps:12.0.1'
implementation 'com.applovin:applovin-sdk:+' 

Теперь я хочу добавить гугл-добавления, отсюда я и последовал - https://www.npmjs.com/package/react-native-admob

Но после установки я былне удалось синхронизировать приложение.Поэтому я обновил зависимости до последних версий.

implementation "com.google.android.gms:play-services-base:16.1.0" 
implementation "com.google.firebase:firebase-core:16.0.9"
implementation "com.google.firebase:firebase-analytics:16.5.0"
implementation "com.google.firebase:firebase-messaging:18.0.0"
implementation 'me.leolin:ShortcutBadger:1.1.21@aar'
implementation 'com.google.android.gms:play-services-maps:16.1.0'
implementation 'com.applovin:applovin-sdk:+'

Даже после этого я получаю сообщение об ошибке как

Gradle sync failed: The library com.google.android.gms:play-services-measurement-sdk-api is being requested by various other libraries at [[16.5.0,16.5.0]], but resolves to 16.3.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

Пожалуйста, дайте мне знать, что нужно исправить.

Спасибо.

1 Ответ

0 голосов
/ 16 мая 2019

У библиотеки react-native-admob есть зависимость, объявленная как '+' для com.google.android.gms:play-services-ads в build.gradle. Это позволит получить последнюю версию библиотеки из репозитория Maven.

Также я вижу, что вы использовали applovin-sdk, который также зависит от com.google.android.gms:play-services-ads.

Это противоречит объявлению вашей версии в файле android/app/build.gradle, то есть 16.1.0.

Запустите ./gradlew app:dependencies в папке проектов RN android. Это покажет вам дерево зависимостей. Узнайте, какая библиотека использует более старую зависимость от службы воспроизведения, и заставьте ее использовать последнюю версию com.google.android.gms:play-services-measurement-sdk-api.

Проверьте эту статью для форсирования версий: https://medium.com/@suchydan/how-to-solve-google-play-services-version-collision-in-gradle-dependencies-ef086ae5c75f

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...