Android проблема дублирования зависимостей во флаттере - PullRequest
0 голосов
/ 07 апреля 2020

Я интегрирую нативный android видеоплеер (видеопроигрыватель castlabs) для своего проекта флаттера для поддержки DRM в нативном android. Я уже использую video_player плагин флаттера для воспроизведения некоторых видео в фоновом режиме. Оба этих игрока используют Exoplayer в качестве зависимости, что приводит к дублированию ошибки зависимости. Castlabs SDK интегрирован в качестве автономного репозитория Maven. Я вижу, что он использует exoplayer из местного. Следовательно, я не могу изменить версию Exoplayer в ней.

Как мы можем исправить проблему дублирующихся зависимостей? Я получаю следующую ошибку:

Duplicate class com.google.android.exoplayer2.BasePlayer found in modules classes.jar (com.google.android.exoplayer:exoplayer-core:2.9.6) and classes.jar (com.google.android.exoplayer:library-core:r2.10.4-cl-4d4f5be)

(я iOS разработчик и не очень разбираюсь в Android).

Спасибо.

1 Ответ

1 голос
/ 07 апреля 2020

эта проблема возникает, когда две библиотеки имеют один и тот же класс, вы можете легко решить эту проблему, исключив класс, вызывающий проблему из одной из библиотек, например так:

dependencies {
   implementation('some-library') {
        exclude group: 'com.example.imgtools', module: 'native'
    }
}

В вашем случае вы ' мне придется исключить com.google.android.exoplayer2.BasePlayer из com.google.android.exoplayer:exoplayer-core:2.9.6 или com.google.android.exoplayer:library-core:r2.10.4-cl-4d4f5be

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

Источник: https://developer.android.com/studio/build/dependencies#exclude_dependencies

Надеюсь, это поможет! :)

...